6.4 KiB
Dual Boot Omarchy
Video Guide
Patch the Omarchy ISO to install alongside Windows. Creates a modified ISO with a dual-boot installer that preserves your Windows installation while adding Omarchy with LUKS encryption and btrfs snapshots.
Requirements
- OS: Arch Linux or Omarchy (to run the patcher)
- Omarchy ISO: Download from omarchy.com
- UEFI: Required for dual-boot (no legacy BIOS support)
- Free disk space: 20GB+ unallocated space on the target drive
- USB drive: For booting the patched ISO (Ventoy recommended)
Quick Start
git clone https://git.no-signal.uk/nosignal/Dual-Boot-Omarchy.git
cd Dual-Boot-Omarchy
# Place your Omarchy ISO in this directory, then:
sudo ./patch-omarchy-dualboot.sh
# Or specify the ISO path directly:
sudo ./patch-omarchy-dualboot.sh /path/to/omarchy-3.x.x.iso
This creates omarchy-dualboot-YYYY.MM.DD.iso — copy it to a Ventoy USB and boot from it.
How It Works
The Patcher (run on your existing system)
The patcher modifies the Omarchy ISO by:
- Extracting the ISO and its squashfs root filesystem
- Injecting a dual-boot setup script into the live environment
- Replacing the boot sequence to run the dual-boot installer on tty1
- Repacking the squashfs and creating a new bootable ISO
The Installer (runs when you boot the patched ISO)
When you boot the patched ISO, you get a menu:
| Option | Action |
|---|---|
| 1 | Install Omarchy alongside Windows (dual-boot) |
| 2 | Clean up a failed installation |
| 3 | Standard install (original Omarchy installer, wipes disk) |
| 4 | Exit to shell |
Option 1: Dual-Boot Install
- Drive selection — shows available drives, detects Windows partitions
- Free space check — verifies 20GB+ unallocated space exists
- Encryption password — sets up LUKS2 encryption for the Linux partition
- Partitioning — creates two partitions in free space:
- 1GB EFI partition (labelled "LINUXEFI") for the Linux bootloader
- Remaining space: LUKS2 encrypted partition for Linux root
- Filesystem setup — creates btrfs with subvolumes:
@— root filesystem@home— user home directories@log— system logs@pkg— pacman package cache
- Omarchy configurator — collects your username and preferences
- archinstall — installs the base Arch system
- Limine bootloader — installed and configured with:
- LUKS encryption support
- Windows auto-detection
- Bootable btrfs snapshots via snapper
- Plymouth splash screen (Omarchy theme)
- Omarchy packages — installs the full Omarchy desktop
- UEFI boot entry — creates "Omarchy" entry in your firmware
Windows partitions are never touched.
Option 2: Cleanup Failed Installation
If a previous dual-boot install failed partway through:
- Detects and removes Linux partitions (LINUXEFI, LUKS)
- Cleans up UEFI boot entries
- Leaves Windows completely untouched
What Gets Created on the Target Drive
Drive (e.g. nvme0n1):
├── Windows partitions (UNTOUCHED)
│ ├── EFI System Partition (Windows Boot Manager)
│ ├── Microsoft Reserved
│ ├── Windows (C:)
│ └── Recovery
├── LINUXEFI (1GB, FAT32) ← NEW: Linux bootloader
│ ├── EFI/BOOT/BOOTX64.EFI (Limine)
│ ├── vmlinuz-linux (kernel)
│ ├── initramfs-linux.img (initramfs with encrypt hook)
│ └── limine.conf (boot menu with Windows + snapshots)
└── Linux Root (LUKS2 encrypted) ← NEW: Omarchy system
└── btrfs
├── @ (/)
├── @home (/home)
├── @log (/var/log)
└── @pkg (/var/cache/pacman/pkg)
Booting After Installation
- Reboot your computer
- Press F12/F8/DEL at startup for the boot menu
- Select "Omarchy" for Linux or "Windows Boot Manager" for Windows
The Limine boot menu also shows:
- Omarchy (default)
- Omarchy (fallback)
- Snapshots (bootable btrfs snapshots)
- Windows Boot Manager
Features
- LUKS2 encryption — full disk encryption for the Linux partition
- Btrfs subvolumes — proper layout for snapshots and rollbacks
- Snapper integration — automatic timeline snapshots with bootable rollback via Limine
- Offline installation — uses packages from the ISO, no internet required during install
- Plymouth splash — Omarchy-themed boot animation
- SDDM auto-login — boots straight into Hyprland
Dependencies
The patcher automatically installs these if missing:
| Package | Purpose |
|---|---|
xorriso |
ISO creation and manipulation |
squashfs-tools |
Extracting and repacking the squashfs filesystem |
cdrtools |
Reading ISO metadata (isoinfo) |
Troubleshooting
Can't boot into Omarchy after install
- Use F12/F8 boot menu to select "Omarchy" manually
- If no entry exists: boot the ISO again, choose option 4 (shell), and run:
efibootmgr --create --disk /dev/nvme0n1 --part N --loader '\\EFI\\BOOT\\BOOTX64.EFI' --label 'Omarchy'
LUKS password prompt doesn't appear
- Verify initramfs has the encrypt hook:
lsinitcpio /boot/initramfs-linux.img | grep encrypt - Rebuild if missing:
sudo mkinitcpio -P
Windows disappeared from boot menu
- Boot into Omarchy, then:
This rescans for other bootloaders including Windows.sudo limine-update
Failed install left orphan partitions
Boot the patched ISO again and choose option 2 (Clean up failed installation).
Uninstalling Omarchy (keeping Windows)
Boot from the patched ISO, choose option 2, and it will:
- Remove the Linux EFI and LUKS partitions
- Clean up UEFI boot entries
- Leave Windows untouched
Then use Windows Disk Management to reclaim the free space.
Credits
- Omarchy - The Arch Linux distribution
- archinstall - Arch Linux installer framework
- Limine - Bootloader
- Snapper - Btrfs snapshot management
License
This project is provided as-is for the Omarchy community.