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"; default = "30d";
}; };
}; };
config = lib.mkMerge [ config = {
(lib.mkIf cfg.allowUnfree { nixpkgs.config.allowUnfree = true; }) nixpkgs.config.allowUnfree = cfg.allowUnfree;
8bitbuddhist marked this conversation as resolved Outdated

we can avoid lib.mkMerge here since cfg.allowUnfree is a boolean we can set it directly too nixpkgs.config.allowUnfree

we can avoid `lib.mkMerge` here since `cfg.allowUnfree` is a boolean we can set it directly too `nixpkgs.config.allowUnfree`
({
nix = {
# Enable Flakes
settings.experimental-features = [
"nix-command"
"flakes"
];
# Enable periodic nix store optimization nix = {
optimise.automatic = true; # Enable Flakes
settings.experimental-features = [
"nix-command"
"flakes"
];
# Enable weekly garbage collection. Delete generations that are older than two weeks. # Enable periodic nix store optimization
gc = { optimise.automatic = true;
automatic = true;
dates = "weekly";
options = "--delete-older-than ${cfg.retentionPeriod}";
};
# Configure NixOS to use the same software channel as Flakes # Enable weekly garbage collection. Delete generations that are older than two weeks.
registry = lib.mapAttrs (_: value: { flake = value; }) inputs; gc = {
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry; automatic = true;
dates = "weekly";
options = "--delete-older-than ${cfg.retentionPeriod}";
}; };
# Support for standard, dynamically-linked executables # Configure NixOS to use the same software channel as Flakes
programs.nix-ld.enable = true; 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;
};
} }