~ruther/guix-local

893c49f60c6dcd0b5ddcbc481a28abe5d79430d8 — Hilton Chain 10 months ago 86c6d39
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
1 files changed, 6 insertions(+), 5 deletions(-)

M gnu/packages/wm.scm
M gnu/packages/wm.scm => gnu/packages/wm.scm +6 -5
@@ 1925,9 1925,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")


@@ 1967,10 1964,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"))


@@ 1981,6 1981,7 @@ limited size and a few external dependencies.  It is configurable via
    (list pkg-config))
   (inputs
    (cons* clang
           dbus
           libdisplay-info
           libinput-minimal
           libseat