diff options
author | Gregor Kleen <gkleen@yggdrasil.li> | 2025-05-14 10:50:27 +0200 |
---|---|---|
committer | Gregor Kleen <gkleen@yggdrasil.li> | 2025-05-14 10:50:27 +0200 |
commit | 43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c (patch) | |
tree | c1cc8a034395c9bb8188651f6835922b38887f32 /system-profiles | |
parent | 03d49aa8ec6f51c8f51bfb628e614ac537cca8e0 (diff) | |
download | nixos-43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c.tar nixos-43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c.tar.gz nixos-43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c.tar.bz2 nixos-43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c.tar.xz nixos-43c9825e49d25fbd2c19abcdeb8f73aee8be2a4c.zip |
...
Diffstat (limited to 'system-profiles')
-rw-r--r-- | system-profiles/core/default.nix | 26 | ||||
-rw-r--r-- | system-profiles/default-locale.nix | 27 | ||||
-rw-r--r-- | system-profiles/rebuild-machines/default.nix | 20 |
3 files changed, 30 insertions, 43 deletions
diff --git a/system-profiles/core/default.nix b/system-profiles/core/default.nix index b85aea4e..229a007e 100644 --- a/system-profiles/core/default.nix +++ b/system-profiles/core/default.nix | |||
@@ -127,36 +127,16 @@ in { | |||
127 | 127 | ||
128 | flake-registry = "${flakeInputs.flake-registry}/flake-registry.json"; | 128 | flake-registry = "${flakeInputs.flake-registry}/flake-registry.json"; |
129 | }; | 129 | }; |
130 | nixPath = [ | 130 | nixPath = map (flake: "${flake}=flake:${flake}") (attrNames config.nix.registry); |
131 | "nixpkgs=${pkgs.runCommand "nixpkgs" {} '' | ||
132 | mkdir $out | ||
133 | ln -s ${./nixpkgs.nix} $out/default.nix | ||
134 | ln -s /run/nixpkgs/lib $out/lib | ||
135 | ''}" | ||
136 | ]; | ||
137 | registry = | 131 | registry = |
138 | let override = { self = "nixos"; }; | 132 | let override = { self = "nixos"; }; |
139 | in mapAttrs' (inpName: inpFlake: nameValuePair | 133 | in mapAttrs' (inpName: inpFlake: nameValuePair |
140 | (override.${inpName} or inpName) | 134 | (override.${inpName} or inpName) |
141 | { flake = inpFlake; } ) flakeInputs; | 135 | { to = { type = "path"; path = inpFlake; }; } ) flakeInputs; |
142 | }; | 136 | }; |
143 | 137 | ||
144 | systemd.tmpfiles.rules = [ | 138 | systemd.tmpfiles.rules = [ |
145 | "L+ /run/nixpkgs - - - - ${flakeInputs.${config.nixpkgs.flakeInput}.outPath}" | 139 | "L+ /run/nixpkgs - - - - ${flakeInputs.${config.nixpkgs.flakeInput}.outPath}" |
146 | "L+ /run/nixpkgs-overlays.nix - - - - ${pkgs.writeText "overlays.nix" '' | ||
147 | with builtins; | ||
148 | |||
149 | attrValues (import | ||
150 | ( | ||
151 | let lock = fromJSON (readFile ${flake + "/flake.lock"}); in | ||
152 | fetchTarball { | ||
153 | url = "https://github.com/edolstra/flake-compat/archive/''${lock.nodes.flake-compat.locked.rev}.tar.gz"; | ||
154 | sha256 = lock.nodes.flake-compat.locked.narHash; | ||
155 | } | ||
156 | ) | ||
157 | { src = ${flake}; } | ||
158 | ).defaultNix.overlays | ||
159 | ''}" | ||
160 | "L+ /etc/nixos - - - - ${flake}" | 140 | "L+ /etc/nixos - - - - ${flake}" |
161 | ] ++ map (input: "L+ /run/flake-inputs/${input} - - - - ${flakeInputs.${input}.outPath}") (attrNames flakeInputs); | 141 | ] ++ map (input: "L+ /run/flake-inputs/${input} - - - - ${flakeInputs.${input}.outPath}") (attrNames flakeInputs); |
162 | 142 | ||
@@ -177,8 +157,6 @@ in { | |||
177 | { | 157 | { |
178 | manual.manpages.enable = true; | 158 | manual.manpages.enable = true; |
179 | systemd.user.startServices = "sd-switch"; | 159 | systemd.user.startServices = "sd-switch"; |
180 | |||
181 | programs.ssh.internallyManaged = mkForce true; | ||
182 | } | 160 | } |
183 | ]; | 161 | ]; |
184 | extraSpecialArgs = { inherit flake flakeInputs path; hostConfig = config; }; | 162 | extraSpecialArgs = { inherit flake flakeInputs path; hostConfig = config; }; |
diff --git a/system-profiles/default-locale.nix b/system-profiles/default-locale.nix index 2d483f04..60d338cb 100644 --- a/system-profiles/default-locale.nix +++ b/system-profiles/default-locale.nix | |||
@@ -1,16 +1,23 @@ | |||
1 | { lib, ... }: | 1 | { lib, options, ... }: |
2 | 2 | ||
3 | with lib; | 3 | with lib; |
4 | 4 | ||
5 | { | 5 | { |
6 | i18n = { | 6 | config = foldr recursiveUpdate {} ([ |
7 | defaultLocale = "en_DK.UTF-8"; | 7 | { |
8 | extraLocaleSettings = { | 8 | i18n = { |
9 | "TIME_STYLE" = "long-iso"; | 9 | defaultLocale = "en_DK.UTF-8"; |
10 | }; | 10 | extraLocaleSettings = { |
11 | supportedLocales = [ "C.UTF-8/UTF-8" "en_US.UTF-8/UTF-8" "en_DK.UTF-8/UTF-8" ]; | 11 | "TIME_STYLE" = "long-iso"; |
12 | }; | 12 | }; |
13 | console.keyMap = mkDefault "dvorak-programmer"; | 13 | }; |
14 | console.keyMap = mkDefault "dvorak-programmer"; | ||
14 | 15 | ||
15 | time.timeZone = mkDefault "Europe/Berlin"; | 16 | time.timeZone = mkDefault "Europe/Berlin"; |
17 | } | ||
18 | ] ++ (optional (options ? i18n.extraLocales) { | ||
19 | i18n.extraLocales = [ "C.UTF-8" "en_US.UTF-8" "en_DK.UTF-8" ]; | ||
20 | }) ++ (optional (!(options ? i18n.extraLocales)) { | ||
21 | i18n.supportedLocales = [ "C.UTF-8/UTF-8" "en_US.UTF-8/UTF-8" "en_DK.UTF-8/UTF-8" ]; | ||
22 | })); | ||
16 | } | 23 | } |
diff --git a/system-profiles/rebuild-machines/default.nix b/system-profiles/rebuild-machines/default.nix index 544f47e1..de86cd74 100644 --- a/system-profiles/rebuild-machines/default.nix +++ b/system-profiles/rebuild-machines/default.nix | |||
@@ -25,16 +25,18 @@ let | |||
25 | 25 | ||
26 | phases = [ "buildPhase" "installPhase" ]; | 26 | phases = [ "buildPhase" "installPhase" ]; |
27 | 27 | ||
28 | inherit (pkgs) zsh coreutils openssh; | ||
29 | inherit (cfg) scriptName; | ||
30 | inherit (cfg.flake) flakeOutput; | ||
31 | flake = cfg.flake.name; | ||
32 | nixosRebuild = config.system.build.nixos-rebuild; | ||
33 | inherit (config.security) wrapperDir; | ||
34 | inherit sshConfig; | ||
35 | |||
36 | buildPhase = '' | 28 | buildPhase = '' |
37 | substituteAll $src rebuild-machine.zsh | 29 | substitute $src rebuild-machine.zsh \ |
30 | --subst-var-by zsh ${pkgs.zsh} \ | ||
31 | --subst-var-by coreutils ${pkgs.coreutils} \ | ||
32 | --subst-var-by openssh ${pkgs.openssh} \ | ||
33 | --subst-var-by wrapperDir ${config.security.wrapperDir} \ | ||
34 | --subst-var-by sshConfig ${sshConfig} \ | ||
35 | --subst-var-by out "$out" \ | ||
36 | --subst-var-by nixosRebuild ${config.system.build.nixos-rebuild} \ | ||
37 | --subst-var-by flake ${cfg.flake.name} \ | ||
38 | --subst-var-by scriptName ${cfg.scriptName} \ | ||
39 | --subst-var-by flakeOutput ${cfg.flake.flakeOutput} | ||
38 | ''; | 40 | ''; |
39 | 41 | ||
40 | installPhase = '' | 42 | installPhase = '' |