fix(live-iso): stop initrd GPU panic + clear install pointer on login
- boot.initrd.kernelModules force-loaded amdgpu+radeon+nouveau+i915 in the live ISO, panicking on hosts where more than one driver matched the GPU. Move them to availableKernelModules so udev only loads what fits. - Override services.getty.helpLine with a Nomarchy welcome that points at `sudo /etc/install.sh` (+ --dry-run / --resume variants). Replaces the upstream "NixOS" message. - Ship installer/hardware-db.sh as /etc/hardware-db.sh so the installer's auto-detection works when invoked from the live ISO. - Add live-ISO-only Hyprland exec-once: notify-send + an alacritty "Nomarchy Installer" terminal that prints the install commands. The graphical autologin user now sees a pointer instead of guessing how to start the install. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -25,9 +25,16 @@
|
||||
users.users.nixos.extraGroups = [ "wheel" "video" "render" "audio" "networkmanager" ];
|
||||
|
||||
# Graphics support for live environment.
|
||||
# `virtio` is a no-op on real hardware (no virtio-gpu PCI device) but lets
|
||||
# the ISO render correctly when booted in QEMU via nomarchy-test-live-iso.
|
||||
boot.initrd.kernelModules = [ "amdgpu" "radeon" "nouveau" "i915" "virtio_gpu" ];
|
||||
#
|
||||
# Force-loading every GPU driver in the initrd (amdgpu+radeon+nouveau+i915)
|
||||
# panics most machines — only one of them can claim the GPU and the others
|
||||
# explode. List them under `availableKernelModules` instead so udev only
|
||||
# loads the one that matches the present hardware. We still force the AMD
|
||||
# pair when Plymouth needs KMS early; `virtio_gpu` is auto-loaded when
|
||||
# we're booted in QEMU via nomarchy-test-live-iso.
|
||||
boot.initrd.availableKernelModules = [
|
||||
"amdgpu" "radeon" "nouveau" "i915" "virtio_gpu"
|
||||
];
|
||||
services.xserver.videoDrivers = [ "amdgpu" "radeon" "nouveau" "modesetting" "fbdev" "virtio" ];
|
||||
|
||||
environment.etc."install.sh" = {
|
||||
@@ -35,9 +42,28 @@
|
||||
mode = "0755";
|
||||
};
|
||||
|
||||
environment.etc."hardware-db.sh" = {
|
||||
source = ../installer/hardware-db.sh;
|
||||
mode = "0644";
|
||||
};
|
||||
|
||||
environment.etc."disko-golden.nix" = {
|
||||
source = ../installer/disko-golden.nix;
|
||||
};
|
||||
|
||||
environment.etc."nomarchy".source = inputs.self;
|
||||
|
||||
# Override the upstream installer helpLine (says "NixOS", points nowhere
|
||||
# useful for us). Shown on every TTY before login and again as the MOTD.
|
||||
services.getty.helpLine = lib.mkForce ''
|
||||
|
||||
Welcome to the Nomarchy live environment.
|
||||
|
||||
To install Nomarchy: sudo /etc/install.sh
|
||||
To preview the install: sudo /etc/install.sh --dry-run
|
||||
To resume an interrupted run: sudo /etc/install.sh --resume
|
||||
|
||||
The graphical session autologins as 'nixos' (no password).
|
||||
The 'nixos' and 'root' accounts have empty passwords.
|
||||
'';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user