aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2020-07-25 10:37:16 +0200
committerMarius Bakke <marius@gnu.org>2020-07-25 18:47:57 +0200
commit07dbdbd766760ce0121c1ac96fee766135fe7320 (patch)
tree8de5e8d0f0f37f0eacfdb19238543030f3c9d70e
parent581b37c866f92b834627fd273e5f868065a97840 (diff)
downloadguix-07dbdbd766760ce0121c1ac96fee766135fe7320.tar.gz
guix-07dbdbd766760ce0121c1ac96fee766135fe7320.zip
gnu: beets: Support replaygain plugin.
* gnu/packages/music.scm (beets)[arguments]: Add 'wrap-typelib phase. [inputs]: Add gstreamer, gst-plugins-base, gst-plugins-good, gobject-introspection and python-pygobject. Signed-off-by: Marius Bakke <marius@gnu.org>
-rw-r--r--gnu/packages/music.scm22
1 files changed, 20 insertions, 2 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index a7e48b3ebb..31b13947a0 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3023,7 +3023,19 @@ websites such as Libre.fm.")
#t))
(replace 'check
(lambda _
- (invoke "nosetests" "-v"))))))
+ (invoke "nosetests" "-v")))
+ ;; Wrap the executable, so it can find python-gi (aka pygobject) and
+ ;; gstreamer plugins.
+ (add-after 'wrap 'wrap-typelib
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((prog (string-append (assoc-ref outputs "out")
+ "/bin/beet"))
+ (plugins (getenv "GST_PLUGIN_SYSTEM_PATH"))
+ (types (getenv "GI_TYPELIB_PATH")))
+ (wrap-program prog
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,plugins))
+ `("GI_TYPELIB_PATH" ":" prefix (,types)))
+ #t))))))
(native-inputs
`(("python-beautifulsoup4" ,python-beautifulsoup4)
("python-flask" ,python-flask)
@@ -3044,7 +3056,13 @@ websites such as Libre.fm.")
("python-mutagen" ,python-mutagen)
("python-pyacoustid" ,python-pyacoustid)
("python-pyyaml" ,python-pyyaml)
- ("python-unidecode" ,python-unidecode)))
+ ("python-unidecode" ,python-unidecode)
+ ;; For plugin replaygain.
+ ("python-pygobject" ,python-pygobject)
+ ("gobject-introspection" ,gobject-introspection)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-good" ,gst-plugins-good)
+ ("gstreamer" ,gstreamer)))
(home-page "https://beets.io")
(synopsis "Music organizer")
(description "The purpose of beets is to get your music collection right