X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/77448857311318fc9cd866afcb85ca98fccdb25b..95bf2fb637ba4abb27efe94e0b671c1e93204e4f:/gnu/packages/libcanberra.scm diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm index 859740aaee..e7f4195ed4 100644 --- a/gnu/packages/libcanberra.scm +++ b/gnu/packages/libcanberra.scm @@ -1,6 +1,8 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014, 2015 Ludovic Courtès +;;; Copyright © 2016 Fabian Harfert +;;; Copyright © 2017, 2018 Nils Gillmann ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,10 +20,16 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages libcanberra) - #:use-module ((guix licenses) #:select (lgpl2.1+)) + #:use-module ((guix licenses) + #:select (lgpl2.1+ gpl2 gpl2+ cc-by-sa4.0 cc-by3.0)) + #:use-module (gnu packages) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) + #:use-module (guix build utils) + #:use-module (guix utils) #:use-module (gnu packages autotools) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -29,6 +37,7 @@ #:use-module (gnu packages linux) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages xiph)) (define-public libcanberra @@ -46,7 +55,21 @@ version ".tar.xz")) (sha256 (base32 - "0wps39h8rx2b00vyvkia5j40fkak3dpipp1kzilqla0cgvk73dn2")))) + "0wps39h8rx2b00vyvkia5j40fkak3dpipp1kzilqla0cgvk73dn2")) + ;; "sound-theme-freedesktop" is the default and fall-back sound theme for + ;; XDG desktops and should always be present. + ;; http://www.freedesktop.org/wiki/Specifications/sound-theme-spec/ + ;; We make sure libcanberra will find it. + ;; + ;; We add the default sounds store directory to the code dealing with + ;; XDG_DATA_DIRS and not XDG_DATA_HOME. This is because XDG_DATA_HOME + ;; can only be a single directory and is inspected first. XDG_DATA_DIRS + ;; can list an arbitrary number of directories and is only inspected + ;; later. This is designed to allows the user to modify any theme at + ;; his pleasure. + (patch-flags '("-p0")) + (patches + (search-patches "libcanberra-sound-theme-freedesktop.patch")))) (build-system gnu-build-system) (inputs `(("alsa-lib" ,alsa-lib) @@ -55,9 +78,21 @@ ("libltdl" ,libltdl) ("libvorbis" ,libvorbis) ("pulseaudio" ,pulseaudio) - ("udev" ,eudev))) + ("udev" ,eudev) + ("sound-theme-freedesktop" ,sound-theme-freedesktop))) (native-inputs `(("pkg-config" ,pkg-config))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'patch-default-sounds-directory + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/sound-theme-spec.c" + (("@SOUND_THEME_DIRECTORY@") + (string-append + (assoc-ref inputs "sound-theme-freedesktop") + "/share"))) + #t))))) (home-page "http://0pointer.de/lennart/projects/libcanberra/") (synopsis "Implementation of the XDG Sound Theme and Name Specifications") @@ -68,13 +103,19 @@ GNOME. It comes with several backends (ALSA, PulseAudio, OSS, GStreamer, null) and is designed to be portable.") (license lgpl2.1+))) +(define-public libcanberra/gtk+-2 + (package (inherit libcanberra) + (name "libcanberra-gtk2") + (inputs `(,@(alist-delete "gtk+" (package-inputs libcanberra)) + ("gtk+" ,gtk+-2))))) + (define-public sound-theme-freedesktop (package (name "sound-theme-freedesktop") (version "0.8") (source (origin (method url-fetch) - (uri (string-append "http://people.freedesktop.org/~mccann/dist/" + (uri (string-append "https://people.freedesktop.org/~mccann/dist/" name "-" version ".tar.bz2")) (sha256 (base32 @@ -85,5 +126,31 @@ null) and is designed to be portable.") (description "This package provides audio samples that can be used by libcanberra as sounds for various system events.") - (license #f) - (home-page "http://www.freedesktop.org/wiki/Specifications/sound-theme-spec/"))) + + ;; The license of the various sounds is given in the 'CREDITS' file. + (license (list cc-by-sa4.0 cc-by3.0 gpl2 gpl2+)) + + (home-page "https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/"))) + +(define-public python-pycanberra + (package + (name "python-pycanberra") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "http://ftp.n0.is/pub/releases/" + "pycanberra-" version ".tar.xz")) + (sha256 + (base32 + "16jjf8fcgaprmz6jacsxrh17l1ad891fns38bxv49lg3s3mn1nj2")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;No tests included. + (propagated-inputs + `(("libcanberra" ,libcanberra))) + (synopsis "Ctypes wrapper for the libcanberra API") + (description + "Pycanberra is a basic Python wrapper for libcanberra.") + (home-page "http://c.n0.is/ng0/pycanberra/") + (license lgpl2.1+)))