summary refs log tree commit diff stats
path: root/system/settings/configuration/nix-linux.nix
diff options
context:
space:
mode:
authorAlan Pearce2024-05-17 16:08:52 +0200
committerAlan Pearce2024-05-17 16:10:01 +0200
commitda04b1c6dd13af0dbada0d77ff195ab5e99eed5e (patch)
treea83bcdbf9f58127dfd330a44ac13f9d5d5dd7da9 /system/settings/configuration/nix-linux.nix
parent249f11ad9819d992a8fed1caa1432e9e8036b7d2 (diff)
downloadnixfiles-da04b1c6dd13af0dbada0d77ff195ab5e99eed5e.tar.lz
nixfiles-da04b1c6dd13af0dbada0d77ff195ab5e99eed5e.tar.zst
nixfiles-da04b1c6dd13af0dbada0d77ff195ab5e99eed5e.zip
system/nix: set OS-agnostic nix options in common module
Diffstat (limited to 'system/settings/configuration/nix-linux.nix')
-rw-r--r--system/settings/configuration/nix-linux.nix32
1 files changed, 32 insertions, 0 deletions
diff --git a/system/settings/configuration/nix-linux.nix b/system/settings/configuration/nix-linux.nix
new file mode 100644
index 00000000..3b32ebd5
--- /dev/null
+++ b/system/settings/configuration/nix-linux.nix
@@ -0,0 +1,32 @@
+{ config
+, lib
+, pkgs
+, ...
+}: {
+  imports = [
+    ./nix.nix
+  ];
+
+  nix = {
+    settings = {
+      auto-optimise-store = true;
+
+      daemonCPUSchedPolicy = "idle";
+      daemonIOSchedClass = "idle";
+    };
+  };
+
+  nixpkgs.config.allowUnfree = true;
+
+  system.autoUpgrade = {
+    enable = true;
+    flags = [ "--max-jobs" "2" ];
+    flake = "/home/alan/projects/alanpearce/nixfiles";
+  };
+  systemd.services.nixos-upgrade = {
+    script = pkgs.lib.mkForce ''
+      ${pkgs.nix}/bin/nix-channel --update
+      ${config.system.build.nixos-rebuild}/bin/nixos-rebuild boot --no-build-output ${toString config.system.autoUpgrade.flags}
+    '';
+  };
+}