[NixOS] Control what is enabled per machine with module options
This commit is contained in:
39
nixos/configuration.nix
Normal file
39
nixos/configuration.nix
Normal file
@@ -0,0 +1,39 @@
|
||||
{ config, lib, ... }:
|
||||
{
|
||||
imports = [
|
||||
./android.nix
|
||||
./base.nix
|
||||
./code.nix
|
||||
./desktop.nix
|
||||
./environment.nix
|
||||
./essential.nix
|
||||
./extra.nix
|
||||
./games.nix
|
||||
./git-sync.nix
|
||||
./internet-computer.nix
|
||||
./keybase.nix
|
||||
./nix.nix
|
||||
./nixified.ai.nix
|
||||
./ssh.nix
|
||||
./syncthing.nix
|
||||
./users.nix
|
||||
./wsl.nix
|
||||
./xmonad.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
features.full.enable = lib.mkEnableOption "Do everything";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.features.full.enable {
|
||||
modules.base.enable = true;
|
||||
modules.desktop.enable = true;
|
||||
modules.xmonad.enable = true;
|
||||
modules.extra.enable = true;
|
||||
modules.code.enable = true;
|
||||
modules.games.enable = true;
|
||||
modules.syncthing.enable = true;
|
||||
modules.fonts.enable = true;
|
||||
modules.nixified-ai.enable = true;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user