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

Most themes missing hyprland.conf, causing globbing error on every theme except Kanagawa

Reported by jaded423 · filed Mar 16, 2026Closed upstream on 2026-03-26 by dhh. GitHub close reason: completed. No closing PR or commit is recorded — "completed" alone is not evidence of a fix.

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

Most themes missing hyprland.conf, causing globbing error on every theme except Kanagawarevision 1 · captured 2026-10-04 11:49 UTC via poll

Problem

default/hypr/hyprland.conf line 13 sources a theme-specific config:

source = ~/.config/omarchy/current/theme/hyprland.conf

But only 1 of 17 bundled themes (kanagawa) actually ships a hyprland.conf. Selecting any other theme produces:

Config error in file /home/jaded/.config/hypr/hyprland.conf at line 13: source= globbing error: found no match

This has come up before (#4132, #2971, #1116) but was closed without addressing the root cause.

Why it happens

The kanagawa theme uses hyprland.conf for a theme-specific opacity override:

# Kanagawa backdrop is too strong for detault opacity
windowrule = opacity 0.98 0.95, match:tag terminal

This is the intended use — themes that need Hyprland overrides can provide them. But themes that don't need overrides still need an empty file present, since Hyprland's source = directive errors when the target doesn't exist (there's no optional sourcing).

Suggested fix

Add an empty hyprland.conf to the 15 themes that are missing one:

catppuccin, catppuccin-latte, ethereal, everforest, flexoki-light,
gruvbox, hackerman, matte-black, miasma, nord, osaka-jade,
ristretto, rose-pine, tokyo-night, vantablack, white

One-liner:

for theme in themes/*/; do [ ! -f "$theme/hyprland.conf" ] && touch "$theme/hyprland.conf"; done
View raw text
## Problem

`default/hypr/hyprland.conf` line 13 sources a theme-specific config:

```
source = ~/.config/omarchy/current/theme/hyprland.conf
```

But only 1 of 17 bundled themes (`kanagawa`) actually ships a `hyprland.conf`. Selecting any other theme produces:

```
Config error in file /home/jaded/.config/hypr/hyprland.conf at line 13: source= globbing error: found no match
```

This has come up before (#4132, #2971, #1116) but was closed without addressing the root cause.

## Why it happens

The `kanagawa` theme uses `hyprland.conf` for a theme-specific opacity override:

```
# Kanagawa backdrop is too strong for detault opacity
windowrule = opacity 0.98 0.95, match:tag terminal
```

This is the intended use — themes that need Hyprland overrides can provide them. But themes that don't need overrides still need an empty file present, since Hyprland's `source =` directive errors when the target doesn't exist (there's no optional sourcing).

## Suggested fix

Add an empty `hyprland.conf` to the 15 themes that are missing one:

```
catppuccin, catppuccin-latte, ethereal, everforest, flexoki-light,
gruvbox, hackerman, matte-black, miasma, nord, osaka-jade,
ristretto, rose-pine, tokyo-night, vantablack, white
```

One-liner:
```bash
for theme in themes/*/; do [ ! -f "$theme/hyprland.conf" ] && touch "$theme/hyprland.conf"; done
```

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.