refactor(nixos): declare bootloader per-host, not in workstation.nix

The bootloader is firmware-specific, not form-factor: UEFI hosts use
systemd-boot, BIOS hosts use GRUB. Drop boot.loader.systemd-boot.enable from
workstation.nix and declare it on the MBP instead, so the incoming BIOS-only
T400 (GRUB) doesn't have to force it off.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Emma Thorpe
2026-06-04 15:22:07 +01:00
parent 7436d64447
commit dfc436802d
2 changed files with 7 additions and 3 deletions
+3 -1
View File
@@ -7,7 +7,9 @@
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
# Asahi manages the EFI vars from macOS; do not touch them from NixOS. # UEFI boot via systemd-boot. Asahi manages the EFI vars from macOS, so do not
# touch them from NixOS.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = false; boot.loader.efi.canTouchEfiVariables = false;
networking.hostName = "Emma-Asahi"; networking.hostName = "Emma-Asahi";
+4 -2
View File
@@ -1,10 +1,12 @@
# Form-factor-agnostic base for the physical graphical NixOS machines. Imported # Form-factor-agnostic base for the physical graphical NixOS machines. Imported
# by both ./laptop.nix and ./desktop.nix; those add only the bits that differ # by both ./laptop.nix and ./desktop.nix; those add only the bits that differ
# between portable and desktop hosts (chiefly the networking backend). # between portable and desktop hosts (chiefly the networking backend).
#
# The bootloader is NOT set here -- it is firmware-specific, not form-factor:
# UEFI hosts (MBP, Mac Pro 3,1) use systemd-boot, the BIOS-only T400 uses GRUB.
# Each machine config declares its own.
{ ... }: { ... }:
{ {
boot.loader.systemd-boot.enable = true;
features.swayDesktop.enable = true; features.swayDesktop.enable = true;
console.keyMap = "dvorak"; console.keyMap = "dvorak";