Add Limine bootloader support with themed styling

Phase 2: Bootloader improvements

- Add bootloader choice: systemd-boot (default) or Limine
- Configure Limine with classical theme colors:
  - Dark brown background (#1a1611)
  - Tan text (#d4c4a8)
  - Gold accents (#d4a857)
- Add Plymouth boot splash option
- Update installer to prompt for bootloader choice
- Add example-limine configuration
- Update documentation with boot options

Users can now choose between:
1. systemd-boot - Simple, reliable, well-tested (default)
2. Limine - Modern, prettier, themed to match Nomarchy

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-15 02:50:48 -05:00
parent 58e4232f2f
commit 6686a9f6b6
5 changed files with 140 additions and 10 deletions

View File

@@ -57,14 +57,17 @@
# Performance (security-conscious defaults)
enableMitigationsOff = false; # Opt-in only
# Boot
bootloader = "systemd-boot"; # or "limine"
enablePlymouth = false; # Boot splash
# Theme
theme = "classical";
};
in {
# NixOS configurations
nixosConfigurations = {
# Example configuration (requires hardware-configuration.nix)
# Users create their own configuration via the installer
# Example configuration with systemd-boot (default)
example = mkHost {
system = "x86_64-linux";
config = defaultConfig // {
@@ -73,7 +76,24 @@
extraModules = [
# Minimal test hardware config
({...}: {
boot.loader.systemd-boot.enable = true;
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
})
];
};
# Example configuration with Limine bootloader
example-limine = mkHost {
system = "x86_64-linux";
config = defaultConfig // {
hostname = "nomarchy-limine";
bootloader = "limine";
enablePlymouth = true;
};
extraModules = [
({...}: {
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";