voidconf/modules/nix-settings.nix
2024-02-17 18:49:37 +01:00

43 lines
1,004 B
Nix

{ lib, config, ... }:
with lib;
let cfg = config.voidconf.nixSettings;
in {
options.voidconf.nixSettings = {
gc = {
automatic = mkOption {
type = types.bool;
default = true;
description = "Enables automatic garbage collection";
};
dates = mkOption {
type = types.str;
default = "weekly";
example = "03:15";
description = mdDoc ''
How often or when garbage collection is performed. For most desktop and server systems
a sufficient garbage collection is once a week.
The format is described in
{manpage}`systemd.time(7)`.
'';
};
};
};
config = {
nix = {
optimise.automatic = true;
settings = {
trusted-users = [
"root"
"@wheel"
];
};
gc = {
automatic = cfg.gc.automatic;
dates = cfg.gc.dates;
};
settings.experimental-features = [ "flakes" "nix-command" ];
};
};
}