Files
nix-config/modules/nixos/base/nix.nix
2025-09-17 13:38:04 +08:00

40 lines
1.1 KiB
Nix

{
config,
lib,
determinate,
...
}:
{
# auto upgrade nix to the unstable version
# https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/tools/package-management/nix/default.nix#L284
# nix.package = pkgs.nixVersions.latest;
# https://lix.systems/add-to-config/
# nix.package = pkgs.lix;
# we use determinate nix instead
imports = [
determinate.nixosModules.default
];
# to install chrome, you need to enable unfree packages
nixpkgs.config.allowUnfree = lib.mkForce true;
# do garbage collection weekly to keep disk usage low
nix.gc = {
automatic = lib.mkDefault true;
dates = lib.mkDefault "weekly";
options = lib.mkDefault "--delete-older-than 7d";
};
# Manual optimise storage: nix-store --optimise
# https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-auto-optimise-store
nix.settings.auto-optimise-store = true;
nix.channel.enable = false; # remove nix-channel related tools & configs, we use flakes instead.
nix.extraOptions = ''
!include ${config.age.secrets.nix-access-tokens.path}
'';
}