Skip to content
This repository was archived by the owner on Oct 7, 2026. It is now read-only.

Refactor/flake overhaul - #32

Merged
reze-dev merged 35 commits into
mainfrom
refactor/flake-overhaul
Aug 22, 2026
Merged

reze-dev merged 35 commits into
mainfrom
refactor/flake-overhaul

Conversation

@reze-dev

Copy link
Copy Markdown
Owner

No description provided.

Fixes C1: the `system` variable was not in scope inside the perSystem
function, causing `nix develop` to crash for every user. Added `system`
to the argument destructuring pattern.
Fixes C2: eliminated GRUB entirely in favor of Limine as the only
bootloader. Removed dedsec-grub-theme flake input, its conditional
module loading from lib/core.nix, and all GRUB configuration from
boot.nix. The boot module now exclusively configures Limine with
Plymouth splash and optional Secure Boot via Lanzaboote.
…default

Fixes C3: escape_nix_string no longer escapes bare $ — only ${
(interpolation), ", and \ are escaped, so SHA-512 password hashes
survive intact.

Fixes C4: removed the fragile regex that stripped dedsec-grub-theme
from flake.nix (no longer needed since GRUB was eliminated).

Fixes M2: swapSize is now always emitted in generated disko.nix
instead of comparing against a stale default.

Also removed all GRUB/bootloader-choice code paths from the installer
wizard — Limine is now hardcoded as the only bootloader.
Fixes M4: moved Wayland/GUI packages (hyprpolkitagent, hyprcursor,
cliphist, grim, slurp, fuzzel, easyeffects, qpwgraph, dolphin, okular,
etc.) from core packages.nix to a new desktop/desktopPackages.nix
module. Core packages now only contains CLI utilities appropriate for
server/base installations. The desktop profile includes the new module.
Removed hosts/Makima/ directory — this was a personal host config that
doesn't belong in the shared flake template.

Removed modules/features/shell/omp.nix — Oh My Posh was configured with
enable = false, making the entire module a no-op. Removed the 'omp'
feature reference from the workstation profile.
Fixes L1: removed dead moduleFiles variable from checks.nix.

Updated discoverHosts test assertion from Makima to example since the
Makima host was removed. Updated example host comment to remove GRUB
reference.
Fixes M1: added comprehensive documentation explaining the intentional
swap architecture difference between modes:

- whole-disk: uses a dedicated GPT swap partition (no /swap subvolume)
- partition-only: uses a btrfs swapfile inside a /swap subvolume

Also added inline comment at the btrfsSubvolumes false call site and
corrected the swapSize default in the docstring from 8G to 16G.
Updated 5 test files to remove stale GRUB references after the
bootloader was consolidated to Limine-only:

- test_config_generation: removed format_grub_extra_entries import,
  GRUB branch in local build_bootloader_config, converted GRUB tests
- test_hardware_detection: removed GRUB import and dual-boot test
- test_nix_syntax: changed BootloaderChoice.GRUB to .LIMINE
- test_memory_and_secrets: updated assertions for new output format
- e2e/test_suite: removed GRUB imports, branches, and tests

All 218 tests pass.
- Removed GRUB references — Limine is now the sole bootloader
- Updated boot module description from 'GRUB/Limine' to 'Limine'
- Added desktopPackages to the Desktop module reference table
- Removed Oh My Posh from shell module listing
- Updated directory tree to reflect desktop packages addition
- Updated swap default from 8G to 16G in mkDisko examples
- Changed Makima host reference to example in testing section
@reze-dev
reze-dev merged commit 65fdbc5 into main Aug 22, 2026
2 checks passed
@reze-dev
reze-dev deleted the refactor/flake-overhaul branch August 22, 2026 17:19
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant