The ISO no longer carries a cp -r'd copy of the omarchy git checkout
into /root/omarchy and the target /home/$user/.local/share/omarchy.
Instead it builds omarchy-installer + omarchy-settings + omarchy +
omarchy-limine from mounted source trees (${OMARCHY_INSTALLER_PATH:-
../omarchy-installer} and ${OMARCHY_PKGS_PATH:-../omarchy-pkgs}),
drops them in the offline mirror, and pacstraps omarchy-installer
during the target install — which deps-in the other three.
- builder/build-omarchy-packages.sh: new. Builds the four packages
inside the ISO build container using each PKGBUILD's OMARCHY_SRC
override (introduced in Chunk 2). Creates a 'builder' user because
makepkg refuses to run as root. Drops the resulting .pkg.tar.zst
files into the offline-mirror directory.
- builder/build-iso.sh: drop the git clone / -v omarchy mount path;
call build-omarchy-packages.sh first; filter out the locally-built
package names from the rest-of-mirror download so we don't try to
fetch them from the network mirror.
- configs/airootfs/root/.automated_script.sh: replace the install_omarchy
cp-and-source dance with 'arch-chroot pacman -S omarchy-installer'
followed by 'OMARCHY_INSTALL_MODE=offline omarchy-install'. Drop the
big chown/chmod block that was setting up the cloned tree.
use_omarchy_helpers extracts the installer's helpers/ tree directly
from the offline-mirror's omarchy-installer-*.pkg.tar.zst so the live
ISO has access to gum-styled logging before pacstrap.
- bin/omarchy-iso-make: always mount omarchy-installer and omarchy-pkgs
(paths configurable via OMARCHY_INSTALLER_PATH / OMARCHY_PKGS_PATH;
default to ../omarchy-installer and ../omarchy-pkgs). --local-source
is now a back-compat no-op.
Omarchy ISO
The Omarchy ISO streamlines the installation of Omarchy. It includes the Omarchy Configurator as a front-end to archinstall and automatically launches the Omarchy Installer after base arch has been setup.
Downloading the latest ISO
See the ISO link on omarchy.org.
Creating the ISO
Run ./bin/omarchy-iso-make and the output goes into ./release. You can build from your local $OMARCHY_PATH for testing by using --local-source or from a checkout of the dev branch (instead of master) by using --dev.
Environment Variables
You can customize the repositories used during the build process by passing in variables:
OMARCHY_INSTALLER_REPO- GitHub repository for the installer (default:basecamp/omarchy)OMARCHY_INSTALLER_REF- Git ref (branch/tag) for the installer (default:master)
Example usage:
OMARCHY_INSTALLER_REPO="myuser/omarchy-fork" OMARCHY_INSTALLER_REF="some-feature" ./bin/omarchy-iso-make
Testing the ISO
Run ./bin/omarchy-iso-boot [release/omarchy.iso].
Signing the ISO
Run ./bin/omarchy-iso-sign [gpg-user] [release/omarchy.iso].
Uploading the ISO
Run ./bin/omarchy-iso-upload [release/omarchy.iso]. This requires you've configured rclone (use rclone config).
Full release of the ISO
Run ./bin/omarchy-iso-release VERSION to create, test, sign, and upload the ISO in one flow. Add --rc to release an RC build instead.