chore(install): stop writing distro-default config into system.nix
console.useXkbConfig and boot.initrd.systemd.enable are set distro-wide (lib.mkDefault true in modules/nixos/default.nix, since the LUKS-keymap fix), so the installer rewriting them in the generated system.nix was redundant. Drop them there and from the offline-pin test fixture in flake.nix — the nomarchy module still defaults them on, so the closure (and the pin set) is unchanged; verified the values still resolve true and `nix flake check` passes. Only the machine-specific xkb layout is written now. Adjusts the README keyboard-option wording to match. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -186,7 +186,7 @@ examples: **[docs/OVERRIDES.md](docs/OVERRIDES.md)**.
|
|||||||
|---|---|---|
|
|---|---|---|
|
||||||
| `nomarchy.stateFile` | — (required) | Path to your theme-state.json |
|
| `nomarchy.stateFile` | — (required) | Path to your theme-state.json |
|
||||||
| `nomarchy.terminal` | `"ghostty"` | Terminal for keybinds and `$TERMINAL` |
|
| `nomarchy.terminal` | `"ghostty"` | Terminal for keybinds and `$TERMINAL` |
|
||||||
| `nomarchy.keyboard.layout` | `"us"` | XKB layout for the Hyprland session (installer writes it; pairs with xkb + `console.useXkbConfig` in system.nix) |
|
| `nomarchy.keyboard.layout` | `"us"` | XKB layout for the Hyprland session (installer writes the matching `services.xserver.xkb` in system.nix; the console + LUKS prompt follow via the distro default) |
|
||||||
| `nomarchy.keyboard.variant` | `""` | XKB variant for the session |
|
| `nomarchy.keyboard.variant` | `""` | XKB variant for the session |
|
||||||
| `nomarchy.hyprland.enable` | `true` | Nomarchy's Hyprland config |
|
| `nomarchy.hyprland.enable` | `true` | Nomarchy's Hyprland config |
|
||||||
| `nomarchy.waybar.enable` | `true` | Nomarchy's Waybar |
|
| `nomarchy.waybar.enable` | `true` | Nomarchy's Waybar |
|
||||||
|
|||||||
@@ -252,12 +252,6 @@
|
|||||||
({ lib, ... }: {
|
({ lib, ... }: {
|
||||||
nomarchy.system.snapper.enable = true;
|
nomarchy.system.snapper.enable = true;
|
||||||
nomarchy.system.greeter.autoLogin = username;
|
nomarchy.system.greeter.autoLogin = username;
|
||||||
# The installer writes these (keyboard-everywhere
|
|
||||||
# incl. the LUKS prompt) — mirror them or the
|
|
||||||
# initrd/vconsole pins don't match an offline
|
|
||||||
# install's rebuild set.
|
|
||||||
console.useXkbConfig = true;
|
|
||||||
boot.initrd.systemd.enable = true;
|
|
||||||
# nixos-generate-config keys microcode off
|
# nixos-generate-config keys microcode off
|
||||||
# enableRedistributableFirmware (now on): the
|
# enableRedistributableFirmware (now on): the
|
||||||
# real machine enables exactly one vendor —
|
# real machine enables exactly one vendor —
|
||||||
|
|||||||
@@ -444,15 +444,14 @@ cat > "$FLAKE_DIR/system.nix" <<EOF
|
|||||||
time.timeZone = "$TIMEZONE";
|
time.timeZone = "$TIMEZONE";
|
||||||
i18n.defaultLocale = "$LOCALE";
|
i18n.defaultLocale = "$LOCALE";
|
||||||
|
|
||||||
# One keyboard layout everywhere: xkb is the source of truth, the
|
# One keyboard layout everywhere: xkb is the source of truth, and the
|
||||||
# virtual console derives from it (greeter/ttys), and the systemd
|
# distro defaults (console.useXkbConfig + the systemd initrd, set in
|
||||||
# initrd applies it to the LUKS passphrase prompt too (the classic
|
# the nomarchy module) derive the virtual console and the LUKS
|
||||||
# script initrd cannot). The Hyprland session reads the same layout
|
# passphrase prompt from it — so only the chosen layout is written here.
|
||||||
# from nomarchy.keyboard.* in home.nix.
|
# The Hyprland session reads the same layout from nomarchy.keyboard.* in
|
||||||
|
# home.nix.
|
||||||
services.xserver.xkb.layout = "$KB_LAYOUT";
|
services.xserver.xkb.layout = "$KB_LAYOUT";
|
||||||
services.xserver.xkb.variant = "$KB_VARIANT";
|
services.xserver.xkb.variant = "$KB_VARIANT";
|
||||||
console.useXkbConfig = true;
|
|
||||||
boot.initrd.systemd.enable = true;
|
|
||||||
|
|
||||||
# Your login user — \`username\` flows in from flake.nix automatically.
|
# Your login user — \`username\` flows in from flake.nix automatically.
|
||||||
users.users.\${username} = {
|
users.users.\${username} = {
|
||||||
|
|||||||
Reference in New Issue
Block a user