diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-20 11:56:11 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-20 11:56:11 +0200 |
| commit | e4f2082fa742611fb787f73d5ef5f046c77eab5d (patch) | |
| tree | e76fed77548b70670b682a8b9a98a4b0a3186676 /desktop/modules/status/README.md | |
| parent | dd8a4ee43c045230fa982c7ee49166f7c8c6529b (diff) | |
| download | quickshell-e4f2082fa742611fb787f73d5ef5f046c77eab5d.tar.gz quickshell-e4f2082fa742611fb787f73d5ef5f046c77eab5d.zip | |
feat(status): auto-present while DuckStation runs
Game detection probed only gamescope and Steam, so a standalone
DuckStation session never turned presentation on. Add a third probe for
the duckstation-qt process.
pgrep -x rather than the bracketed pgrep -f the Steam path needs: this
is an exact match on the process name, so it cannot match the sh running
the check, and the binary name is under the 15 character comm limit so
it is not truncated.
Diffstat (limited to 'desktop/modules/status/README.md')
| -rw-r--r-- | desktop/modules/status/README.md | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/desktop/modules/status/README.md b/desktop/modules/status/README.md index e043dcd..438ead8 100644 --- a/desktop/modules/status/README.md +++ b/desktop/modules/status/README.md @@ -102,14 +102,16 @@ edited from here; `breaktimer.sh config` prints what is in effect. Presentation is set automatically while a game runs, so a fullscreen game does not get locked or interrupted by the idle timer, DND or breaktimer. The shell -polls every five seconds for a `gamescope` process or a running Steam binary, -and either one is enough: +polls every five seconds for a `gamescope` process, a running Steam binary, or +DuckStation, and any one is enough: - pgrep -x gamescope || pgrep -f 'steamapps/commo[n]' + pgrep -x gamescope || pgrep -f 'steamapps/commo[n]' || pgrep -x duckstation-qt The steam pattern is bracketed so it cannot match the check's own command line: `pgrep -f` reads the whole argv, and a literal `steamapps/common` would -match the `sh` running the check and report a game forever. +match the `sh` running the check and report a game forever. `gamescope` and +`duckstation-qt` use `pgrep -x`, an exact match on the process name, which +cannot self-match. The result is written to `status.gaming`, a file separate from `status.presentation`, and presentation is the OR of the two. That separation |
