59 lines
1.5 KiB
Nix
59 lines
1.5 KiB
Nix
# Nix configuration for NixOS
|
|
{
|
|
config,
|
|
inputs,
|
|
...
|
|
}:
|
|
let
|
|
autoGarbageCollector = config.var.autoGarbageCollector;
|
|
in
|
|
{
|
|
security.sudo.extraRules = [
|
|
{
|
|
users = [ config.var.username ];
|
|
commands = [
|
|
{
|
|
command = "/run/current-system/sw/bin/nixos-rebuild";
|
|
options = [ "NOPASSWD" ];
|
|
}
|
|
];
|
|
}
|
|
];
|
|
nixpkgs.config.allowUnfree = true;
|
|
nix = {
|
|
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
|
channel.enable = false;
|
|
extraOptions = ''
|
|
warn-dirty = false
|
|
'';
|
|
settings = {
|
|
download-buffer-size = 262144000; # 250 MB (250 * 1024 * 1024)
|
|
auto-optimise-store = true;
|
|
trusted-users = [ config.var.username ]; # Allows remote nixos-rebuild to vps
|
|
experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
substituters = [
|
|
# high priority since it's almost always used
|
|
"https://cache.nixos.org?priority=10"
|
|
|
|
"https://hyprland.cachix.org"
|
|
"https://nix-community.cachix.org"
|
|
"https://numtide.cachix.org"
|
|
];
|
|
trusted-public-keys = [
|
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
"numtide.cachix.org-1:2ps1kLBUWjxIneOy1Ik6cQjb41X0iXVXeHigGmycPPE="
|
|
];
|
|
};
|
|
gc = {
|
|
automatic = autoGarbageCollector;
|
|
persistent = true;
|
|
dates = "weekly";
|
|
options = "--delete-older-than 7d";
|
|
};
|
|
};
|
|
}
|