Install Omarchy on Arch: Script and No-USB Options
Learn when a clean Arch bootstrap, virtual ISO, or cidata can install Omarchy without a physical USB, and how to inspect the official install script safely.
AMZDIR Editorial · Published · Updated
Installing Omarchy on Arch with a script, attaching an ISO to a VM, and providing cidata are advanced alternatives to a normal USB workflow. They change credential, encryption, or automatic partitioning boundaries. Validate them in a disposable VM before real hardware, and treat the current official manual as authoritative for files and commands.
Prepare a machine for another owner
Press Ctrl + C on the ISO installer's first keyboard-selection screen and select preparation for another owner. Installation completes while keyboard, username, and password are deferred to the final owner's first boot. Their chosen password becomes the disk-encryption password too.
Before handoff, verify only that the first-owner flow appears; do not create a temporary account. Existing personal hardware needs the official Security/Reset procedure—creating another user is not data erasure.
cidata unattended installation
The installer looks for a second drive labeled cidata. With valid configuration it copies the files, skips the wizard, and reboots automatically. Without that drive, the normal installer is unchanged.
1. Create a starting configuration
The reliable method is one interactive installation in an isolated VM, followed by copying the exact files written under /root by the current installer:
| File | Required | Content |
|---|---|---|
user_configuration.json | Yes | Disk, hostname, timezone, keyboard |
user_credentials.json | Yes* | Username and password hash |
user_full_name.txt | No | Git full name |
user_email_address.txt | No | Git email |
user_encrypt_installation.txt | No | true when disk_encryption is present |
authorized_keys | No | One SSH public key per line |
tailscale_authkey | No | Key used to join a tailnet on first boot |
* An empty defer-provisioning file can replace user_credentials.json.
Generate a SHA-512 password hash:
openssl passwd -6 "your-password"Avoid putting a real password in shell history; run openssl passwd -6 and enter it at the prompt instead. Validate JSON syntax:
jq empty user_configuration.json user_credentials.jsonTo defer final-owner setup:
rm -f user_credentials.json
touch defer-provisioning2. Build cidata.iso
Collect the required files in a separate directory, then follow the official example:
mkdir -p cidata
cp user_configuration.json user_credentials.json authorized_keys cidata/
genisoimage -output cidata.iso -volid cidata -joliet -rock cidata/Copy only optional files that exist. In deferred mode, copy defer-provisioning, not user_credentials.json. Inspect the result:
isoinfo -d -i cidata.iso | rg 'Volume id'
isoinfo -f -i cidata.iso3. Attach and boot
Attach omarchy.iso and cidata.iso as two CD-ROM devices. This is the core official Proxmox example; replace the VM ID, storage, bridge, and ISO paths first:
qm create 101 --name my-omarchy \
--bios ovmf --machine q35 --cpu host --cores 4 --memory 8192 \
--ostype l26 --scsihw virtio-scsi-single \
--efidisk0 local-lvm:0,efitype=4m,pre-enrolled-keys=0 \
--scsi0 local-lvm:40,discard=on,iothread=1 \
--net0 virtio,bridge=vmbr0 --vga virtio --serial0 socket \
--ide2 local:iso/omarchy.iso,media=cdrom \
--ide3 local:iso/cidata.iso,media=cdrom \
--boot order='scsi0;ide2'
qm start 101Validate disk selection in a test VM before using a production VM ID or storage pool.
cidata is sensitive media
An encrypted configuration carries the passphrase in plaintext inside disk_encryption, while a Tailscale auth key grants network access. Restrict permissions, set expiry, never commit it, and detach and destroy the media after use. An encrypted unattended install still needs a person to type the LUKS passphrase at first boot.
When authorized_keys is present, the installer enables sshd and opens the firewall. That is a new remote entry point. Verify key login and ensure password-authentication policy was not loosened unexpectedly.
Unencrypted installation
Press Ctrl + C on the disk-format confirmation to receive the unencrypted alternative. Reserve this for physically protected remote hardware or disposable environments that contain no sensitive data. Physical access exposes unencrypted storage; portable and everyday computers should keep default LUKS.
Install Omarchy without a USB
“Without USB” describes several different environments:
- Virtual machine: attach the official ISO as a virtual CD-ROM and follow the normal installer;
- clean Arch test system: inspect and run the official bootstrap only when the machine has no existing desktop environment or irreplaceable data;
- unattended VM or fleet image: attach both the official ISO and a separate
cidataimage.
For a blank physical PC, the current official path still boots the ISO from USB. This guide does not recommend chain-loading an ISO from an internal Windows or Linux partition because an incorrect bootloader or partition change can make the existing system unbootable. Use the ISO and USB guide unless one of the isolated environments above clearly applies.
Install Omarchy on Arch with the official script
The Feishu guide's wget -qO- https://omarchy.org/install | bash endpoint still returns an official bootstrap, but the current manual presents the ISO as the primary path. The endpoint then fetches basecamp/omarchy from master, so it is not a version-pinned installation.
Investigate only on a clean Arch test machine/VM with no desktop environment. Inspect before executing instead of piping blindly:
curl -fsSL https://omarchy.org/install
curl -fsSL https://raw.githubusercontent.com/basecamp/omarchy/refs/heads/master/boot.sh -o /tmp/omarchy-boot.sh
less /tmp/omarchy-boot.sh
bash /tmp/omarchy-boot.shOnly the last command changes the system. Take a VM snapshot and verify the source first. Do not use the Feishu page's mangled /dev/{DEV}... partition placeholders on real disks, and do not test this on an established GNOME/KDE or primary Arch workstation.
Acceptance checklist
- The final owner completes setup and unlocks normally.
- SSH/Tailscale is reachable only from intended networks.
cidatais detached and credentials revoked or secured.omarchy debuggenerates diagnostics.- UEFI/Limine and pre-update snapshots are reachable.
/homehas an independent backup.
If an installation stage stops or reports an incomplete result, preserve the full message and use the installation troubleshooting guide before rerunning the script or installer.
Sources: Omarchy Unattended Installs and Getting Started.
Omarchy Installation Stopped or Failed: Troubleshooting
Identify why an Omarchy installation stopped during ISO writing, USB boot, disk selection, formatting, package setup, or first reboot before retrying.
Chinese Input on Omarchy with Fcitx5, Rime, and CJK Fonts
Install, enable, and troubleshoot Fcitx5, Rime, Chinese input schemes, and CJK fonts on Omarchy and Wayland without breaking desktop shortcuts.