diff --git a/modules/default.nix b/modules/default.nix index 9d9947892..219aa7bae 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -20,6 +20,7 @@ let ./programs/firefox.nix ./programs/git.nix ./programs/gnome-terminal.nix + ./programs/home-manager.nix ./programs/info.nix ./programs/lesspipe.nix ./programs/ssh.nix diff --git a/modules/programs/home-manager.nix b/modules/programs/home-manager.nix new file mode 100644 index 000000000..09c662ac0 --- /dev/null +++ b/modules/programs/home-manager.nix @@ -0,0 +1,39 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + + cfg = config.programs.home-manager; + +in + +{ + options = { + programs.home-manager = { + enable = mkEnableOption "Home Manager"; + + modulesPath = mkOption { + type = types.nullOr types.str; + default = null; + example = "$HOME/devel/home-manager/modules"; + description = '' + The default path to use for Home Manager modules. If this + path does not exist then + $HOME/.config/nixpkgs/home-manager/modules + and $HOME/.nixpkgs/home-manager/modules + will be attempted. + ''; + }; + }; + }; + + config = mkIf cfg.enable { + home.packages = [ + (import ../../home-manager { + inherit pkgs; + inherit (cfg) modulesPath; + }) + ]; + }; +}