mirror of
https://github.com/nix-community/home-manager
synced 2024-11-23 11:39:46 +01:00
modules core: move modules list to own file
This is to simplify use of Home Manager as a NixOS module.
This commit is contained in:
parent
bcb82da88f
commit
e99de88c5c
2 changed files with 82 additions and 66 deletions
|
@ -10,64 +10,6 @@ with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
modules = [
|
|
||||||
./files.nix
|
|
||||||
./home-environment.nix
|
|
||||||
./manual.nix
|
|
||||||
./misc/fontconfig.nix
|
|
||||||
./misc/gtk.nix
|
|
||||||
./misc/news.nix
|
|
||||||
./misc/nixpkgs.nix
|
|
||||||
./misc/pam.nix
|
|
||||||
./misc/xdg.nix
|
|
||||||
./programs/bash.nix
|
|
||||||
./programs/beets.nix
|
|
||||||
./programs/browserpass.nix
|
|
||||||
./programs/command-not-found/command-not-found.nix
|
|
||||||
./programs/eclipse.nix
|
|
||||||
./programs/emacs.nix
|
|
||||||
./programs/feh.nix
|
|
||||||
./programs/firefox.nix
|
|
||||||
./programs/git.nix
|
|
||||||
./programs/gnome-terminal.nix
|
|
||||||
./programs/home-manager.nix
|
|
||||||
./programs/htop.nix
|
|
||||||
./programs/info.nix
|
|
||||||
./programs/lesspipe.nix
|
|
||||||
./programs/man.nix
|
|
||||||
./programs/neovim.nix
|
|
||||||
./programs/rofi.nix
|
|
||||||
./programs/ssh.nix
|
|
||||||
./programs/termite.nix
|
|
||||||
./programs/texlive.nix
|
|
||||||
./programs/vim.nix
|
|
||||||
./programs/zsh.nix
|
|
||||||
./services/blueman-applet.nix
|
|
||||||
./services/compton.nix
|
|
||||||
./services/dunst.nix
|
|
||||||
./services/gnome-keyring.nix
|
|
||||||
./services/gpg-agent.nix
|
|
||||||
./services/keepassx.nix
|
|
||||||
./services/network-manager-applet.nix
|
|
||||||
./services/owncloud-client.nix
|
|
||||||
./services/polybar.nix
|
|
||||||
./services/random-background.nix
|
|
||||||
./services/redshift.nix
|
|
||||||
./services/screen-locker.nix
|
|
||||||
./services/syncthing.nix
|
|
||||||
./services/taffybar.nix
|
|
||||||
./services/tahoe-lafs.nix
|
|
||||||
./services/udiskie.nix
|
|
||||||
./services/window-managers/i3.nix
|
|
||||||
./services/window-managers/xmonad.nix
|
|
||||||
./services/xscreensaver.nix
|
|
||||||
./systemd.nix
|
|
||||||
./xresources.nix
|
|
||||||
./xsession.nix
|
|
||||||
<nixpkgs/nixos/modules/misc/assertions.nix>
|
|
||||||
<nixpkgs/nixos/modules/misc/meta.nix>
|
|
||||||
];
|
|
||||||
|
|
||||||
collectFailed = cfg:
|
collectFailed = cfg:
|
||||||
map (x: x.message) (filter (x: !x.assertion) cfg.assertions);
|
map (x: x.message) (filter (x: !x.assertion) cfg.assertions);
|
||||||
|
|
||||||
|
@ -77,15 +19,10 @@ let
|
||||||
in
|
in
|
||||||
fold f res res.config.warnings;
|
fold f res res.config.warnings;
|
||||||
|
|
||||||
pkgsModule = {
|
|
||||||
config._module.args.baseModules = modules;
|
|
||||||
config._module.args.pkgs = lib.mkDefault pkgs;
|
|
||||||
config._module.check = check;
|
|
||||||
config.nixpkgs.system = mkDefault pkgs.system;
|
|
||||||
};
|
|
||||||
|
|
||||||
rawModule = lib.evalModules {
|
rawModule = lib.evalModules {
|
||||||
modules = [ configuration ] ++ modules ++ [ pkgsModule ];
|
modules =
|
||||||
|
[ configuration ]
|
||||||
|
++ (import ./modules.nix { inherit check lib pkgs; });
|
||||||
};
|
};
|
||||||
|
|
||||||
module = showWarnings (
|
module = showWarnings (
|
||||||
|
|
79
modules/modules.nix
Normal file
79
modules/modules.nix
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
{ pkgs
|
||||||
|
, lib
|
||||||
|
|
||||||
|
# Whether to enable module type checking.
|
||||||
|
, check ? true
|
||||||
|
}:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
modules = [
|
||||||
|
./files.nix
|
||||||
|
./home-environment.nix
|
||||||
|
./manual.nix
|
||||||
|
./misc/fontconfig.nix
|
||||||
|
./misc/gtk.nix
|
||||||
|
./misc/news.nix
|
||||||
|
./misc/nixpkgs.nix
|
||||||
|
./misc/pam.nix
|
||||||
|
./misc/xdg.nix
|
||||||
|
./programs/bash.nix
|
||||||
|
./programs/beets.nix
|
||||||
|
./programs/browserpass.nix
|
||||||
|
./programs/command-not-found/command-not-found.nix
|
||||||
|
./programs/eclipse.nix
|
||||||
|
./programs/emacs.nix
|
||||||
|
./programs/feh.nix
|
||||||
|
./programs/firefox.nix
|
||||||
|
./programs/git.nix
|
||||||
|
./programs/gnome-terminal.nix
|
||||||
|
./programs/home-manager.nix
|
||||||
|
./programs/htop.nix
|
||||||
|
./programs/info.nix
|
||||||
|
./programs/lesspipe.nix
|
||||||
|
./programs/man.nix
|
||||||
|
./programs/neovim.nix
|
||||||
|
./programs/rofi.nix
|
||||||
|
./programs/ssh.nix
|
||||||
|
./programs/termite.nix
|
||||||
|
./programs/texlive.nix
|
||||||
|
./programs/vim.nix
|
||||||
|
./programs/zsh.nix
|
||||||
|
./services/blueman-applet.nix
|
||||||
|
./services/compton.nix
|
||||||
|
./services/dunst.nix
|
||||||
|
./services/gnome-keyring.nix
|
||||||
|
./services/gpg-agent.nix
|
||||||
|
./services/keepassx.nix
|
||||||
|
./services/network-manager-applet.nix
|
||||||
|
./services/owncloud-client.nix
|
||||||
|
./services/polybar.nix
|
||||||
|
./services/random-background.nix
|
||||||
|
./services/redshift.nix
|
||||||
|
./services/screen-locker.nix
|
||||||
|
./services/syncthing.nix
|
||||||
|
./services/taffybar.nix
|
||||||
|
./services/tahoe-lafs.nix
|
||||||
|
./services/udiskie.nix
|
||||||
|
./services/window-managers/i3.nix
|
||||||
|
./services/window-managers/xmonad.nix
|
||||||
|
./services/xscreensaver.nix
|
||||||
|
./systemd.nix
|
||||||
|
./xresources.nix
|
||||||
|
./xsession.nix
|
||||||
|
<nixpkgs/nixos/modules/misc/assertions.nix>
|
||||||
|
<nixpkgs/nixos/modules/misc/meta.nix>
|
||||||
|
];
|
||||||
|
|
||||||
|
pkgsModule = {
|
||||||
|
config._module.args.baseModules = modules;
|
||||||
|
config._module.args.pkgs = lib.mkDefault pkgs;
|
||||||
|
config._module.check = check;
|
||||||
|
config.nixpkgs.system = mkDefault pkgs.system;
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
map import modules ++ [ pkgsModule ]
|
Loading…
Reference in a new issue