summary refs log tree commit diff stats
path: root/system/settings
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
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')
-rw-r--r--system/settings/configuration/nix-linux.nix32
-rw-r--r--system/settings/configuration/nix.nix31
-rw-r--r--system/settings/darwin.nix9
3 files changed, 39 insertions, 33 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}
+    '';
+  };
+}
diff --git a/system/settings/configuration/nix.nix b/system/settings/configuration/nix.nix
index 25b9696f..c8db7836 100644
--- a/system/settings/configuration/nix.nix
+++ b/system/settings/configuration/nix.nix
@@ -8,36 +8,17 @@
   ];
   nix = {
     settings = {
-      cores = 0;
-      auto-optimise-store = true;
+      cores = lib.mkDefault 0;
       use-xdg-base-directories = true;
+      keep-outputs = true;
+      keep-derivations = true;
+      experimental-features = "nix-command flakes";
+      warn-dirty = false;
     };
 
-    daemonCPUSchedPolicy = "idle";
-    daemonIOSchedClass = "idle";
-
-    extraOptions = ''
-      keep-outputs = true
-      keep-derivations = true
-      experimental-features = nix-command flakes
-      warn-dirty = false
-    '';
-
     gc = {
       automatic = lib.mkDefault true;
-      options = "--delete-older-than 14d";
+      options = lib.mkDefault "--delete-older-than 14d";
     };
   };
-
-  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}
-    '';
-  };
 }
diff --git a/system/settings/darwin.nix b/system/settings/darwin.nix
index ef039a48..aa55cce5 100644
--- a/system/settings/darwin.nix
+++ b/system/settings/darwin.nix
@@ -4,7 +4,7 @@
 , ...
 }: {
   imports = [
-    ../../pin.nix
+    ./configuration/nix.nix
   ];
   services.nix-daemon = {
     enable = true;
@@ -17,19 +17,12 @@
   ];
 
   nix = {
-    settings.cores = lib.mkDefault 0;
     daemonIOLowPriority = true;
     gc = {
-      automatic = true;
       user = "alan";
       options = "--max-freed $((25 * 1024**3 - 1024 * $(df -P -k /nix/store | tail -n 1 | awk '{ print $4 }')))";
     };
     settings.extra-platforms = "aarch64-darwin x86_64-darwin";
-    settings.experimental-features = "nix-command flakes";
-    settings.warn-dirty = false;
-    settings.keep-outputs = true;
-    settings.keep-derivations = true;
-    settings.use-xdg-base-directories = true;
 
     linux-builder.enable = true;
     settings.trusted-users = [ "@admin" ];