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-4851GitHub issuePublicReceived

omarchy-launch-spotify does nothing when quickshell.spotify is running

Reported by drithird · filed Sep 2, 2026Closed upstream on 2026-09-21 by bjarneo via an automated message, as a duplicate of #7154 (R-1757). GitHub close reason: completed.

Received and recorded verbatim. Nothing has been checked yet.

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

omarchy-launch-spotify does nothing when quickshell.spotify is runningrevision 1 · captured 2026-10-04 12:10 UTC via poll

Super+Shift+M / omarchy-launch-spotify does nothing when the
Quickshell "Omarchy Spotify" plugin is running

Describe the bug

omarchy launch spotify (and any binding that routes to it — the stock
SUPER + SHIFT + M "Music" binding, and the quickshell.spotify plugin's
"Omarchy Music app" shortcut) does nothing when the quickshell.spotify
plugin's bar widget is active: the official Spotify client never launches,
and no window is focused.

What is expected

omarchy launch spotify should launch and focus the official Spotify
desktop client at /usr/bin/spotify, falling back to the installer when
Spotify is not installed.

Reproduction steps

  1. Install the quickshell.spotify plugin (`omarchy plugin clone

quickshell.spotify) and keep its BarWidget.qml` running — its window is
class=org.quickshell, title="Omarchy Spotify".
2. Ensure the official client is NOT running.
3. Press Super+Shift+M (stock "Music" binding) or run
omarchy launch spotify.

Nothing happens. No official Spotify window appears.

Root cause

/usr/share/omarchy/bin/omarchy-launch-spotify matches candidate windows by
class OR title (same pattern as omarchy-launch-or-focus):

WINDOW_ADDRESS=$(hyprctl clients -j | jq -r '.[]|select((.class|test("\\bspotify\\b";"i")) or (.title|test("\\bspotify\\b";"i")))|.address' | head -n1)

The Quickshell player's window is `class=org.quickshell,
title="Omarchy Spotify"` — it matches on title — so the script believes a
Spotify window already exists and dispatches focuswindow address:... to a
hidden Quickshell layer surface. Hyprland cannot focus it, so the launch is
silently skipped and /usr/bin/spotify is never started.

Live window listing at reproduction time (official client closed):

class=[org.quickshell] title=[Omarchy Spotify] addr=0x5615735df2f0

Suggested fix

Exclude Quickshell surfaces when matching, e.g. add a
.class != "org.quickshell" guard to the jq filter in
omarchy-launch-spotify (and consider the same in omarchy-launch-or-focus,
which shares the class-or-title heuristic):

WINDOW_ADDRESS=$(hyprctl clients -j | jq -r '.[]|select(.class != "org.quickshell")|select((.class|test("\\bspotify\\b";"i")) or (.title|test("\\bspotify\\b";"i")))|.address' | head -n1)

System details

  • Omarchy: 4.0.2-1 (Arch, id_like=arch)
  • Hyprland: 0.56.2 (v0.56.2, efb5099378)
  • quickshell: 0.3.1-1
  • spotify: 1:1.2.96.518-2
  • CPU: AMD Ryzen 9 3900X
  • GPU: AMD Radeon RX 6950 XT (Navi 21)
View raw text
Super+Shift+M / `omarchy-launch-spotify` does nothing when the
Quickshell "Omarchy Spotify" plugin is running

## Describe the bug

`omarchy launch spotify` (and any binding that routes to it — the stock
`SUPER + SHIFT + M` "Music" binding, and the quickshell.spotify plugin's
"Omarchy Music app" shortcut) does nothing when the quickshell.spotify
plugin's bar widget is active: the official Spotify client never launches,
and no window is focused.

## What is expected

`omarchy launch spotify` should launch and focus the official Spotify
desktop client at `/usr/bin/spotify`, falling back to the installer when
Spotify is not installed.

## Reproduction steps

1. Install the quickshell.spotify plugin (`omarchy plugin clone
   quickshell.spotify`) and keep its `BarWidget.qml` running — its window is
   `class=org.quickshell, title="Omarchy Spotify"`.
2. Ensure the official client is NOT running.
3. Press `Super+Shift+M` (stock "Music" binding) or run
   `omarchy launch spotify`.

Nothing happens. No official Spotify window appears.

## Root cause

`/usr/share/omarchy/bin/omarchy-launch-spotify` matches candidate windows by
**class OR title** (same pattern as `omarchy-launch-or-focus`):

```sh
WINDOW_ADDRESS=$(hyprctl clients -j | jq -r '.[]|select((.class|test("\\bspotify\\b";"i")) or (.title|test("\\bspotify\\b";"i")))|.address' | head -n1)
```

The Quickshell player's window is `class=org.quickshell,
title="Omarchy Spotify"` — it matches on **title** — so the script believes a
Spotify window already exists and dispatches `focuswindow address:...` to a
hidden Quickshell layer surface. Hyprland cannot focus it, so the launch is
silently skipped and `/usr/bin/spotify` is never started.

Live window listing at reproduction time (official client closed):

```
class=[org.quickshell] title=[Omarchy Spotify] addr=0x5615735df2f0
```

## Suggested fix

Exclude Quickshell surfaces when matching, e.g. add a
`.class != "org.quickshell"` guard to the jq filter in
`omarchy-launch-spotify` (and consider the same in `omarchy-launch-or-focus`,
which shares the class-or-title heuristic):

```sh
WINDOW_ADDRESS=$(hyprctl clients -j | jq -r '.[]|select(.class != "org.quickshell")|select((.class|test("\\bspotify\\b";"i")) or (.title|test("\\bspotify\\b";"i")))|.address' | head -n1)
```

## System details

- Omarchy: 4.0.2-1 (Arch, id_like=arch)
- Hyprland: 0.56.2 (v0.56.2, efb5099378)
- quickshell: 0.3.1-1
- spotify: 1:1.2.96.518-2
- CPU: AMD Ryzen 9 3900X
- GPU: AMD Radeon RX 6950 XT (Navi 21)

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.