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.
Migration 1788009111 fails when CUPS scheduler is not running
Reported by joselberg · filed Aug 31, 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
Problem
Migration 1788009111 (/usr/share/omarchy/migrations/1788009111.sh) fails with exit 1 when the CUPS scheduler is not running.
The migration expects lpstat -v to either succeed (return a queue list) or fail with "No destinations added.". However, when CUPS is not running at all, lpstat returns "Scheduler is not running." — a case the script doesn't handle, causing exit 1.
# Current code (lines 26-33):
if queue_report=$(LC_ALL=C lpstat -v 2>&1); then
:
elif [[ $queue_report == "lpstat: No destinations added." ]]; then
queue_report=""
else
printf '%s\n' "$queue_report" >&2
exit 1
fiExpected behavior
The migration should treat "Scheduler is not running." the same as "No destinations added." — if CUPS isn't running, there are no queues to clean up.
Suggested fix
Add another condition to handle this case:
elif [[ $queue_report == "lpstat: No destinations added." ||
$queue_report == "lpstat: Scheduler is not running." ]]; then
queue_report=""System info
- Omarchy 4.0.2-1
- Arch Linux, kernel 7.1.9-arch1-2
cups-browsed2.1.1-1 installedcups.servicedisabled/inactivecups-browsed.servicedisabled/inactive
View raw text
## Problem
Migration `1788009111` (`/usr/share/omarchy/migrations/1788009111.sh`) fails with exit 1 when the CUPS scheduler is not running.
The migration expects `lpstat -v` to either succeed (return a queue list) or fail with `"No destinations added."`. However, when CUPS is not running at all, `lpstat` returns `"Scheduler is not running."` — a case the script doesn't handle, causing `exit 1`.
```bash
# Current code (lines 26-33):
if queue_report=$(LC_ALL=C lpstat -v 2>&1); then
:
elif [[ $queue_report == "lpstat: No destinations added." ]]; then
queue_report=""
else
printf '%s\n' "$queue_report" >&2
exit 1
fi
```
## Expected behavior
The migration should treat `"Scheduler is not running."` the same as `"No destinations added."` — if CUPS isn't running, there are no queues to clean up.
## Suggested fix
Add another condition to handle this case:
```bash
elif [[ $queue_report == "lpstat: No destinations added." ||
$queue_report == "lpstat: Scheduler is not running." ]]; then
queue_report=""
```
## System info
- Omarchy 4.0.2-1
- Arch Linux, kernel 7.1.9-arch1-2
- `cups-browsed` 2.1.1-1 installed
- `cups.service` disabled/inactive
- `cups-browsed.service` disabled/inactiveValidation
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 10:17 UTC