From 1f45893928bbf978ab8080d9a1cf884de7acc6e8 Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Sun, 18 Aug 2024 14:41:41 +0200 Subject: [PATCH] tadpole: Use option for `gc` configuration limit --- hosts/tadpole/modules/boot/default.nix | 19 ++++++++++++++++--- hosts/tadpole/modules/default.nix | 2 ++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/hosts/tadpole/modules/boot/default.nix b/hosts/tadpole/modules/boot/default.nix index 7d4c813..d2366b4 100644 --- a/hosts/tadpole/modules/boot/default.nix +++ b/hosts/tadpole/modules/boot/default.nix @@ -1,14 +1,27 @@ -{ inputs, config, ... }: +{ inputs, lib, config, ... }: +let + configurationLimit = config.mod.gc.configurationLimit; +in { imports = [ inputs.nix-gc-env.nixosModules.default ]; + options = { + mod.gc = { + configurationLimit = lib.mkOption { + type = lib.types.int; + default = 10; + description = "number of configuration generations to keep"; + }; + }; + }; + config = { nix.gc = { automatic = true; dates = "weekly"; # `delete_generations` added by nix-gc-env - delete_generations = "+${builtins.toString config.boot.loader.systemd-boot.configurationLimit}"; + delete_generations = "+${builtins.toString configurationLimit}"; }; boot = { @@ -17,7 +30,7 @@ enable = true; device = "/dev/sda"; - configurationLimit = 10; + inherit configurationLimit; }; }; }; diff --git a/hosts/tadpole/modules/default.nix b/hosts/tadpole/modules/default.nix index 97d1980..5b32fe5 100644 --- a/hosts/tadpole/modules/default.nix +++ b/hosts/tadpole/modules/default.nix @@ -8,6 +8,8 @@ in config = { mod = { + gc.configurationLimit = 10; + ssh.enable = true; nginx.enable = true;