diff options
author | Hilton Chain <hako@ultrarare.space> | 2025-06-20 14:38:00 +0800 |
---|---|---|
committer | Hilton Chain <hako@ultrarare.space> | 2025-07-29 21:32:24 +0800 |
commit | f523cad8b0b79c1ad1623927faa01eca0ed8addd (patch) | |
tree | 09d87c6e5ff41dab430cd7d4e18c62dd7ee8bcf7 | |
parent | 8ac93a460a57cd1a1d5d5d8bac36e959b62eb92a (diff) |
gnu: niri: Use dbus-run-session.
This change fixes screencasting.
* gnu/packages/wm.scm (niri)[inputs]: Add dbus.
[#:phases]<install-extras>: Use dbus-run-session in niri.desktop.
Change-Id: I196c25a4b37ee8a6aae3ab17ef127596e199324f
-rw-r--r-- | gnu/packages/wm.scm | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index eba34700d8..2e419395f1 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -1927,9 +1927,6 @@ limited size and a few external dependencies. It is configurable via ;; LICENSE LICENSE.dwm LICENSE.tinywl (license (list license:gpl3+ license:expat license:cc0)))) -;; FIXME: xdg-desktop-portal-gnome integration (screencasting) is not working. -;; Only packages using the ‘wlr-screencopy’ protocol (e.g. wf-recorder, -;; obs with obs-wlrobs) are working. (define-public niri (package (name "niri") @@ -1969,10 +1966,13 @@ limited size and a few external dependencies. It is configurable via ;; For tests. (setenv "XDG_RUNTIME_DIR" "/tmp"))) (add-after 'install 'install-extras - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) (substitute* "resources/niri.desktop" (("niri-session") - (string-append #$output "/bin/niri --session"))) + (format #f "~a --dbus-daemon=~a ~a/bin/niri --session" + (search-input-file inputs "bin/dbus-run-session") + (search-input-file inputs "bin/dbus-daemon") + #$output))) (install-file "resources/niri.desktop" (in-vicinity #$output "share/wayland-sessions")) @@ -1983,6 +1983,7 @@ limited size and a few external dependencies. It is configurable via (list pkg-config)) (inputs (cons* clang + dbus libdisplay-info libinput-minimal libseat |