Subject: [bug#68044] [PATCH v2] gnu: mpv-mpris: Fix build.

From: Josselin Poiret <[email-masked]>
Date: Wed, 27 Dec 2023 11:15:22 +0100

From: Josselin Poiret <[email-masked]>

* gnu/packages/video.scm (mpv-mpris): Use gnu-build-system again.  Include
mpv's required dependencies now that its pkg-config file requires them.  Run
tests.

Change-Id: I9de4ade633388ec42ac30019feb133ca98811ad9
---

Hi Zheng,

Thanks for the speedy review!  Good catches, seems I've been slacking off too
much… Here is an updated patch.

Best,

 gnu/packages/video.scm | 41 ++++++++++++++++++++++++++++++-----------
 1 file changed, 30 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 6da4897a57..25004155f0 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -154,6 +154,7 @@ (define-module (gnu packages video)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages iso-codes)
+  #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
@@ -2511,20 +2512,38 @@ (define-public mpv-mpris
         (file-name (git-file-name name version))
         (sha256
          (base32 "1384y8n3l0xk8hbad1nsj9ljzb1h02g3ln3jysd8bd6shbl0x4mx"))))
-    (build-system copy-build-system)
+    (build-system gnu-build-system)
     (arguments
-     '(#:install-plan
-       '(("mpris.so" "lib/"))
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'install 'build
-           (lambda _
-             (setenv "CC" (which "gcc"))
-             (invoke "make"))))))
+     (list
+      #:make-flags
+      #~(list (string-append "SCRIPTS_DIR=" #$output "/lib")
+              (string-append "CC=" #$(cc-for-target)))
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure)
+          (replace 'check
+            (lambda* (#:key inputs native-inputs tests? #:allow-other-keys)
+              (if tests?
+                  (begin
+                    (setenv
+                     "MPV_MPRIS_TEST_PLAY"
+                     (search-input-file
+                      (or native-inputs inputs)
+                      "/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga"))
+                    (invoke "make" "test"))
+                  (format #t "test suite not run~%")))))))
     (native-inputs
-     (list pkg-config))
+     (list pkg-config
+           dbus
+           jq
+           playerctl
+           socat
+           sound-theme-freedesktop
+           xorg-server-for-tests
+           xvfb-run))
     (inputs
-     (list ffmpeg glib mpv))
+     (modify-inputs (package-inputs mpv)
+       (prepend ffmpeg glib mpv)))
     (home-page "https://github.com/hoyon/mpv-mpris")
     (synopsis "MPRIS plugin for mpv")
     (description "This package provides an @dfn{MPRIS} (Media Player Remote

base-commit: 5bd80ccd69047b1777749e24d4adf2c951b5d14b
-- 
2.41.0