summary refs log tree commit diff stats
path: root/system/modules/configuration/nix.nix
diff options
context:
space:
mode:
authorAlan Pearce2019-10-02 16:55:35 +0200
committerAlan Pearce2019-10-02 16:55:35 +0200
commit340b2c244c0b7c331f6633edf9a69f1381916ad2 (patch)
tree2f430f20fbe01191c6b4a455bf792facef3f4fe7 /system/modules/configuration/nix.nix
parentec7f1357d16ff2f4aa7430a2940a0b9519018595 (diff)
parent5016c7440ad771fd990e1aa142fc4de0bdc382bd (diff)
downloadnixfiles-340b2c244c0b7c331f6633edf9a69f1381916ad2.tar.lz
nixfiles-340b2c244c0b7c331f6633edf9a69f1381916ad2.tar.zst
nixfiles-340b2c244c0b7c331f6633edf9a69f1381916ad2.zip
Add 'system/' from commit '5016c7440ad771fd990e1aa142fc4de0bdc382bd'
git-subtree-dir: system
git-subtree-mainline: ec7f1357d16ff2f4aa7430a2940a0b9519018595
git-subtree-split: 5016c7440ad771fd990e1aa142fc4de0bdc382bd
Diffstat (limited to 'system/modules/configuration/nix.nix')
-rw-r--r--system/modules/configuration/nix.nix38
1 files changed, 38 insertions, 0 deletions
diff --git a/system/modules/configuration/nix.nix b/system/modules/configuration/nix.nix
new file mode 100644
index 00000000..9aa83435
--- /dev/null
+++ b/system/modules/configuration/nix.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, ... }:
+
+{ nix = {
+    buildCores = 0;
+
+    daemonNiceLevel = 19;
+    daemonIONiceLevel = 7;
+
+    autoOptimiseStore = true;
+    gc = {
+      automatic = true;
+      options = "--delete-older-than 14d";
+    };
+  };
+
+  nixpkgs.config = {
+    packageOverrides = pkgs: {
+      unstable = import <nixos-unstable> {
+        config = config.nixpkgs.config;
+      };
+    };
+  };
+
+  environment.systemPackages = with pkgs; [
+    cachix
+  ];
+
+  system.autoUpgrade = {
+    enable = true;
+    flags = [ "--max-jobs" "1" ];
+  };
+  systemd.services.nixos-upgrade = {
+    script = pkgs.lib.mkForce ''
+      ${pkgs.nix}/bin/nix-channel --update nixos-unstable
+      ${config.system.build.nixos-rebuild}/bin/nixos-rebuild boot --no-build-output --upgrade ${toString config.system.autoUpgrade.flags}
+    '';
+  };
+}