feat: NixOS template for new users #33

Open
8bitbuddhist wants to merge 14 commits from new-user-templates into main
Showing only changes of commit a83275e048 - Show all commits

View file

@ -19,33 +19,32 @@ in
default = "30d";
};
};
config = lib.mkMerge [
(lib.mkIf cfg.allowUnfree { nixpkgs.config.allowUnfree = true; })
({
nix = {
# Enable Flakes
settings.experimental-features = [
"nix-command"
"flakes"
];
config = {
nixpkgs.config.allowUnfree = cfg.allowUnfree;
# Enable periodic nix store optimization
optimise.automatic = true;
nix = {
# Enable Flakes
settings.experimental-features = [
"nix-command"
"flakes"
];
# Enable weekly garbage collection. Delete generations that are older than two weeks.
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than ${cfg.retentionPeriod}";
};
# Enable periodic nix store optimization
optimise.automatic = true;
# Configure NixOS to use the same software channel as Flakes
registry = lib.mapAttrs (_: value: { flake = value; }) inputs;
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry;
# Enable weekly garbage collection. Delete generations that are older than two weeks.
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than ${cfg.retentionPeriod}";
};
# Support for standard, dynamically-linked executables
programs.nix-ld.enable = true;
})
];
# Configure NixOS to use the same software channel as Flakes
registry = lib.mapAttrs (_: value: { flake = value; }) inputs;
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry;
};
# Support for standard, dynamically-linked executables
programs.nix-ld.enable = true;
};
}