Commit Graph

5 Commits

Author SHA1 Message Date
nocode 20e0643a02 feat(anaconda): add automatic hardware detection and driver installation
Add hardware detection and automatic driver installation during system installation. This includes:

- Virtualization platform detection with automatic guest tools configuration
- Automatic GPU driver installation (NVIDIA, AMD, Intel)
- Removal of incompatible guest tools for other hypervisors
- Network-resilient installation (non-blocking if network unavailable)

The detection uses the fws-hw-detect script which provides the same hardware information shown to the user in the live environment summary screen. This ensures what was announced to the user is what gets applied during installation.

Update section numbering in kickstart file to accommodate the new hardware configuration step.
2026-07-03 03:24:28 +02:00
nocode 2c9e4e6260 feat(anaconda): improve installation process and post-install handling
- Add kernel copy step in %pre to ensure vmlinuz-linux is available for mkinitcpio
- Refactor xinitrc post-install log detection to use /tmp/fws-post-chroot.log copied by kickstart
- Add success detection based on mkinitcpio and grub-install log markers
- Display success screen and poweroff on successful installation, show debug logs on failure
- Add load_policy and setstatus stub scripts to suppress SELinux-related Anaconda warnings
- Force MBR partition table (--disklabel=msdos) for BIOS boot compatibility
- Create standard mkinitcpio preset to replace archiso-specific configuration
- Automatically inject lvm2 hook when root is on LVM
- Fix GRUB installation to properly extract disk path from lsblk output
- Downgrade version to 0.5.3 (development/testing release)
2026-06-22 15:04:41 +02:00
nocode 9e3cca8efc fix(installer): improve bootloader installation and debug logging
- Add fallback GRUB installation for UEFI systems using --removable flag to ensure boot without NVRAM entries
- Fix BIOS disk detection for LVM root partitions by using lsblk with proper filtering instead of pkname
- Enhance debug logging to include %post chroot phase logs (fws-post.log) which indicate bootloader success
- Automatically mount and retrieve installation logs from the installed disk to verify bootloader installation
- Add detailed comments explaining UEFI/BIOS fallback strategies and LVM-aware disk detection

These changes ensure the system can boot even when NVRAM entries are missing or forgotten by firmware, and provide better visibility into bootloader installation success during the debug phase.
2026-06-19 15:44:18 +02:00
nocode fd3c2c998c chore(releng): add disk cleanup commands to anaconda kickstart
Add zerombr and clearpart commands to ensure clean disk state before installation.

This prevents issues when reinstalling on previously partitioned disks by:
- Reinitializing invalid partition tables (zerombr)
- Removing all partitions from all disks (clearpart --all)
- Writing a fresh disk label (--initlabel)

This makes reinstallation reliable even on disks with previous installations,
while allowing users to override defaults via the GUI if needed.
2026-06-18 18:41:38 +02:00
nocode de9647a00d chore: migrate from calamares to anaconda installer
Remove Calamares compilation and configuration, replace with Anaconda installer setup.

Changes:
- Remove Calamares-related entries from .gitignore
- Update README with migration status from Calamares to Anaconda
- Rename setup-calamares.sh references to setup-aur.sh
- Remove Calamares packages from package lists
- Add anaconda and liveimg payload packages
- Add Anaconda kickstart configuration (interactive-defaults.ks)
- Update boot sequence documentation: remove Calamares desktop selection, simplify to Openbox live environment
- Remove Calamares-specific troubleshooting entries
- Clean up .xinitrc and .zlogin to remove Calamares launcher
- Update build scripts to reference local repo generically instead of Calamares-specific
2026-06-17 10:33:28 +02:00