From 7a6456c0c2203e43797f02a8198817de6739903f Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Thu, 11 Jun 2020 04:13:59 -0400 Subject: [PATCH 29/54] gnu: Add libvisual. * gnu/packages/gstreamer.scm (libvisual): New variable. --- gnu/packages/gstreamer.scm | 68 ++++++++++++++++++++++++++++++-------- 1 file changed, 55 insertions(+), 13 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 6b78fc8d28..3d4b3bc7fb 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -29,6 +29,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix utils) @@ -63,6 +64,7 @@ #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) #:use-module (gnu packages rdf) + #:use-module (gnu packages sdl) #:use-module (gnu packages video) #:use-module (gnu packages xorg) #:use-module (gnu packages xiph) @@ -75,6 +77,46 @@ #:use-module (gnu packages assembly) #:use-module (gnu packages xml)) +(define-public libvisual + (package + (name "libvisual") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/Libvisual/libvisual.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02xwakwkqjsznc03pjlb6hcv1li1gw3r8xvyswqsm4msix5xq18a")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; The package is in a sub-dir of this repo. + (add-after 'unpack 'chdir + (lambda _ + (chdir "libvisual") + #t))))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("libintl" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("sdl" ,sdl))) ; To compile some examples and/or tests + (synopsis "Audio visualisation library") + (description "Libvisual is a library that acts as a middle layer between +applications that want audio visualisation and audio visualisation plugins.") + (home-page "http://libvisual.org/") + (license + (list + ;; Libraries. + license:lgpl2.1+ + ;; Examples and Tests. + license:gpl2+)))) + (define-public orc (package (name "orc") @@ -197,16 +239,16 @@ processing.") (version "1.16.2") (source (origin - (method url-fetch) - (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) + (method url-fetch) + (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) (build-system meson-build-system) (propagated-inputs - `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc - ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc + `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc + ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc ;; XXX: Do not enable Orc optimizations on ARM systems because ;; it leads to two test failures. @@ -214,7 +256,7 @@ processing.") ,@(if (string-prefix? "arm" (or (%current-target-system) (%current-system))) '() - `(("orc" ,orc))))) ;required by gstreamer-audio-1.0.pc + `(("orc" ,orc))))) ;required by gstreamer-audio-1.0.pc (inputs `(("cdparanoia" ,cdparanoia) ("pango" ,pango) @@ -232,10 +274,10 @@ processing.") `(("opus" ,opus)) '()))) (native-inputs - `(("pkg-config" ,pkg-config) - ("glib:bin" ,glib "bin") - ("gobject-introspection" ,gobject-introspection) - ("python-wrapper" ,python-wrapper))) + `(("pkg-config" ,pkg-config) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("python-wrapper" ,python-wrapper))) (arguments '(#:configure-flags '("-Dgl=disabled" ;; FIXME: Documentation fails to build without -- 2.26.2