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.
upgrade-to-quattro: install_keyrings uses `pacman -Sy`, so a rebuilt package # loops forever on "corrupted (checksum)"
Reported by jfbourdeau · filed Aug 6, 2026Closed upstream on 2026-08-07 by the merge of PR #6615 (closed by dhh). GitHub close reason: completed.
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?
- Not yet mapped to any requirement or component.
- 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?
- Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.
Original report
System details
Lenovo Yoga C640 (81UE), Intel i7-10510U, kernel 7.1.5-arch1-2, # omarchy-dev 4.0.0.r1541.gfd1034f (edge) — upgraded from Omarchy 3.8.4
What's wrong?
While re-running omarchy-upgrade-to-quattro, the keyring step failed and could not
recover, no matter how many times the package was deleted and re-downloaded:
:: File /var/cache/pacman/pkg/omarchy-keyring-20251027-1-any.pkg.tar.zst is corrupted
(invalid or corrupted package (checksum)).
Do you want to delete it? [Y/n]
error: failed to commit transaction (invalid or corrupted package (checksum))
Errors occurred, no packages were upgraded.
Warning: Keyring package install failed; attempting to trust the Omarchy packaging key directly.
gpg: key F0134EE680CAC571: "Omarchy <[email protected]>" not changed
-> Locally signed 1 key.
:: Synchronizing package databases...
omarchy is up to date
warning: omarchy-keyring-20251027-1 is up to date -- reinstalling
...
:: File /var/cache/pacman/pkg/omarchy-keyring-20251027-1-any.pkg.tar.zst is corrupted
error: failed to commit transaction (invalid or corrupted package (checksum))The freshly downloaded file fails the same way every time. Not a mirror problem and not
disk space (129 GB free, and the download completes).
Cause. install_keyrings() already documents the underlying situation:
Pre-quattro installs cached omarchy packages downloaded from the legacy repo. The quattro package server rebuilds some of them under the same name and version with different bytes, so the cached copies fail the new database's checksum…
…and it deletes the cached omarchy-* files. But the recovery then runs:
as_root pacman -Sy --noconfirm archlinux-keyring omarchy-keyring-Sy skips refreshing a database it believes is current — note omarchy is up to date
in the output above. So the local db keeps the old checksum for a package the server has
rebuilt, and rejects the correct bytes indefinitely. Clearing the package cache can't help,
because the stale data is in the database, not the cache.
Workaround
sudo pacman -Syy # double y forces the databases to re-download
bash ~/upgrade-to-quattro.sh --devAfter that the keyring step passed immediately and the upgrade ran to completion.
Suggestion. Use pacman -Syy in install_keyrings (at least on the retry path). Since
"rebuilt under the same name and version" is a known property of the package server, forcing
a database refresh there seems like the direct fix — otherwise the failure is unrecoverable
without the user knowing the -Syy trick.
View raw text
### System details # Lenovo Yoga C640 (81UE), Intel i7-10510U, kernel 7.1.5-arch1-2, # omarchy-dev 4.0.0.r1541.gfd1034f (edge) — upgraded from Omarchy 3.8.4 ### What's wrong? While re-running `omarchy-upgrade-to-quattro`, the keyring step failed and could not recover, no matter how many times the package was deleted and re-downloaded: ``` :: File /var/cache/pacman/pkg/omarchy-keyring-20251027-1-any.pkg.tar.zst is corrupted (invalid or corrupted package (checksum)). Do you want to delete it? [Y/n] error: failed to commit transaction (invalid or corrupted package (checksum)) Errors occurred, no packages were upgraded. Warning: Keyring package install failed; attempting to trust the Omarchy packaging key directly. gpg: key F0134EE680CAC571: "Omarchy <[email protected]>" not changed -> Locally signed 1 key. :: Synchronizing package databases... omarchy is up to date warning: omarchy-keyring-20251027-1 is up to date -- reinstalling ... :: File /var/cache/pacman/pkg/omarchy-keyring-20251027-1-any.pkg.tar.zst is corrupted error: failed to commit transaction (invalid or corrupted package (checksum)) ``` The freshly downloaded file fails the same way every time. Not a mirror problem and not disk space (129 GB free, and the download completes). **Cause.** `install_keyrings()` already documents the underlying situation: > Pre-quattro installs cached omarchy packages downloaded from the legacy repo. The quattro > package server rebuilds some of them under the same name and version with different bytes, > so the cached copies fail the new database's checksum… …and it deletes the cached `omarchy-*` files. But the recovery then runs: ```bash as_root pacman -Sy --noconfirm archlinux-keyring omarchy-keyring ``` `-Sy` **skips refreshing a database it believes is current** — note `omarchy is up to date` in the output above. So the local db keeps the *old* checksum for a package the server has rebuilt, and rejects the correct bytes indefinitely. Clearing the package cache can't help, because the stale data is in the *database*, not the cache. **Workaround** ```bash sudo pacman -Syy # double y forces the databases to re-download bash ~/upgrade-to-quattro.sh --dev ``` After that the keyring step passed immediately and the upgrade ran to completion. **Suggestion.** Use `pacman -Syy` in `install_keyrings` (at least on the retry path). Since "rebuilt under the same name and version" is a known property of the package server, forcing a database refresh there seems like the direct fix — otherwise the failure is unrecoverable without the user knowing the `-Syy` trick.
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.
No decision has been recorded yet.