diff --git a/hosts/inspiron/default.nix b/hosts/inspiron/default.nix index 597f910..f154141 100644 --- a/hosts/inspiron/default.nix +++ b/hosts/inspiron/default.nix @@ -21,7 +21,6 @@ bluetooth.enable = true; sound.enable = true; - auto-gc.enable = true; vm.qemu.enable = true; flatpak.enable = true; vpn.lgs.enable = true; @@ -29,7 +28,10 @@ sops.enable = true; printing.enable = true; syncthing.enable = true; - nix-helper.enable = true; + nix-helper = { + enable = true; + auto-gc.enable = true; + }; }; boot.kernelPackages = pkgs.linuxPackages_latest; diff --git a/hosts/north/default.nix b/hosts/north/default.nix index 42d57b8..1c9b578 100644 --- a/hosts/north/default.nix +++ b/hosts/north/default.nix @@ -18,14 +18,16 @@ de.hyprland.enable = true; sound.enable = true; - auto-gc.enable = true; vm.qemu.enable = true; vpn.lgs.enable = true; comma.enable = true; sops.enable = true; printing.enable = true; syncthing.enable = true; - nix-helper.enable = true; + nix-helper = { + enable = true; + auto-gc.enable = true; + }; }; boot.kernelPackages = pkgs.linuxPackages_latest; diff --git a/modules/system/auto-gc.nix b/modules/system/auto-gc.nix deleted file mode 100644 index 8a420f0..0000000 --- a/modules/system/auto-gc.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - config, - lib, - ... -}: { - options.myConfig.auto-gc.enable = lib.mkEnableOption ""; - - config = lib.mkIf config.myConfig.auto-gc.enable { - nix.gc = { - automatic = true; - dates = "weekly"; - options = "--delete-older-than 7d"; - }; - }; -} diff --git a/modules/system/default.nix b/modules/system/default.nix index cae4727..05945c5 100644 --- a/modules/system/default.nix +++ b/modules/system/default.nix @@ -5,7 +5,6 @@ ./wlan.nix ./vpn.nix ./comma.nix - ./auto-gc.nix ./sops.nix ./bluetooth.nix ./de.nix diff --git a/modules/system/nix-helper.nix b/modules/system/nix-helper.nix index bf038d4..519bd8e 100644 --- a/modules/system/nix-helper.nix +++ b/modules/system/nix-helper.nix @@ -2,10 +2,15 @@ config, lib, ... -}: { - options.myConfig.nix-helper.enable = lib.mkEnableOption ""; +}: let + cfg = config.myConfig.nix-helper; +in { + options.myConfig.nix-helper = { + enable = lib.mkEnableOption ""; + auto-gc.enable = lib.mkEnableOption ""; + }; - config = lib.mkIf config.myConfig.nix-helper.enable { + config = lib.mkIf cfg.enable { programs.nh.enable = true; environment.shellAliases = let @@ -16,5 +21,11 @@ nrb = "${rebuild} boot"; nrrb = "nrb && reboot"; }; + + programs.nh.clean = lib.mkIf cfg.auto-gc.enable { + enable = true; + dates = "daily"; + extraArgs = "--keep 10 --keep-since 7d"; + }; }; }