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-1291GitHub issuePublicFixed

Dark themes ship light Yaru icon variants, making tray icons unreadable

Reported by hayarza · filed Aug 29, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 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

Dark themes ship light Yaru icon variants, making tray icons unreadablerevision 1 · captured 2026-09-28 21:24 UTC via poll

What happened

Every stock theme with mode = "dark" except solitude ships a light
Yaru icon variant in icons.theme. Yaru's light variants draw symbolic and
tray icons in dark colors intended for light backgrounds, so on Omarchy's
dark bar they are effectively invisible.

Surveying /usr/share/omarchy/themes/*/ on 4.0.1-1:

thememodeicons.theme
catppuccindarkYaru-purple
etherealdarkYaru-blue
everforestdarkYaru-sage
gruvboxdarkYaru-olive
hackermandarkYaru-blue
kanagawadarkYaru-blue
last-horizondarkYaru-purple
lumondarkYaru-blue
matte-blackdarkYaru-red
miasmadarkYaru-wartybrown
norddarkYaru-blue
osaka-jadedarkYaru-sage
retro-82darkYaru-wartybrown
ristrettodarkYaru-yellow
solitudedarkYaru-sage-dark
tokyo-nightdarkYaru-magenta
vantablackdarkYaru-gray

16 of 17 dark themes use the light variant. solitude is the only one that
uses a -dark icon set, which suggests the others are oversights rather than
a deliberate choice.

Expected

A theme with mode = "dark" should ship the matching -dark icon variant,
e.g. nord -> Yaru-blue-dark. All the -dark variants are already present
in /usr/share/icons/ from the yaru-icon-theme package, so this is a
one-line change per theme with no new dependency.

Steps to reproduce

  1. omarchy theme set nord
  2. Run any app with a non-symbolic tray icon. nm-applet is autostarted by

/etc/xdg/autostart/nm-applet.desktop from network-manager-applet, so
it is present on many installs.
3. Expand the bar's system tray.
4. The tray icon is dark-on-dark and essentially unreadable.
5. Double-click the bar to toggle transparency: over a light wallpaper the
same icon becomes legible, confirming the icon color, not the widget, is
the problem.

Workaround

A user-level theme overlay, per the theming docs:

mkdir -p ~/.config/omarchy/themes/nord
echo "Yaru-blue-dark" > ~/.config/omarchy/themes/nord/icons.theme
omarchy theme set nord

System

  • Omarchy 4.0.1-1 (upgraded from 3.x via omarchy-upgrade-to-quattro)
  • Kernel 7.1.9-arch1-2
  • AMD Ryzen 5 5600X, NVIDIA RTX 2060 (TU106), nvidia-open-dkms
  • Single 1920x1080 display, scale 1
View raw text
### What happened

Every stock theme with `mode = "dark"` except `solitude` ships a **light**
Yaru icon variant in `icons.theme`. Yaru's light variants draw symbolic and
tray icons in dark colors intended for light backgrounds, so on Omarchy's
dark bar they are effectively invisible.

Surveying `/usr/share/omarchy/themes/*/` on 4.0.1-1:

| theme | mode | icons.theme |
|---|---|---|
| catppuccin | dark | Yaru-purple |
| ethereal | dark | Yaru-blue |
| everforest | dark | Yaru-sage |
| gruvbox | dark | Yaru-olive |
| hackerman | dark | Yaru-blue |
| kanagawa | dark | Yaru-blue |
| last-horizon | dark | Yaru-purple |
| lumon | dark | Yaru-blue |
| matte-black | dark | Yaru-red |
| miasma | dark | Yaru-wartybrown |
| nord | dark | Yaru-blue |
| osaka-jade | dark | Yaru-sage |
| retro-82 | dark | Yaru-wartybrown |
| ristretto | dark | Yaru-yellow |
| **solitude** | dark | **Yaru-sage-dark** |
| tokyo-night | dark | Yaru-magenta |
| vantablack | dark | Yaru-gray |

16 of 17 dark themes use the light variant. `solitude` is the only one that
uses a `-dark` icon set, which suggests the others are oversights rather than
a deliberate choice.

### Expected

A theme with `mode = "dark"` should ship the matching `-dark` icon variant,
e.g. `nord` -> `Yaru-blue-dark`. All the `-dark` variants are already present
in `/usr/share/icons/` from the `yaru-icon-theme` package, so this is a
one-line change per theme with no new dependency.

### Steps to reproduce

1. `omarchy theme set nord`
2. Run any app with a non-symbolic tray icon. `nm-applet` is autostarted by
   `/etc/xdg/autostart/nm-applet.desktop` from `network-manager-applet`, so
   it is present on many installs.
3. Expand the bar's system tray.
4. The tray icon is dark-on-dark and essentially unreadable.
5. Double-click the bar to toggle transparency: over a light wallpaper the
   same icon becomes legible, confirming the icon color, not the widget, is
   the problem.

### Workaround

A user-level theme overlay, per the theming docs:

```bash
mkdir -p ~/.config/omarchy/themes/nord
echo "Yaru-blue-dark" > ~/.config/omarchy/themes/nord/icons.theme
omarchy theme set nord
```

### System

- Omarchy 4.0.1-1 (upgraded from 3.x via omarchy-upgrade-to-quattro)
- Kernel 7.1.9-arch1-2
- AMD Ryzen 5 5600X, NVIDIA RTX 2060 (TU106), nvidia-open-dkms
- Single 1920x1080 display, scale 1

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

  • Fixed bypr/12247· confirmed
  • Related PRpr/14661· confirmed

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 09:49 UTC