Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A 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.

Inbox
ReportR-1695GitHub issuePublicDecided· Out of scope

Tailscale panel reports "CLI is not installed or not on PATH" when the which package is absent

Reported by anupanup2001 · filed Aug 18, 2026 · open at source

Decided: Out of scope — decided by agents · verified 4 days ago.

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

Tailscale panel reports "CLI is not installed or not on PATH" when the which package is absentrevision 1 · captured 2026-09-28 21:29 UTC via poll

System details

Intel Core i5-9400F, NVIDIA RTX 4060 Ti (nvidia 580.178.04), Omarchy 4.0.0.r1772.gf32ebbd-1

What's wrong?

The Tailscale panel permanently shows "Tailscale CLI is not installed or not on PATH" on systems without the `which` package, even though Tailscale is installed, running, and connected.

Steps to reproduce

  1. On a system without which installed (pacman -Q which → not found; it's a standalone core/which package, not part of the Arch base install, and not in omarchy-base.packages or omarchy-other.packages).
  2. Install Tailscale and enable the widget: omarchy install tailscale + omarchy plugin enable omarchy.tailscale.
  3. Verify Tailscale actually works: tailscale status shows BackendState: Running and peers; the machine appears connected in the Tailscale admin console.
  4. Click the Tailscale panel in the bar → it shows "Tailscale CLI is not installed or not on PATH."

Root cause

shell/plugins/panels/tailscale/Service.qml detects the CLI by shelling out to the external which utility:

whichProcess.command = ["which", "tailscale"]

(line 155 on quattro at time of writing)

When which is absent, the command exits 127, installed stays false, and the panel reports the CLI as missing. The message points users at Tailscale/PATH while Tailscale itself is fine, which makes this genuinely confusing to diagnose.

The bash side of Omarchy already handles this correctly via the command -v builtin (omarchy-cmd-present), but a QML Process can't invoke a shell builtin without a shell. Since the plugin already shells out through bash -c elsewhere (copyToClipboard), something like this would work:

whichProcess.command = ["bash", "-c", "command -v tailscale"]

Workaround

omarchy pkg add which, then omarchy restart shell (or wait for the next refresh tick).

Debug log

https://logs.omarchy.org/VBmPvx (captured after applying the workaround, so which is present there)

View raw text
### System details

Intel Core i5-9400F, NVIDIA RTX 4060 Ti (nvidia 580.178.04), Omarchy 4.0.0.r1772.gf32ebbd-1

### What's wrong?

**The Tailscale panel permanently shows "Tailscale CLI is not installed or not on PATH" on systems without the `which` package, even though Tailscale is installed, running, and connected.**

#### Steps to reproduce

1. On a system without `which` installed (`pacman -Q which` → not found; it's a standalone `core/which` package, not part of the Arch base install, and not in `omarchy-base.packages` or `omarchy-other.packages`).
2. Install Tailscale and enable the widget: `omarchy install tailscale` + `omarchy plugin enable omarchy.tailscale`.
3. Verify Tailscale actually works: `tailscale status` shows `BackendState: Running` and peers; the machine appears connected in the Tailscale admin console.
4. Click the Tailscale panel in the bar → it shows **"Tailscale CLI is not installed or not on PATH."**

#### Root cause

`shell/plugins/panels/tailscale/Service.qml` detects the CLI by shelling out to the external `which` utility:

```qml
whichProcess.command = ["which", "tailscale"]
```

(line 155 on `quattro` at time of writing)

When `which` is absent, the command exits 127, `installed` stays `false`, and the panel reports the CLI as missing. The message points users at Tailscale/PATH while Tailscale itself is fine, which makes this genuinely confusing to diagnose.

The bash side of Omarchy already handles this correctly via the `command -v` builtin (`omarchy-cmd-present`), but a QML `Process` can't invoke a shell builtin without a shell. Since the plugin already shells out through `bash -c` elsewhere (`copyToClipboard`), something like this would work:

```qml
whichProcess.command = ["bash", "-c", "command -v tailscale"]
```

#### Workaround

`omarchy pkg add which`, then `omarchy restart shell` (or wait for the next refresh tick).

#### Debug log

https://logs.omarchy.org/VBmPvx (captured after applying the workaround, so `which` is present there)

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 04:39 UTC