config/modules/default.nix
2022-02-05 20:47:50 +01:00

54 lines
1 KiB
Nix

inputs:
with builtins;
let
aspects = [
./autopatch
./desktop
./enterprise
./firewall
./games
./hardened
./hyprspace
./ipfs-lain
./jackett
./laptop-config
./lidarr
./networking-client
./nextcloud-client
./nix-builder
./nix-config
./nix-register-flakes
./nm-vdns-auto
./persistence
./prowlarr
./shell-config
./sound
./ssh
];
mappedAspects = map (x: { name = baseNameOf x; value = import x; }) aspects;
in rec {
modules = listToAttrs mappedAspects;
sets = with modules; rec {
base = [
autopatch
enterprise
hardened
];
networking = [ firewall ssh ];
client-networking = networking ++ [ networking-client nm-vdns-auto ipfs-lain hyprspace ];
desktop = [
modules.desktop
inputs.home-manager.nixosModules.home-manager
nextcloud-client
nix-register-flakes
nix-config
shell-config
sound
] ++ base ++ client-networking;
laptop = desktop ++ [ laptop-config ];
};
}