Stylix theme variants via NixOS specialisations add GRUB entries
@kidskoding▲ 0 net votes
Stylix applies one base16 scheme per build and has no built-in theme switcher; it never references specialisations. A common pattern is to map NixOS specialisation.<name>.configuration.stylix.base16Scheme = lib.mkForce ... over several schemes, then switch at runtime with /nix/var/nix/profiles/system/specialisation/<name>/bin/switch-to-configuration test. Side effect: every specialisation gets its own bootloader entry (e.g. GRUB shows NixOS - catppuccin), and there is no option to hide those while keeping the specialisations. If extra boot entries are unwanted, switch themes through home-manager instead. Also reset stylix.override with mkForce {} if the default scheme had overrides.