diff --git a/common/global/default.nix b/common/global/default.nix index 83b9812..98bd6a8 100644 --- a/common/global/default.nix +++ b/common/global/default.nix @@ -17,16 +17,11 @@ ./nix.nix ./programs.nix ./ssh.nix - ./snapshot_manager.nix ]; boot = { - tmp.useTmpfs = true; + tmp.useTmpfs = lib.mkDefault true; kernelPackages = lib.mkDefault pkgs.linuxPackages_6_12; - zfs = { - package = lib.mkDefault pkgs.zfs_2_4; - forceImportRoot = lib.mkDefault false; - }; }; hardware.enableRedistributableFirmware = true; @@ -50,16 +45,6 @@ # firmware update fwupd.enable = true; - - snapshot_manager = { - enable = lib.mkDefault true; - PYTHONPATH = "${inputs.self}/"; - }; - - zfs = { - trim.enable = lib.mkDefault true; - autoScrub.enable = lib.mkDefault true; - }; }; powerManagement.powertop.enable = lib.mkDefault true; diff --git a/common/optional/zfs/default.nix b/common/optional/zfs/default.nix new file mode 100644 index 0000000..a18e8e6 --- /dev/null +++ b/common/optional/zfs/default.nix @@ -0,0 +1,26 @@ +{ + inputs, + lib, + pkgs, + ... +}: +{ + imports = [ ./snapshot.nix ]; + + boot.zfs = { + package = lib.mkDefault pkgs.zfs_2_4; + forceImportRoot = lib.mkDefault false; + }; + + services = { + snapshot_manager = { + enable = lib.mkDefault true; + PYTHONPATH = "${inputs.self}/"; + }; + + zfs = { + trim.enable = lib.mkDefault true; + autoScrub.enable = lib.mkDefault true; + }; + }; +} diff --git a/common/global/snapshot_manager.nix b/common/optional/zfs/snapshot.nix similarity index 100% rename from common/global/snapshot_manager.nix rename to common/optional/zfs/snapshot.nix diff --git a/common/global/snapshot_config.toml b/common/optional/zfs/snapshot_config.toml similarity index 100% rename from common/global/snapshot_config.toml rename to common/optional/zfs/snapshot_config.toml diff --git a/systems/bob/default.nix b/systems/bob/default.nix index d5eb01e..d404652 100644 --- a/systems/bob/default.nix +++ b/systems/bob/default.nix @@ -6,15 +6,16 @@ "${inputs.self}/users/steve" "${inputs.self}/common/global" "${inputs.self}/common/optional/docker.nix" - "${inputs.self}/common/optional/scanner.nix" "${inputs.self}/common/optional/monitoring-agent.nix" + "${inputs.self}/common/optional/nvidia.nix" + "${inputs.self}/common/optional/scanner.nix" "${inputs.self}/common/optional/steam.nix" "${inputs.self}/common/optional/syncthing_base.nix" "${inputs.self}/common/optional/systemd-boot.nix" "${inputs.self}/common/optional/update.nix" "${inputs.self}/common/optional/yubikey.nix" "${inputs.self}/common/optional/zerotier.nix" - "${inputs.self}/common/optional/nvidia.nix" + "${inputs.self}/common/optional/zfs" ./hardware.nix ./syncthing.nix ./llms.nix diff --git a/systems/brain/default.nix b/systems/brain/default.nix index 902a00b..4033ade 100644 --- a/systems/brain/default.nix +++ b/systems/brain/default.nix @@ -9,6 +9,7 @@ "${inputs.self}/common/optional/systemd-boot.nix" "${inputs.self}/common/optional/update.nix" "${inputs.self}/common/optional/zerotier.nix" + "${inputs.self}/common/optional/zfs" ./docker ./hardware.nix ./programs.nix diff --git a/systems/jeeves/default.nix b/systems/jeeves/default.nix index 1d47f8d..a7f6697 100644 --- a/systems/jeeves/default.nix +++ b/systems/jeeves/default.nix @@ -15,6 +15,7 @@ in "${inputs.self}/common/optional/syncthing_base.nix" "${inputs.self}/common/optional/update.nix" "${inputs.self}/common/optional/zerotier.nix" + "${inputs.self}/common/optional/zfs" ./monitoring ./docker ./services diff --git a/systems/rhapsody-in-green/default.nix b/systems/rhapsody-in-green/default.nix index a339528..b5e8957 100644 --- a/systems/rhapsody-in-green/default.nix +++ b/systems/rhapsody-in-green/default.nix @@ -10,6 +10,7 @@ "${inputs.self}/common/optional/systemd-boot.nix" "${inputs.self}/common/optional/yubikey.nix" "${inputs.self}/common/optional/zerotier.nix" + "${inputs.self}/common/optional/zfs" ./hardware.nix ./open_webui.nix ./programs.nix