infrastructure/nixos.nix
2021-04-25 21:59:27 +01:00

50 lines
1.4 KiB
Nix

{ pkgs, config, lib, sources, witch, options, hostName, ... }:
{
imports = [
(import (./hosts + "/${hostName}/nixos"))
./profiles/common/nixos.nix
] ++ lib.optional (builtins.pathExists ./private/hosts) (import (./private/hosts + "/${hostName}/nixos"))
++ lib.optional (builtins.pathExists ./private/profile) ./private/profile/nixos;
options = {
deploy.profile.kat = lib.mkEnableOption "uhh meow";
deploy.profile.gui = lib.mkEnableOption "graphical system";
deploy.profile.sway = lib.mkEnableOption "sway wm";
deploy.profile.laptop = lib.mkEnableOption "lappytop";
};
options.home-manager.users = lib.mkOption {
type = lib.types.attrsOf (lib.types.submoduleWith {
modules = [ ];
specialArgs = {
inherit sources witch hostName;
superConfig = config;
modulesPath = sources.home-manager + "/modules";
};
});
};
config = {
home-manager = {
useUserPackages = true;
useGlobalPkgs = true;
users = {
kat = {
imports = [ ./home.nix (import (./hosts + "/${hostName}/home")) ];
options = {
deploy.profile.kat = lib.mkEnableOption "uhh meow";
deploy.profile.gui = lib.mkEnableOption "graphical system";
deploy.profile.sway = lib.mkEnableOption "sway wm";
deploy.profile.laptop = lib.mkEnableOption "lappytop";
};
};
};
};
};
}