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

External device brightness widget in the Waybar

Reported by gabriel-curtino · filed Oct 8, 2025Closed upstream on 2026-02-01. 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

External device brightness widget in the Waybarrevision 1 · captured 2026-10-04 11:35 UTC via poll

What do you need?

This is the code that worked for me to control the brightness of the external monitor in a setup of an EQ minipc with only one monitor connected by HDMI.

Not sure if this should be included in Omarchy and how to do it. I'm just leaving it here in case someone needs it or know how to implement it on the Omarchy defaults.

It can be tweaked to control multiple displays.

Based in this gist: https://gist.github.com/negoro26/c59167fb4c08da46c4e08e1fdcd7aeb1

https://github.com/user-attachments/assets/07b046a4-9398-4ad1-a47c-5adb59a5bebe

~/.config/waybar/config.jsonc

  "modules-right": [
    ...
    "custom/brightness"
  ],
  "custom/brightness": {
    "format": " {text}%",
    "signal": 8,
    "exec": "~/.config/waybar/brightness-control.sh get",
    "on-scroll-up": "~/.config/waybar/brightness-control.sh up",
    "on-scroll-down": "~/.config/waybar/brightness-control.sh down",
    "on-click": "~/.config/waybar/brightness-control.sh left_click",
    "on-click-right":  "~/.config/waybar/brightness-control.sh right_click",
    "tooltip": false
  },

.config/waybar/brightness-control.sh

#!/bin/bash

# --- CONFIGURATION ---
DISPLAY_NUM=1
STEP=5
STATE_FILE="/tmp/waybar_brightness.tmp"
# ---------------------

# Function to send the actual DDC/CI command in the background
set_brightness_in_background() {
    pkill -f "ddcutil.*setvcp 10"
    (ddcutil --display $DISPLAY_NUM setvcp 10 $1) &
}

if [ ! -f "$STATE_FILE" ]; then
    initial_brightness=$(ddcutil --display $DISPLAY_NUM getvcp 10 -t | cut -d ' ' -f 4)
    echo "$initial_brightness" > "$STATE_FILE"
fi

current=$(cat "$STATE_FILE")

case "$1" in
    "get")
        echo " $current"
        ;;
    "up")
        new_brightness=$((current + STEP > 100 ? 100 : current + STEP))
        if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar # Can add whatever RTMIN+n you please, as long as it's an integer. Make sure the signals match between the config and script.
        ;;
    "down")
        new_brightness=$((current - STEP < 0 ? 0 : current - STEP))
        if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
    "right_click")
	new_brightness=0
	if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
    "left_click")
	new_brightness=100
     	if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
esac
View raw text
### What do you need?

This is the code that worked for me to control the brightness of the external monitor in a setup of an EQ minipc with only one monitor connected by HDMI. 

Not  sure if this should be included in Omarchy and how to do it. I'm just leaving it here in case someone needs it or know how to implement it on the Omarchy defaults. 

It can be tweaked to control multiple displays. 

Based in this gist: https://gist.github.com/negoro26/c59167fb4c08da46c4e08e1fdcd7aeb1

https://github.com/user-attachments/assets/07b046a4-9398-4ad1-a47c-5adb59a5bebe

#  ~/.config/waybar/config.jsonc
```json
  "modules-right": [
    ...
    "custom/brightness"
  ],
```

```json
  "custom/brightness": {
    "format": " {text}%",
    "signal": 8,
    "exec": "~/.config/waybar/brightness-control.sh get",
    "on-scroll-up": "~/.config/waybar/brightness-control.sh up",
    "on-scroll-down": "~/.config/waybar/brightness-control.sh down",
    "on-click": "~/.config/waybar/brightness-control.sh left_click",
    "on-click-right":  "~/.config/waybar/brightness-control.sh right_click",
    "tooltip": false
  },
```

#  .config/waybar/brightness-control.sh
```bash
#!/bin/bash

# --- CONFIGURATION ---
DISPLAY_NUM=1
STEP=5
STATE_FILE="/tmp/waybar_brightness.tmp"
# ---------------------

# Function to send the actual DDC/CI command in the background
set_brightness_in_background() {
    pkill -f "ddcutil.*setvcp 10"
    (ddcutil --display $DISPLAY_NUM setvcp 10 $1) &
}

if [ ! -f "$STATE_FILE" ]; then
    initial_brightness=$(ddcutil --display $DISPLAY_NUM getvcp 10 -t | cut -d ' ' -f 4)
    echo "$initial_brightness" > "$STATE_FILE"
fi

current=$(cat "$STATE_FILE")

case "$1" in
    "get")
        echo " $current"
        ;;
    "up")
        new_brightness=$((current + STEP > 100 ? 100 : current + STEP))
        if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar # Can add whatever RTMIN+n you please, as long as it's an integer. Make sure the signals match between the config and script.
        ;;
    "down")
        new_brightness=$((current - STEP < 0 ? 0 : current - STEP))
        if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
    "right_click")
	new_brightness=0
	if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
    "left_click")
	new_brightness=100
     	if [ "$current" -ne "$new_brightness" ]; then
            echo "$new_brightness" > "$STATE_FILE"
            set_brightness_in_background "$new_brightness"
        fi
        pkill -RTMIN+8 waybar
        ;;
esac
```

  • 07b046a4-9398-4ad1-a47c-5adb59a5bebe

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.