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.
Lost waybar configs during 1.6.1->1.6.2 update
Reported by ardavis · filed Jul 27, 2025Closed upstream on 2025-07-30 by dhh; the closing comment says it was fixed by PR #402. 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
I ran omarchy-update followed by omarchy-update all to see if there were any other updates.
I saw this in the output:
Existing .config/waybar/config.jsonc replaced with new Omarchy default, but a .bak file was made.
Existing .config/waybar/style.css replaced with new Omarchy default, but a .bak file was made.The two waybar .bak files do not exist. I'm fairly certain they did when I updated to 1.6.1.
I was able to reproduce it if multiple calls to omarchy-refresh-waybar occurred. The first time it created the .bak files correctly and then a future migration overrode the .bak files, causing them to be identical and then the identical backup files were removed.
It seems the conditional in this migration will always cause it to run:
I modified the waybar style.css and ran that migration manually once to verify the .bak file was created, then again, and sure enough, the .bak file vanished.
NOTE: Obviously this wouldn't have happened if I didn't attempt to run updates twice, though it could happen if two migrations both run the omarchy-refresh-waybar command.
EDIT: When I tested this I ran the migration without sudo. With sudo, the condition works as intended. Unsure if migrations are always run with sudo or not.
View raw text
I ran `omarchy-update` followed by `omarchy-update all` to see if there were any other updates. I saw this in the output: ``` Existing .config/waybar/config.jsonc replaced with new Omarchy default, but a .bak file was made. Existing .config/waybar/style.css replaced with new Omarchy default, but a .bak file was made. ``` The two waybar `.bak` files do not exist. I'm fairly certain they did when I updated to 1.6.1. I was able to reproduce it if multiple calls to `omarchy-refresh-waybar` occurred. The first time it created the `.bak` files correctly and then a future migration overrode the `.bak` files, causing them to be identical and then the identical backup files were removed. It seems the conditional in this migration will always cause it to run: [migrations/1753495989.sh](https://github.com/basecamp/omarchy/blob/65577c17573e27d893e5da45fce514b05ffd1f7c/migrations/1753495989.sh#L3) I modified the waybar `style.css` and ran that migration manually once to verify the `.bak` file was created, then again, and sure enough, the `.bak` file vanished. NOTE: Obviously this wouldn't have happened if I didn't attempt to run updates twice, though it could happen if two migrations both run the `omarchy-refresh-waybar` command. EDIT: When I tested this I ran the migration without sudo. With sudo, the condition works as intended. Unsure if migrations are always run with sudo or not.
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.