diff mbox series

[bug#70516] gnu: Add libgpod.

Message ID 569f457d71cc55c751fbd3958fb11870cad46d9b.1713809874.git.sarg@sarg.org.ru
State New
Headers show
Series [bug#70516] gnu: Add libgpod. | expand

Commit Message

Sergey Trofimov April 22, 2024, 6:24 p.m. UTC
* gnu/packages/music.scm (libgpod): New variable.
(clementine)[inputs]: Make use of it.
---
 gnu/packages/music.scm | 55 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 54 insertions(+), 1 deletion(-)


base-commit: 02df0a8a7d4712398d90f8635d4004e76bbc9f51
prerequisite-patch-id: f9cc903b8048c8c6fde576fbf38ab110263020e3
prerequisite-patch-id: aba438a3c32ef44149bbc749c1e0b89d00006b3e
prerequisite-patch-id: 1bcd992c56c1b094479b842032fc9731315cbf83
prerequisite-patch-id: 500c43ab90039ca164d6b0864adb110bd9bd9afe
prerequisite-patch-id: f7629448294f448f1914d9bc50a4136a05b77c03
diff mbox series

Patch

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index df3ff38b4a..94f4da95ab 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -182,6 +182,7 @@  (define-module (gnu packages music)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages rsync)
   #:use-module (gnu packages ruby)
+  #:use-module (gnu packages scsi)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages sphinx)
@@ -430,6 +431,58 @@  (define-public aria-maestosa
 score, keyboard, guitar, drum and controller views.")
     (license license:gpl3+)))
 
+(define-public libgpod
+  (package
+    (name "libgpod")
+    (version "0.8.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://git.code.sf.net/p/gtkpod/libgpod")
+             (commit "8dc5015ae036b219c4c9579a156886aa3a722aa5")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1yzngb7h1mibz4x56w9fh02vx8xi4wyq4fjc3ad0jayv3hxjjkqv"))))
+    (arguments
+     (list
+      #:configure-flags
+      #~(list
+         "--without-hal"
+         "--enable-udev"
+         (string-append "--with-udev-dir=" #$output "/lib/udev")
+         (string-append "--prefix=" #$output))
+
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-autotools-version-requirement
+            (lambda _
+              (setenv "ACLOCAL_FLAGS"
+                      (string-join
+                       (map (lambda (s) (string-append "-I " s))
+                            (string-split (getenv "ACLOCAL_PATH") #\:))
+                       " "))
+              (substitute* "configure.ac"
+                (("libplist >= 1\\.0") "libplist-2.0 >= 2.2")
+                (("-Werror") ""))
+              ;; patch for plist-2.0
+              (substitute* "tools/ipod-lockdown.c"
+                (("plist_dict_insert_item") "plist_dict_set_item"))
+              ;; it expects version-suffixed binary
+              (substitute* "gnome-autogen.sh"
+                (("automake-1\\.13") "automake")))))))
+
+    (build-system gnu-build-system)
+    (native-inputs
+     (list automake libtool autoconf intltool pkg-config `(,glib "bin") gtk-doc))
+    (propagated-inputs (list libimobiledevice))
+    (inputs (list libxml2 sg3-utils sqlite taglib libplist gdk-pixbuf))
+    (home-page "https://sourceforge.net/projects/gtkpod")
+    (synopsis "Library to access iPod contents")
+    (description "Library to access iPod contents.  Enables iPod support in
+@code{Clementine}.")
+    (license license:lgpl2.1+)))
+
 (define-public clementine
   (package
     (name "clementine")
@@ -511,7 +564,7 @@  (define-public clementine
            gst-libav
            libcdio
            libmygpo-qt
-           ;; TODO: Package libgpod.
+           libgpod
            libmtp
            libxml2
            protobuf