diff mbox series

[bug#67120,4/4] gnu: Add jellyfin-mpv-shim.

Message ID 0fde32714a9364466cf2ea7bfeee7dec6257bc48.1699762188.git.ian@retrospec.tv
State New
Headers show
Series Add jellyfin-mpv-player and deps | expand

Commit Message

Ian Eure Nov. 12, 2023, 4:16 a.m. UTC
* gnu/packages/video.scm (jellyfin-mpv-shim): New variable.

Change-Id: I7c4aa48c96ab09b427d6f80f290f95f671ce41fd
---
 gnu/packages/video.scm | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
diff mbox series

Patch

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 68581301a2..66468e3dba 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -66,6 +66,7 @@ 
 ;;; Copyright © 2023 Ott Joon <oj@vern.cc>
 ;;; Copyright © 2023 Dominik Delgado Steuter <dds@disroot.org>
 ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
+;;; Copyright © 2023 Ian Eure <ian@retrospec.tv>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2406,6 +2407,46 @@  (define-public smplayer
 the last played position, etc.")
     (license license:gpl2+)))
 
+(define-public jellyfin-mpv-shim
+  (let ((desktop-base "jellyfin_mpv_shim/integration/")
+        (package-id "com.github.iwalton3.jellyfin-mpv-shim"))
+  (package
+    (name "python-jellyfin-mpv-shim")
+    (version "2.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "jellyfin-mpv-shim" version))
+       (sha256
+        (base32 "1cy2sfv84k5nw8bqy4aa7v0hdawp7gk5s7wq850xizqk0sz7cipp"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:tests? #f ;Disabled because they seem to boot the UI
+      #:phases #~(modify-phases %standard-phases
+                   (delete 'sanity-check) ;This also seems to boot the UI
+                   (add-after 'install 'install-desktop-file
+                     (lambda* (#:key outputs #:allow-other-keys)
+                       (let* ((out (assoc-ref outputs "out"))
+                              (apps (string-append out "/share/applications")))
+                         (install-file
+                          (string-append desktop-base package-id ".appdata.xml")
+                          apps)
+                         (install-file
+                          (string-append desktop-base package-id ".desktop")
+                          apps) #t))))))
+    (native-inputs (list xorg-server-for-tests))
+    (propagated-inputs (list `(,python "tk")
+                             python-jellyfin-apiclient
+                             python-mpv
+                             python-mpv-jsonipc
+                             python-pystray
+                             python-requests))
+    (home-page "https://github.com/jellyfin/jellyfin-mpv-shim")
+    (synopsis "Cast media from Jellyfin Mobile and Web apps to MPV")
+    (description "Cast media from Jellyfin Mobile and Web apps to MPV.")
+    (license license:gpl2))))
+
 (define-public gallery-dl
   (package
     (name "gallery-dl")