Commit Graph
75 Commits
Author SHA1 Message Date
David Heinemeier Hansson 1fead8ec7a Add omarchy-iso-sign 2025-08-20 21:44:02 +02:00
David Heinemeier Hansson ab32317f21 Explain boot order 2025-08-20 21:32:00 +02:00
David Heinemeier Hansson eb24316db1 It's a number 2025-08-20 21:28:35 +02:00
David Heinemeier Hansson 01398a7ea7 Just always use 8GB
Simpler, enough
2025-08-20 21:28:16 +02:00
David Heinemeier Hansson abdbec85da No need to get the latest 2025-08-20 21:26:57 +02:00
David Heinemeier Hansson bdee10a1d6 Failure to not go 2025-08-20 21:26:52 +02:00
David Heinemeier Hansson 9d0faa4c58 Boil iso-boot down to its essence 2025-08-20 21:24:11 +02:00
David Heinemeier Hansson 84dec181e1 Renamed configurator 2025-08-20 19:52:54 +02:00
David Heinemeier Hansson 50d770b43e Excess CR 2025-08-20 19:45:37 +02:00
David Heinemeier Hansson b7f3711fc7 Forward args correctly 2025-08-20 18:20:29 +02:00
David Heinemeier Hansson 6e59ff91d1 Better config for sudoless 2025-08-20 17:54:52 +02:00
David Heinemeier Hansson e8110b9f8d More comments 2025-08-20 17:54:46 +02:00
David Heinemeier Hansson 5bd9121f0f Extract shared chroot bash 2025-08-20 17:54:41 +02:00
David Heinemeier Hansson 57973eec25 Ensure we have jq available for fetching the user name out of the installer output 2025-08-20 17:51:00 +02:00
David Heinemeier Hansson c20e54e58c Just apply all the patches 2025-08-20 17:00:38 +02:00
Jarek a0dd0127d5 Fix OMARCHY_USER when archinstall fails (#12)
Get username from JSON config instead of /mnt/home to ensure
error recovery works even when archinstall completely fails.
2025-08-20 16:56:35 +02:00
David Heinemeier Hansson b9f5ec0284 Closer to definition 2025-08-20 16:49:12 +02:00
David Heinemeier Hansson 743da1cc45 Doing this inline since we need to refernce the user anyway 2025-08-20 16:45:01 +02:00
David Heinemeier Hansson e6e0ec8d85 Explain why we avoid reflector 2025-08-20 16:44:25 +02:00
David Heinemeier Hansson 9f3d699243 Setup sudoless install in the autorstart instead 2025-08-20 16:41:51 +02:00
David Heinemeier Hansson 5994ea63e5 Catch errors 2025-08-20 16:40:57 +02:00
David Heinemeier Hansson e8e442444a This is already an executable 2025-08-20 16:40:44 +02:00
Ryan Hughes 72d9eaa417 Persist firmware if --storage is defined, fix video, and remove --headless (#11)
* Persist firmware if --storage is defined

* Fix video device to be correct to work with hyprland

* Remove headless
2025-08-20 15:52:10 +02:00
David Heinemeier Hansson 0e1b226e75 Rely on pwd 2025-08-20 15:25:20 +02:00
David Heinemeier Hansson d0e9a530a4 Cleanup and remove reflector by default 2025-08-20 14:06:10 +02:00
David Heinemeier Hansson 1e414e4d26 Bring some of the updates from the online work over 2025-08-20 13:53:01 +02:00
David Heinemeier Hansson bd853cd9d0 Formatting 2025-08-20 13:49:24 +02:00
David Heinemeier Hansson 3b83bb5672 Move patches that are only for offline builder 2025-08-20 13:49:21 +02:00
David Heinemeier Hansson ef2a295852 Separate 2025-08-20 13:48:36 +02:00
David Heinemeier Hansson 4565d89fea Fix latest_iso finder 2025-08-20 13:38:15 +02:00
David Heinemeier Hansson 06ac075d24 Offer to boot newly built ISO 2025-08-20 13:29:42 +02:00
David Heinemeier Hansson 02750fd9d9 Use a broader profiledef patch that also sets Omarchy as the creator 2025-08-20 13:29:32 +02:00
David Heinemeier Hansson 0959187d0f Not used for online 2025-08-20 13:09:44 +02:00
David Heinemeier Hansson 0f4addc91b Of course its the installer 2025-08-20 13:09:10 +02:00
David Heinemeier Hansson 4f206eb599 Move all files under the builder 2025-08-20 11:44:24 +02:00
David Heinemeier Hansson cb078cc13a Clean up the online installer 2025-08-20 09:37:18 +02:00
David Heinemeier Hansson e2183fefee Not used any more 2025-08-19 20:17:43 +02:00
Jarek 272932f13d Enhance boot script: Add --boot-from-disk option (#10)
* Fix omarchy-iso-boot for Arch Linux systems

- Add omarchy-iso-boot-arch with proper OVMF detection
- Auto-install missing dependencies (qemu-full, edk2-ovmf)
- Support KVM acceleration with fallback
- Better error handling and user feedback
- Memory auto-adjustment based on system resources
- Support both UEFI and BIOS boot modes

Fixes #3

* Fix display issues in boot script

- Fixed display configuration for BIOS and UEFI modes
- Added OpenGL support with gtk,gl=on
- Use virtio-vga for BIOS mode (better performance)
- Remove problematic virgl property that caused errors
- Fixed print_info bug in BIOS mode

BIOS mode confirmed working with display and OpenGL.
UEFI mode may need additional work for some systems.

Workaround: Use --bios flag for reliable display output

* Fix UEFI boot - now works without --bios flag

- Fixed critical bug: was copying OVMF_CODE instead of OVMF_VARS
- Fixed boot order: CD-ROM now has bootindex=1 for proper UEFI boot
- Unified display config: virtio-vga with OpenGL for both modes
- Both UEFI and BIOS modes now fully functional

Tested and confirmed working:
- UEFI mode boots ISO correctly
- BIOS mode continues to work
- Display and OpenGL acceleration enabled
- No need for --bios workaround anymore

* Fix Issue #7: Enable passwordless sudo in ISO

- Add sudoers configuration to allow NOPASSWD sudo during installation
- Resolves password prompts that break automated installation
- Creates /etc/sudoers.d/99-omarchy-installer in the ISO
- Allows both root and wheel group users passwordless sudo access

This enables 'wget https://omarchy.org/install | bash' to run
without interruption for sudo password input.

Fixes #7

* Fix Issue #7: Copy sudoers config to chroot target system

The sudoers NOPASSWD configuration wasn't working because the
installer runs in arch-chroot which has its own /etc/sudoers.

This copies the sudoers configuration from the ISO to the target
system before running the chroot installer, enabling passwordless
sudo inside the chroot environment.

Resolves sudo password prompts that break automated installation.

Fixes #7

* Fix Issue #7: Add specific user to sudoers for chroot

The chroot runs as a specific user, but that user might not be in the
wheel group. This explicitly adds the target user to sudoers in the
target system to ensure passwordless sudo works in chroot.

This should resolve remaining sudo password prompts during installation.

Fixes #7

* Enhance boot script: Add --boot-from-disk option

Adds ability to boot from installed disk instead of ISO after installation.

Features:
- New --boot-from-disk flag prioritizes disk boot over ISO
- Configurable boot order via bootindex (disk=1, ISO=3)
- Clear user feedback about boot mode
- Maintains backward compatibility (ISO-first by default)

Usage:
  ./bin/omarchy-iso-boot omarchy.iso --boot-from-disk

This enables testing the installed Omarchy system after reboot
without manually changing boot priority.

* Implement automatic boot order for seamless installation-to-disk transition

Implements David's request using Ryan Hughes' elegant solution:
smart boot ordering that automatically handles both installation
and post-install boot without manual intervention.

How it works:
- Disk set as bootindex=1 (highest priority)
- ISO set as bootindex=2 (fallback)
- Empty disk fails to boot -> UEFI/BIOS falls back to ISO
- After installation, disk is bootable -> boots automatically

This simple approach achieves the desired behavior without
complex monitoring or runtime boot order changes.

Credits: Ryan Hughes for the elegant boot order solution

Testing confirmed:
- Installation: Empty disk fails, boots from ISO
- Post-install: Disk is bootable, boots from disk
- No manual intervention required
2025-08-19 20:17:21 +02:00
David Heinemeier Hansson 200265a73e Already have this 2025-08-19 18:32:50 +02:00
Jarek 13c8d948da Fix Issue #7: Enable passwordless sudo during installation (#8)
* Fix omarchy-iso-boot for Arch Linux systems

- Add omarchy-iso-boot-arch with proper OVMF detection
- Auto-install missing dependencies (qemu-full, edk2-ovmf)
- Support KVM acceleration with fallback
- Better error handling and user feedback
- Memory auto-adjustment based on system resources
- Support both UEFI and BIOS boot modes

Fixes #3

* Fix display issues in boot script

- Fixed display configuration for BIOS and UEFI modes
- Added OpenGL support with gtk,gl=on
- Use virtio-vga for BIOS mode (better performance)
- Remove problematic virgl property that caused errors
- Fixed print_info bug in BIOS mode

BIOS mode confirmed working with display and OpenGL.
UEFI mode may need additional work for some systems.

Workaround: Use --bios flag for reliable display output

* Fix UEFI boot - now works without --bios flag

- Fixed critical bug: was copying OVMF_CODE instead of OVMF_VARS
- Fixed boot order: CD-ROM now has bootindex=1 for proper UEFI boot
- Unified display config: virtio-vga with OpenGL for both modes
- Both UEFI and BIOS modes now fully functional

Tested and confirmed working:
- UEFI mode boots ISO correctly
- BIOS mode continues to work
- Display and OpenGL acceleration enabled
- No need for --bios workaround anymore

* Fix Issue #7: Enable passwordless sudo in ISO

- Add sudoers configuration to allow NOPASSWD sudo during installation
- Resolves password prompts that break automated installation
- Creates /etc/sudoers.d/99-omarchy-installer in the ISO
- Allows both root and wheel group users passwordless sudo access

This enables 'wget https://omarchy.org/install | bash' to run
without interruption for sudo password input.

Fixes #7

* Fix Issue #7: Copy sudoers config to chroot target system

The sudoers NOPASSWD configuration wasn't working because the
installer runs in arch-chroot which has its own /etc/sudoers.

This copies the sudoers configuration from the ISO to the target
system before running the chroot installer, enabling passwordless
sudo inside the chroot environment.

Resolves sudo password prompts that break automated installation.

Fixes #7

* Fix Issue #7: Add specific user to sudoers for chroot

The chroot runs as a specific user, but that user might not be in the
wheel group. This explicitly adds the target user to sudoers in the
target system to ensure passwordless sudo works in chroot.

This should resolve remaining sudo password prompts during installation.

Fixes #7
2025-08-19 18:32:01 +02:00
David Heinemeier Hansson b41edfbbb9 Copy things in correctly 2025-08-19 15:49:15 +02:00
David Heinemeier Hansson 0d477efdeb Add sudoers.d to skip needing sudo during installation 2025-08-19 15:20:58 +02:00
David Heinemeier Hansson d0c9051aed Revised for more online 2025-08-19 14:09:13 +02:00
David Heinemeier Hansson ea379f526f Run with scissors 2025-08-19 10:24:35 +02:00
David Heinemeier Hansson 8e5b6bbbf7 Need both online 2025-08-19 10:22:30 +02:00
David Heinemeier Hansson 217f84de33 Add option to build online ISO (#6)
* We will use iwctl directly

* Make it possible to tweak build script

* Allow the toggling

* Add online iso build option

* Formatting
2025-08-19 10:21:44 +02:00
David Heinemeier Hansson ccd54ece8f Promote the arch boot as only boot 2025-08-19 10:18:16 +02:00
Jarek 3895aa970a Fix omarchy-iso-boot for Arch Linux systems (#5)
* Fix omarchy-iso-boot for Arch Linux systems

- Add omarchy-iso-boot-arch with proper OVMF detection
- Auto-install missing dependencies (qemu-full, edk2-ovmf)
- Support KVM acceleration with fallback
- Better error handling and user feedback
- Memory auto-adjustment based on system resources
- Support both UEFI and BIOS boot modes

Fixes #3

* Fix display issues in boot script

- Fixed display configuration for BIOS and UEFI modes
- Added OpenGL support with gtk,gl=on
- Use virtio-vga for BIOS mode (better performance)
- Remove problematic virgl property that caused errors
- Fixed print_info bug in BIOS mode

BIOS mode confirmed working with display and OpenGL.
UEFI mode may need additional work for some systems.

Workaround: Use --bios flag for reliable display output

* Fix UEFI boot - now works without --bios flag

- Fixed critical bug: was copying OVMF_CODE instead of OVMF_VARS
- Fixed boot order: CD-ROM now has bootindex=1 for proper UEFI boot
- Unified display config: virtio-vga with OpenGL for both modes
- Both UEFI and BIOS modes now fully functional

Tested and confirmed working:
- UEFI mode boots ISO correctly
- BIOS mode continues to work
- Display and OpenGL acceleration enabled
- No need for --bios workaround anymore
2025-08-19 10:17:56 +02:00
David Heinemeier Hansson d302ef72d6 Update README.md 2025-08-18 16:36:40 -04:00
David Heinemeier Hansson efe3869874 Update README.md 2025-08-18 16:13:02 -04:00