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.
Strange behaviour from (disappearing) Waybar + (persistant) Omarchy-update
Reported by kromsam · filed Aug 27, 2025Closed upstream on 2025-08-27 by dhh. GitHub close reason: completed. No closing PR or commit is recorded — "completed" alone is not evidence of a fix.
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
There is some strange behaviour from the omarchy-update button in my waybar. It could be two separate issues, but of that I am not sure.
Update
For the update issue, I checked my .local/share/omarchy repo. I had my own fork as origin. Now the remotes look like this:
git remote -v
mine [email protected]:kromsam/omarchy.git (fetch)
mine [email protected]:kromsam/omarchy.git (push)
origin https://github.com/basecamp/omarchy.git (fetch)
origin https://github.com/basecamp/omarchy.git (push)When I updated omarchy again, the button did not reappear. Although the waybar still disappeared.
1. Waybar disappears when using omarchy-update from waybar
When I click the omarchy-update button, after the update has run, the waybar disappears. I can bring it back if I run omarchy-update from the terminal. If I run omarchy-update when the waybar is still there, it shortly disappears, and then reappears.
2. Omarchy-update button appears when everything is up to date
speaks for itself
Video
In this video you can see both behaviours
https://github.com/user-attachments/assets/9a8aad18-a1c0-4922-b8c7-3101f0a6517b
Waybar set-up
To be sure, I added some modules to my waybar. So I will share my configuration too.
config.jsonc
{
"reload_style_on_change": true,
"layer": "top",
"position": "top",
"spacing": 0,
"height": 26,
"modules-left": ["custom/omarchy", "hyprland/workspaces"],
"modules-center": ["clock", "custom/update"],
"modules-right": [
"group/tray-expander",
"bluetooth",
"network",
"pulseaudio",
"cpu",
"group/power" // edit: replace battery with group
],
"hyprland/workspaces": {
"on-click": "activate",
"format": "{icon}",
"format-icons": {
"default": "",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"active": ""
},
"persistent-workspaces": {
"1": [],
"2": [],
"3": [],
"4": [],
"5": []
}
},
"custom/omarchy": {
"format": "<span font='omarchy'>\ue900</span>",
"on-click": "omarchy-menu",
"tooltip-format": "Omarchy Menu\n\nSuper + Alt + Space"
},
"custom/update": {
"format": "",
"exec": "omarchy-update-available",
"on-click": "alacritty --class Omarchy --title Omarchy -e omarchy-update",
"tooltip-format": "Omarchy update available",
"interval": 3600
},
"cpu": {
"interval": 5,
"format": "",
"on-click": "alacritty -e btop"
},
"clock": {
"format": "{:%A %H:%M}",
"format-alt": "{:%d %B W%V %Y}",
"tooltip": false,
"on-click-right": "omarchy-cmd-tzupdate"
},
"network": {
"format-icons": ["", "", "", "", ""],
"format": "{icon}",
"format-wifi": "{icon}",
"format-ethernet": "",
"format-disconnected": "",
"tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-disconnected": "Disconnected",
"interval": 3,
"spacing": 1,
"on-click": "alacritty --class=Impala -e impala"
},
"battery": {
"format": "{capacity}% {icon}",
"format-discharging": "{icon}",
"format-charging": "{icon}",
"format-plugged": "",
"format-icons": {
"charging": ["", "", "", "", "", "", "", "", "", ""],
"default": ["", "", "", "", "", "", "", "", "", ""]
},
"format-full": "",
"tooltip-format-discharging": "{power:>1.0f}W↓ {capacity}%",
"tooltip-format-charging": "{power:>1.0f}W↑ {capacity}%",
"interval": 5,
"states": {
"warning": 20,
"critical": 10
},
// fix scroll-crash
"on-scroll-up": "true",
"on-scroll-down": "true"
},
"bluetooth": {
"format": "",
"format-disabled": "",
"format-connected": "",
"tooltip-format": "Devices connected: {num_connections}",
"on-click": "blueberry"
},
"pulseaudio": {
"format": "{icon}",
"on-click": "alacritty --class=Wiremix -e wiremix",
"on-click-right": "pamixer -t",
"tooltip-format": "Playing at {volume}%",
"scroll-step": 5,
"format-muted": "",
"format-icons": {
"default": ["", "", ""]
}
},
"group/tray-expander": {
"orientation": "inherit",
"drawer": {
"transition-duration": 600,
"children-class": "tray-group-item"
},
"modules": ["custom/expand-icon", "tray"]
},
"custom/expand-icon": {
"format": " ",
"tooltip": false
},
"tray": {
"icon-size": 12,
"spacing": 12
},
// edit: begin power group addition
"custom/charge": {
"format": "{}",
"exec": "~/.local/bin/charge-threshold-read",
"interval": 5,
"on-click": "~/.local/bin/charge-threshold-toggle",
"tooltip": true,
"tooltip-format": "Battery charge limit.\n60%/80%/100%",
// fix scroll-crash
"on-scroll-up": "true",
"on-scroll-down": "true"
},
"power-profiles-daemon": {
"format": "{icon}",
"tooltip-format": "Power profile: {profile}nDriver: {driver}",
"tooltip": true,
"format-icons": {
"default": "",
"performance": "",
"balanced": "",
"power-saver": ""
},
// fix scroll-crash
"on-scroll-up": "true",
"on-scroll-down": "true"
},
"group/power": {
"orientation": "inherit",
"drawer": {
"transition-duration": 400,
"children-class": "power-group-item"
},
"modules": ["battery", "power-profiles-daemon", "custom/charge"],
// fix scroll-crash
"on-scroll-up": "true",
"on-scroll-down": "true"
}
// edit: end power group addition
}style.css
@import "../omarchy/current/theme/waybar.css";
* {
background-color: @background;
color: @foreground;
border: none;
border-radius: 0;
min-height: 0;
font-family: CaskaydiaMono Nerd Font;
font-size: 12px;
}
.modules-left {
margin-left: 8px;
}
.modules-right {
margin-right: 8px;
}
#workspaces button {
all: initial;
padding: 0 6px;
margin: 0 1.5px;
min-width: 9px;
}
#workspaces button.empty {
opacity: 0.5;
}
#tray,
#cpu,
#battery,
#network,
#bluetooth,
#pulseaudio,
#custom-omarchy,
#custom-update {
min-width: 12px;
margin: 0 7.5px;
}
#custom-expand-icon {
margin-right: 7px;
}
tooltip {
padding: 2px;
}
#custom-update {
font-size: 10px;
}
#clock {
margin-left: 8.75px;
}
.hidden {
opacity: 0;
}
View raw text
There is some strange behaviour from the omarchy-update button in my waybar. It could be two separate issues, but of that I am not sure. ## Update For the update issue, I checked my .local/share/omarchy repo. I had my own fork as origin. Now the remotes look like this: ``` git remote -v mine [email protected]:kromsam/omarchy.git (fetch) mine [email protected]:kromsam/omarchy.git (push) origin https://github.com/basecamp/omarchy.git (fetch) origin https://github.com/basecamp/omarchy.git (push) ``` When I updated omarchy again, the button did not reappear. Although the waybar still disappeared. ## 1. Waybar disappears when using omarchy-update from waybar When I click the omarchy-update button, after the update has run, the waybar disappears. I can bring it back if I run `omarchy-update` from the terminal. If I run `omarchy-update` when the waybar is still there, it shortly disappears, and then reappears. ## 2. Omarchy-update button appears when everything is up to date speaks for itself ## Video In this video you can see both behaviours https://github.com/user-attachments/assets/9a8aad18-a1c0-4922-b8c7-3101f0a6517b ## Waybar set-up To be sure, I added some modules to my waybar. So I will share my configuration too. ### config.jsonc ``` { "reload_style_on_change": true, "layer": "top", "position": "top", "spacing": 0, "height": 26, "modules-left": ["custom/omarchy", "hyprland/workspaces"], "modules-center": ["clock", "custom/update"], "modules-right": [ "group/tray-expander", "bluetooth", "network", "pulseaudio", "cpu", "group/power" // edit: replace battery with group ], "hyprland/workspaces": { "on-click": "activate", "format": "{icon}", "format-icons": { "default": "", "1": "1", "2": "2", "3": "3", "4": "4", "5": "5", "6": "6", "7": "7", "8": "8", "9": "9", "active": "" }, "persistent-workspaces": { "1": [], "2": [], "3": [], "4": [], "5": [] } }, "custom/omarchy": { "format": "<span font='omarchy'>\ue900</span>", "on-click": "omarchy-menu", "tooltip-format": "Omarchy Menu\n\nSuper + Alt + Space" }, "custom/update": { "format": "", "exec": "omarchy-update-available", "on-click": "alacritty --class Omarchy --title Omarchy -e omarchy-update", "tooltip-format": "Omarchy update available", "interval": 3600 }, "cpu": { "interval": 5, "format": "", "on-click": "alacritty -e btop" }, "clock": { "format": "{:%A %H:%M}", "format-alt": "{:%d %B W%V %Y}", "tooltip": false, "on-click-right": "omarchy-cmd-tzupdate" }, "network": { "format-icons": ["", "", "", "", ""], "format": "{icon}", "format-wifi": "{icon}", "format-ethernet": "", "format-disconnected": "", "tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}", "tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}", "tooltip-format-disconnected": "Disconnected", "interval": 3, "spacing": 1, "on-click": "alacritty --class=Impala -e impala" }, "battery": { "format": "{capacity}% {icon}", "format-discharging": "{icon}", "format-charging": "{icon}", "format-plugged": "", "format-icons": { "charging": ["", "", "", "", "", "", "", "", "", ""], "default": ["", "", "", "", "", "", "", "", "", ""] }, "format-full": "", "tooltip-format-discharging": "{power:>1.0f}W↓ {capacity}%", "tooltip-format-charging": "{power:>1.0f}W↑ {capacity}%", "interval": 5, "states": { "warning": 20, "critical": 10 }, // fix scroll-crash "on-scroll-up": "true", "on-scroll-down": "true" }, "bluetooth": { "format": "", "format-disabled": "", "format-connected": "", "tooltip-format": "Devices connected: {num_connections}", "on-click": "blueberry" }, "pulseaudio": { "format": "{icon}", "on-click": "alacritty --class=Wiremix -e wiremix", "on-click-right": "pamixer -t", "tooltip-format": "Playing at {volume}%", "scroll-step": 5, "format-muted": "", "format-icons": { "default": ["", "", ""] } }, "group/tray-expander": { "orientation": "inherit", "drawer": { "transition-duration": 600, "children-class": "tray-group-item" }, "modules": ["custom/expand-icon", "tray"] }, "custom/expand-icon": { "format": " ", "tooltip": false }, "tray": { "icon-size": 12, "spacing": 12 }, // edit: begin power group addition "custom/charge": { "format": "{}", "exec": "~/.local/bin/charge-threshold-read", "interval": 5, "on-click": "~/.local/bin/charge-threshold-toggle", "tooltip": true, "tooltip-format": "Battery charge limit.\n60%/80%/100%", // fix scroll-crash "on-scroll-up": "true", "on-scroll-down": "true" }, "power-profiles-daemon": { "format": "{icon}", "tooltip-format": "Power profile: {profile}nDriver: {driver}", "tooltip": true, "format-icons": { "default": "", "performance": "", "balanced": "", "power-saver": "" }, // fix scroll-crash "on-scroll-up": "true", "on-scroll-down": "true" }, "group/power": { "orientation": "inherit", "drawer": { "transition-duration": 400, "children-class": "power-group-item" }, "modules": ["battery", "power-profiles-daemon", "custom/charge"], // fix scroll-crash "on-scroll-up": "true", "on-scroll-down": "true" } // edit: end power group addition } ``` ### style.css ``` @import "../omarchy/current/theme/waybar.css"; * { background-color: @background; color: @foreground; border: none; border-radius: 0; min-height: 0; font-family: CaskaydiaMono Nerd Font; font-size: 12px; } .modules-left { margin-left: 8px; } .modules-right { margin-right: 8px; } #workspaces button { all: initial; padding: 0 6px; margin: 0 1.5px; min-width: 9px; } #workspaces button.empty { opacity: 0.5; } #tray, #cpu, #battery, #network, #bluetooth, #pulseaudio, #custom-omarchy, #custom-update { min-width: 12px; margin: 0 7.5px; } #custom-expand-icon { margin-right: 7px; } tooltip { padding: 2px; } #custom-update { font-size: 10px; } #clock { margin-left: 8.75px; } .hidden { opacity: 0; } ```
- 9a8aad18-a1c0-4922-b8c7-3101f0a6517b
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.