AvengeMedia / AvengeMedia/dms-plugins
Action to Start/Stop Screen Recording
- Dominant language
- QML
- Stars
- 84
- Forks
- 25
- Avg merge
- 17h 11m
- Merged PRs (30d)
- 1
Description
Hi, thanks for the quickshell and plugins. I've been trying to add a widget action to the main bar that starts and stops screen recording with `wl-screenrec`, something like noctalia shell's.
## Steps to Reproduce
1. dependencies: `wl-screenrec`, `slurp`, `notify-desktop`, `killall`
1. create a file `~/record.sh` with the following:
```sh
#! /usr/bin/env bash
RECORDER=wl-screenrec
if [[ $(ps -A|grep $RECORDER) ]] then
killall $RECORDER
notify-desktop "Stopped Screen Recording" -a $RECORDER
else
AREA=$(slurp)
notify-desktop "Started Screen Recording" -a $RECORDER
OUT="$(date -Iminutes|sed 's/[:+-]//g').mp4"
$RECORDER -f "$OUT" -g "$AREA" &
fi
```
1. make executable: `chmod +x ~/record.sh`.
1. add the script to the left click hook of the Dank Action plugin.
1. add the action to the main bar.
1. clicking the added widget does nothing.
1. reloading the plugin suddenly triggers `slurp`, but no recording or notification is created.
## System Details
- NixOS 25.11
- Niri 25.08
- DMS 0.6.2
- Dank Action 8715ca3
Contributor guide
Research direction
Start with the Dank Action plugin's left-click hook and the main-bar action wiring, then reproduce the steps with ~/record.sh and the listed dependencies. Done means clicking the widget starts and stops wl-screenrec, shows the corresponding notification, and does not defer execution until the plugin reloads.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- shell
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100