nixos-config/system/nix.nix

35 lines
687 B
Nix

{ inputs, lib, ... }:
let
flakes = lib.filterAttrs (name: value: value ? outputs) inputs;
inherit (inputs.self.outputs) nixConfig;
in
{
nix.gc = {
automatic = true;
dates = "04:00";
options = "--delete-older-than 30d";
};
nix.settings = {
trusted-users = [ "@wheel" ];
auto-optimise-store = true;
substituters = nixConfig.extra-substituters;
trusted-public-keys = nixConfig.extra-trusted-public-keys;
};
system.autoUpgrade = {
enable = true;
dates = "03:00";
flake = "/etc/nixos";
flags =
with lib;
flatten (
mapAttrsToList (n: _: [
"--update-input"
n
]) flakes
);
};
}