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.
omarchy-cmd-screenrecord not working with multiple displays (wf-recorder)
Reported by krymancer · filed Aug 29, 2025Closed upstream on 2025-10-26 by ryanrhughes. 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
As per the OMARchy Manual, the hotkey for screen recording should be pressed a second time to stop the recording. This works correctly for 'record a specific area' (Alt + PrintScr). However, when attempting to stop a 'record the full monitor' session (Ctrl + Alt + PrintScr) I only see an notification saying that the record was started, but by pressing the hotkey again, a I see a new notification saying the same thing instead of the recording being stopped this causes so I never finish recording thus not saving any files, actually I checked btop if the process is running and it seems that is not. I tried to run the command in the terminal, because I thought that might be something crashing and worked fine, save the file and everything. I don't think that this can be a problem because it does start so should be recognize the input but I use fn + } as PrintScr button.
I did some digging and found out that is because of wf-record wants you to select an monitor when are multiple connected:
Please select an output from the list to capture (enter output no.):
1. Name: eDP-1 Description: Chimei Innolux Corporation 0x1522 (eDP-1)
2. Name: DP-1 Description: LG Electronics LG ULTRAWIDE 304AZXC9U386 (DP-1)
Enter output no.:So I guess this fails eventually and I never get wf-recorder running so the script ended up not working.
For the time being I had this script that leverage hyprclt, gum, allacrity and a temp file to make it work for selecting an terminal. I use a custom smaller floating window that I have but I put the Omarchy class here if anyone want to use this
#!/bin/bash
[[ -f ~/.config/user-dirs.dirs ]] && source ~/.config/user-dirs.dirs
OUTPUT_DIR="${OMARCHY_SCREENRECORD_DIR:-${XDG_VIDEOS_DIR:-$HOME/Videos}}"
if [[ ! -d "$OUTPUT_DIR" ]]; then
mkdir -p "$OUTPUT_DIR"
notify-send "Screen recording directory created: $OUTPUT_DIR" -t 3000
fi
screenrecording() {
filename="$OUTPUT_DIR/screenrecording-$(date +'%Y-%m-%d_%H-%M-%S').mp4"
notify-send "Screen recording starting..." -t 1000
sleep 1
wf-recorder -f "$filename" -c libx264 -p crf=23 -p preset=medium -p movflags=+faststart "$@"
}
if pgrep -x wf-recorder >/dev/null; then
pkill -x wf-recorder
notify-send "Screen recording saved to $OUTPUT_DIR" -t 2000
exit 0
fi
temp_file=$(mktemp)
alacritty --class Omarchy -e bash -c "hyprctl monitors | grep 'Monitor' | awk '{print \$2}' | gum filter --placeholder 'Select a monitor...' --prompt 'Monitor: ' > \"$temp_file\""
selected_monitor=$(cat "$temp_file")
rm "$temp_file"
if [[ -n "$selected_monitor" ]]; then
# Start the recording on the selected monitor
screenrecording -o "$selected_monitor"
else
notify-send "Screen recording cancelled." -t 2000
exit 1
fiView raw text
As per the [OMARchy Manual](https://learn.omacom.io/2/the-omarchy-manual/53/hotkeys#screenrecordings), the hotkey for screen recording should be pressed a second time to stop the recording. This works correctly for 'record a specific area' (Alt + PrintScr). However, when attempting to stop a 'record the full monitor' session (Ctrl + Alt + PrintScr) I only see an notification saying that the record was started, but by pressing the hotkey again, a I see a new notification saying the same thing instead of the recording being stopped this causes so I never finish recording thus not saving any files, actually I checked btop if the process is running and it seems that is not. I tried to run the command in the terminal, because I thought that might be something crashing and worked fine, save the file and everything. I don't think that this can be a problem because it does start so should be recognize the input but I use fn + } as PrintScr button.
I did some digging and found out that is because of wf-record wants you to select an monitor when are multiple connected:
```
Please select an output from the list to capture (enter output no.):
1. Name: eDP-1 Description: Chimei Innolux Corporation 0x1522 (eDP-1)
2. Name: DP-1 Description: LG Electronics LG ULTRAWIDE 304AZXC9U386 (DP-1)
Enter output no.:
```
So I guess this fails eventually and I never get wf-recorder running so the script ended up not working.
For the time being I had this script that leverage hyprclt, gum, allacrity and a temp file to make it work for selecting an terminal. I use a custom smaller floating window that I have but I put the Omarchy class here if anyone want to use this
```bash
#!/bin/bash
[[ -f ~/.config/user-dirs.dirs ]] && source ~/.config/user-dirs.dirs
OUTPUT_DIR="${OMARCHY_SCREENRECORD_DIR:-${XDG_VIDEOS_DIR:-$HOME/Videos}}"
if [[ ! -d "$OUTPUT_DIR" ]]; then
mkdir -p "$OUTPUT_DIR"
notify-send "Screen recording directory created: $OUTPUT_DIR" -t 3000
fi
screenrecording() {
filename="$OUTPUT_DIR/screenrecording-$(date +'%Y-%m-%d_%H-%M-%S').mp4"
notify-send "Screen recording starting..." -t 1000
sleep 1
wf-recorder -f "$filename" -c libx264 -p crf=23 -p preset=medium -p movflags=+faststart "$@"
}
if pgrep -x wf-recorder >/dev/null; then
pkill -x wf-recorder
notify-send "Screen recording saved to $OUTPUT_DIR" -t 2000
exit 0
fi
temp_file=$(mktemp)
alacritty --class Omarchy -e bash -c "hyprctl monitors | grep 'Monitor' | awk '{print \$2}' | gum filter --placeholder 'Select a monitor...' --prompt 'Monitor: ' > \"$temp_file\""
selected_monitor=$(cat "$temp_file")
rm "$temp_file"
if [[ -n "$selected_monitor" ]]; then
# Start the recording on the selected monitor
screenrecording -o "$selected_monitor"
else
notify-send "Screen recording cancelled." -t 2000
exit 1
fi
```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.