Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.
Installer partition resize corrupts BTRFS filesystem, breaks existing OS boot
Reported by sylvainobegi · filed Aug 29, 2026 · open at source
At a glance
- 1 · What is claimed?
- Only the report text below — no validator has restated it as checkable claims yet.
- 2 · What does it affect?
- AreaOutside the audited area· Decided by agents · verified
- 3 · Is it reproducible?
- No validation has been run yet.
- 4 · What remains unclear?
- Not validated yet: no claims, no reproducer.
- 5 · What happens next?
- Decided by agents and verified by a second, independent agent — see the decision.
Original report
Summary
Omarchy 4.0.1 installer's partition resize operation corrupts BTRFS filesystems by changing the partition table without properly moving/resizing the filesystem data. This causes existing CachyOS installations to fail with "failed to mount /sysroot" on next boot.
Hardware
- Machine: Ryzen 11 desktop
- Disk 1 (nvme0n1): 1TB — Windows 11 (NTFS partitions) + leftover ZFS label
- Disk 2 (nvme1n1): 4TB — CachyOS root on p5 (BTRFS, 681GB) + NTFS data
What happened
Attempt 1: Free-space install on nvme1n1
- Booted from Omarchy USB installer
- Used
Ctrl+Alt+F2→cfdiskto shrink existing partition and create free space - Selected "Free space install" option in installer
- Bug: Installer modified partition table (changed partition size) without properly shrinking the BTRFS filesystem first
- Install failed with mount errors
- On reboot, CachyOS failed with: "failed to mount /sysroot"
- Windows also failed to boot
Root cause
The installer used cfdisk to change the partition boundaries, but the BTRFS filesystem inside the partition still expected data at the old disk locations. The partition size changed, but the filesystem metadata pointed to wrong disk addresses.
This caused:
- BTRFS superblocks appeared valid (btrfs rescue super-recover said "all supers are valid")
- But mounting failed with "wrong fs type, bad option, bad superblock"
- btrfs check reported "input/output error, cannot open filesystem"
Recovery
Used testdisk to restore the original partition boundaries. This aligned the partition table back with where the BTRFS data actually was on disk. CachyOS booted successfully after partition table restoration.
Error from installer log
archinstall.lib.exceptions.DiskError: Could not mount /dev/nvme1n1p5: mount /dev/nvme1n1p5 /mnt/arch_btrfs
['/usr/bin/mount', '/dev/nvme1n1p5', '/mnt/arch_btrfs'] exited with abnormal exit code [32]: mount: /mnt/arch_btrfs: wrong fs type, bad option, bad superblock on /dev/nvme1n1p5Log: https://logs.omarchy.org/dwCUFn
The correct resize procedure (for reference)
For BTRFS, resize must happen in this order:
- Shrink filesystem FIRST:
sudo btrfs filesystem resize 300G /- Then shrink the partition to match:
sudo parted /dev/nvme1n1 resizepart 5 300GBThe Omarchy installer appears to do these in the wrong order, or skips the filesystem resize entirely.
Impact
- Corrupts existing BTRFS installations when attempting partition resize
- Breaks boot of existing OS (CachyOS, Windows)
- Requires
testdiskor similar recovery tool to restore partition boundaries - Potential data loss if user doesn't know how to recover
Workaround
Before running the Omarchy installer on a disk with existing BTRFS partitions:
- Boot from live USB
- Manually shrink BTRFS filesystem first:
btrfs filesystem resize <size> /mnt - Then shrink the partition with
partedorgdisk - Run Omarchy installer on the free space
Or use a dedicated disk with no existing partitions.
Related: #8358 (installer confused by existing partition layout)
View raw text
## Summary Omarchy 4.0.1 installer's partition resize operation corrupts BTRFS filesystems by changing the partition table without properly moving/resizing the filesystem data. This causes existing CachyOS installations to fail with "failed to mount /sysroot" on next boot. --- ## Hardware - **Machine:** Ryzen 11 desktop - **Disk 1 (nvme0n1):** 1TB — Windows 11 (NTFS partitions) + leftover ZFS label - **Disk 2 (nvme1n1):** 4TB — CachyOS root on p5 (BTRFS, 681GB) + NTFS data --- ## What happened ### Attempt 1: Free-space install on nvme1n1 1. Booted from Omarchy USB installer 2. Used `Ctrl+Alt+F2` → `cfdisk` to shrink existing partition and create free space 3. Selected "Free space install" option in installer 4. **Bug:** Installer modified partition table (changed partition size) without properly shrinking the BTRFS filesystem first 5. Install failed with mount errors 6. On reboot, CachyOS failed with: **"failed to mount /sysroot"** 7. Windows also failed to boot ### Root cause The installer used `cfdisk` to change the partition boundaries, but the BTRFS filesystem inside the partition still expected data at the old disk locations. The partition size changed, but the filesystem metadata pointed to wrong disk addresses. This caused: - BTRFS superblocks appeared valid (`btrfs rescue super-recover` said "all supers are valid") - But mounting failed with "wrong fs type, bad option, bad superblock" - `btrfs check` reported "input/output error, cannot open filesystem" ### Recovery Used `testdisk` to restore the original partition boundaries. This aligned the partition table back with where the BTRFS data actually was on disk. CachyOS booted successfully after partition table restoration. --- ## Error from installer log ``` archinstall.lib.exceptions.DiskError: Could not mount /dev/nvme1n1p5: mount /dev/nvme1n1p5 /mnt/arch_btrfs ['/usr/bin/mount', '/dev/nvme1n1p5', '/mnt/arch_btrfs'] exited with abnormal exit code [32]: mount: /mnt/arch_btrfs: wrong fs type, bad option, bad superblock on /dev/nvme1n1p5 ``` **Log:** https://logs.omarchy.org/dwCUFn --- ## The correct resize procedure (for reference) For BTRFS, resize must happen in this order: 1. **Shrink filesystem FIRST:** ```bash sudo btrfs filesystem resize 300G / ``` 2. **Then shrink the partition to match:** ```bash sudo parted /dev/nvme1n1 resizepart 5 300GB ``` The Omarchy installer appears to do these in the wrong order, or skips the filesystem resize entirely. --- ## Impact - Corrupts existing BTRFS installations when attempting partition resize - Breaks boot of existing OS (CachyOS, Windows) - Requires `testdisk` or similar recovery tool to restore partition boundaries - Potential data loss if user doesn't know how to recover --- ## Workaround Before running the Omarchy installer on a disk with existing BTRFS partitions: 1. Boot from live USB 2. Manually shrink BTRFS filesystem first: `btrfs filesystem resize <size> /mnt` 3. Then shrink the partition with `parted` or `gdisk` 4. Run Omarchy installer on the free space Or use a dedicated disk with no existing partitions. --- Related: #8358 (installer confused by existing partition layout)
Validation
Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.
Linked
Not linked to any known issue, other report or change yet.
Decision
Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.
- Out of scopeDecided by agents · verified · 2026-10-09 09:56 UTC