;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2020 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages video)
#:use-module (gnu packages vim) ;xxd
+ #:use-module (gnu packages web)
#:use-module (gnu packages webkit)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xiph)
(method git-fetch)
(uri
(git-reference
- (url "https://github.com/KhronosGroup/OpenSL-ES-Registry.git")
+ (url "https://github.com/KhronosGroup/OpenSL-ES-Registry")
(commit "ea5104bf37bf525c25e6ae2386586048179d0fda")))
(file-name (git-file-name name version))
(sha256
(method git-fetch)
(uri
(git-reference
- (url "https://github.com/Mindwerks/wildmidi.git")
+ (url "https://github.com/Mindwerks/wildmidi")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(method git-fetch)
(uri
(git-reference
- (url "https://github.com/tinyalsa/tinyalsa.git")
+ (url "https://github.com/tinyalsa/tinyalsa")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public libopenmpt
(package
(name "libopenmpt")
- (version "0.5.2")
+ (version "0.5.3")
(source
(origin
(method url-fetch)
(string-append "https://download.openmpt.org/archive/libopenmpt/src/"
"libopenmpt-" version "+release.autotools.tar.gz"))
(sha256
- (base32 "1cwpc4j90dpxa2siia68rg9qwwm2xk6bhxnslfjj364507jy6s4l"))))
+ (base32 "1f155yf5v57dwhzb7z0kh67lckr3yq4x8040dm54qgbxw582la77"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list (string-append "--docdir=" (assoc-ref %outputs "out")
- "/share/doc/" ,name "-" ,version))))
+ "/share/doc/" ,name "-" ,version))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'delete-static-libraries
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lib (string-append out "/lib")))
+ (for-each delete-file (find-files lib "\\.a$"))
+ #t))))))
(native-inputs
`(("doxygen" ,doxygen)
("perl" ,perl)
"audiofile-Fix-index-overflow-in-IMA.cpp.patch"
;; CVE-2017-6827, CVE-2017-6828, CVE-2017-6832, CVE-2017-6835,
;; CVE-2017-6837:
- "audiofile-Check-the-number-of-coefficients.patch"
+ "audiofile-check-number-of-coefficients.patch"
;; CVE-2017-6839:
- "audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch"
+ "audiofile-overflow-in-MSADPCM.patch"
;; CVE-2017-6830, CVE-2017-6834, CVE-2017-6836, CVE-2017-6838:
- "audiofile-Fix-multiply-overflow-sfconvert.patch"
- "audiofile-signature-of-multiplyCheckOverflow.patch"
+ "audiofile-multiply-overflow.patch"
+ "audiofile-function-signature.patch"
;; CVE-2017-6831:
"audiofile-Fail-on-error-in-parseFormat.patch"
;; CVE-2017-6833:
- "audiofile-division-by-zero-BlockCodec-runPull.patch"
+ "audiofile-division-by-zero.patch"
"audiofile-CVE-2018-13440.patch"
"audiofile-CVE-2018-17095.patch"))))
+ (properties `((lint-hidden-cve . ("CVE-2017-6829"
+
+ "CVE-2017-6827" "CVE-2017-6828"
+ "CVE-2017-6832" "CVE-2017-6835"
+ "CVE-2017-6837"
+
+ "CVE-2017-6839"
+
+ "CVE-2017-6830" "CVE-2017-6834"
+ "CVE-2017-6836" "CVE-2017-6838"
+
+ "CVE-2017-6831" "CVE-2017-6833"))))
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)))
`(("lv2" ,lv2)))
;; home-page of the original LADSPA version: http://quitte.de/dsp/caps.html
(home-page "https://github.com/moddevices/caps-lv2")
- (synopsis "LV2 port of the CAPS audio plugin colection")
+ (synopsis "LV2 port of the CAPS audio plugin collection")
(description
"LV2 port of CAPS, a collection of audio plugins comprising basic virtual
guitar amplification and a small range of classic effects, signal processors and
(define-public fluidsynth
(package
(name "fluidsynth")
- (version "2.1.4")
+ (version "2.1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "1r3khwyw57ybg5m4x0rvdzq7hgw2484sd52k6bm19akbw8yicfna"))))
+ "0ccpq4p1h1g53ng3961g3lh590qnwvpzwdzpl6ai4j6iazq0bh73"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no check target
(define-public guitarix
(package
(name "guitarix")
- (version "0.38.1")
+ (version "0.41.0")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "0bw7xnrx062nwb1bfj9x660h7069ncmz77szcs8icpqxrvhs7z80"))))
+ "0qsfbyrrpb3bbdyq68k28mjql7kglxh8nqcw9jvja28x6x9ik5a0"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
- #:python ,python-2
#:configure-flags
(list
;; Add the output lib directory to the RUNPATH.
- (string-append "--ldflags=-Wl,-rpath=" %output "/lib"))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-boost-includes
- (lambda _
- (substitute* "src/headers/gx_internal_plugins.h"
- (("namespace gx_jack" m)
- (string-append "#include <boost/noncopyable.hpp>\n" m)))
- (substitute* '("src/headers/gx_system.h"
- "src/headers/gx_parameter.h"
- "src/headers/gx_json.h")
- (("namespace gx_system" m)
- (string-append "#include <boost/noncopyable.hpp>\n" m)))
- #t)))))
+ (string-append "--ldflags=-Wl,-rpath=" %output "/lib"))))
(inputs
`(("libsndfile" ,libsndfile)
("boost" ,boost)
("lilv" ,lilv)
("ladspa" ,ladspa)
("jack" ,jack-1)
- ("gtkmm" ,gtkmm-2)
- ("gtk+" ,gtk+-2)
+ ("gtkmm" ,gtkmm)
+ ("gtk+" ,gtk+)
("fftwf" ,fftwf)
("lrdf" ,lrdf)
("zita-resampler" ,zita-resampler)
("faust" ,faust)
("intltool" ,intltool)
("gettext" ,gettext-minimal)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+ ("sassc" ,sassc)))
(native-search-paths
(list (search-path-specification
(variable "LV2_PATH")
(define-public jack-2
(package (inherit jack-1)
(name "jack2")
- (version "1.9.13")
+ (version "1.9.14")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jackaudio/jack2/releases/"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1d1d403jn4366mqig6g8ghr8057b3rn7gs26b5p3rkal34j20qw2"))))
+ "0z11hf55a6mi8h50hfz5wry9pshlwl4mzfwgslghdh40cwv342m2"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
(modify-phases %standard-phases
(add-before 'configure 'set-linkflags
(lambda _
+ ;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp
+ ;; will not link with undefined reference to symbol
+ ;; '__gxx_personality_v0@@CXXABI_1.3'
+ (setenv "LDFLAGS" "-lstdc++")
;; Add $libdir to the RUNPATH of all the binaries.
(substitute* "wscript"
((".*CFLAGS.*-Wall.*" m)
(define-public qjackctl
(package
(name "qjackctl")
- (version "0.5.9")
+ (version "0.6.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
- "1saywsda9m124rmjp7i3n0llryaliabjxhqhvqr6dm983qy7pypk"))))
+ "0zbb4jlx56qvcqyhx34mbagkqf3wbxgj84hk0ppf5cmcrxv67d4x"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
(inputs
`(("jack" ,jack-1)
("alsa-lib" ,alsa-lib)
+ ("portaudio" ,portaudio)
("qtbase" ,qtbase)
("qtx11extras" ,qtx11extras)))
(native-inputs
(description "This package contains the @command{resample} and
@command{windowfilter} command line utilities. The @command{resample} command
allows changing the sampling rate of a sound file, while the
-@command{windowfilter} command allows to design Finite Impulse Response (FIR)
+@command{windowfilter} command allows designing Finite Impulse Response (FIR)
filters using the so-called @emph{window method}.")
(home-page "https://ccrma.stanford.edu/~jos/resample/Free_Resampling_Software.html")
(license license:lgpl2.1+)))
Suil currently supports every combination of Gtk, Qt, and X11.")
(license license:isc)))
+(define-public libebur128
+ (package
+ (name "libebur128")
+ (version "1.2.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jiixyj/libebur128")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n81rnm8dm1zmibkr2v3q79rsd609y0dbbsrbay18njcjva88p0g"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(;; Tests require proprietary .wav files. See
+ ;; https://github.com/jiixyj/libebur128/issues/82.
+ #:tests? #f
+ #:configure-flags '("-DBUILD_STATIC_LIBS=OFF")))
+ (home-page "https://github.com/jiixyj/libebur128")
+ (synopsis "Library implementing the EBU R 128 loudness standard")
+ (description
+ "@code{libebur128} is a C library that implements the EBU R 128 standard
+for loudness normalisation.")
+ (license license:expat)))
+
(define-public timidity++
(package
(name "timidity++")
(define-public soundtouch
(package
(name "soundtouch")
- (version "2.1.2")
+ (version "2.2")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "174wgm3s0inmbnkrlnspxjwm2014qhjhkbdqa5r8rbfi0nzqxzsz"))))
+ (base32 "12i6yg8vvqwyk412lxl2krbfby6hnxld8qxy0k4m5xp4g94jiq4p"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
- "/qsynth-" version ".tar.gz"))
+ (uri (list
+ (string-append "mirror://sourceforge/qsynth/qsynth/" version
+ "/qsynth-" version ".tar.gz")
+ (string-append "mirror://sourceforge/qsynth/qsynth (attic)"
+ "/qsynth-" version ".tar.gz")))
(sha256
(base32 "18im4w8agj60nkppwbkxqnhpp13z5li3w30kklv4lgs20rvgbvl6"))))
(build-system gnu-build-system)
(version "3.0.10")
(source (origin
(method url-fetch)
- (uri (string-append "http://etree.org/shnutils/shntool/dist/src/"
- "shntool-" version ".tar.gz"))
+ (uri (list
+ (string-append "http://etree.org/shnutils/shntool/dist/src/"
+ "shntool-" version ".tar.gz")
+ (string-append "mirror://debian/pool/main/s/shntool/shntool_"
+ version ".orig.tar.gz")))
(sha256
(base32
"00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l"))))
(build-system gnu-build-system)
(arguments
;; Test files are missing: https://github.com/foo86/dcadec/issues/53
- '(#:tests? #f
+ `(#:tests? #f
#:make-flags
- (list "CC=gcc"
+ (list (string-append "CC=" ,(cc-for-target))
;; Build shared library.
"CONFIG_SHARED=1"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
"0hbb290n3wb23f2k692a6bhc23nnqmxqi9sc9j15pnya8wifw64g"))))
(build-system gnu-build-system)
(arguments
- '(#:make-flags (list (string-append "PREFIX=" %output)
- "CC=gcc")
+ `(#:make-flags (list (string-append "PREFIX=" %output)
+ (string-append "CC=" ,(cc-for-target)))
#:tests? #f ; No tests
#:phases
(modify-phases %standard-phases
(define-public python2-pyalsaaudio
(package-with-python2 python-pyalsaaudio))
+(define-public ldacbt
+ (package
+ (name "ldacbt")
+ (version "2.0.2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/EHfive/ldacBT"
+ "/releases/download/v" version
+ "/ldacBT-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d65dms4klzql29abi15i90f41h523kl6mxrz9hi6p5vg37fxn2b"))))
+ (build-system cmake-build-system)
+ (arguments `(#:tests? #f)) ; no check target
+ (home-page "https://github.com/EHfive/ldacBT/")
+ (synopsis "LDAC Bluetooth encoder and ABR library")
+ (description "This package provides an encoder for the LDAC
+high-resolution Bluetooth audio streaming codec for streaming at up to 990
+kbps at 24 bit/96 kHz.")
+ (license license:asl2.0)))
+
(define-public bluez-alsa
(package
(name "bluez-alsa")
- (version "2.0.0")
+ (version "3.0.0")
(source (origin
;; The tarballs are mere snapshots and don't contain a
;; bootstrapped build system.
(file-name (git-file-name name version))
(sha256
(base32
- "08mppgnjf1j2733bk9yf0cny6rfxxwiys0s62lz2zd2lpdl6d9lz"))))
+ "1jlsgxyqfhncfhx1sy3ry0dp6p95kd4agh7g2b7g51h0c4cv74h8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
- (list (string-append "--with-alsaplugindir="
+ (list "--enable-ldac"
+ (string-append "--with-alsaplugindir="
(assoc-ref %outputs "out")
"/lib/alsa-lib")
(string-append "--with-dbusconfdir="
("bluez" ,bluez)
("dbus" ,dbus)
("glib" ,glib)
+ ("ldacbt" ,ldacbt)
("libbsd" ,libbsd)
("ncurses" ,ncurses)
("ortp" ,ortp)
(define-public snd
(package
(name "snd")
- (version "20.6")
+ (version "20.9")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
- "1h4dsq5xcvwjbnayhn719cln0lg199w3xm59sl9d2jz8bq78gqgj"))))
+ "0jxkycxn6jcbs4gklk9sk3gfr0y26dz1m71nxah9rnx80wnzj6hr"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
(home-page "http://tausoft.org/")
(license license:gpl2+)))
+(define-public libsoundio
+ (package
+ (name "libsoundio")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/andrewrk/libsoundio")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f)) ;no tests included
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("jack" ,jack-1)
+ ("pulseaudio" ,pulseaudio)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://libsound.io")
+ (synopsis "C library for real-time audio input and output")
+ (description "@code{libsoundio} is a C library providing audio input and
+output. The API is suitable for real-time software such as digital audio
+workstations as well as consumer software such as music players.")
+ (license license:expat)))
+
(define-public redkite
(package
(name "redkite")
- (version "0.8.1")
+ (version "1.0.3")
(source
(origin
(method git-fetch)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "17kv2jc4jvn3sdicz3sf8dnf25wbvv7ijzkr0mm0sbrrjz6vrwz0"))))
+ (base32 "1m2db7c791fi33snkjwnvlxapmf879g5r8azlkx7sr6vp2s0jq2k"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;no tests included
(inputs
`(("cairo" ,cairo)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Small GUI toolkit")
(description "Redkite is a small GUI toolkit developed in C++17 and
inspired from other well known GUI toolkits such as Qt and GTK. It is
(define-public libaudec
(package
(name "libaudec")
- (version "0.2.2")
+ (version "0.2.4")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "04mpmfmqc43asw0m3zxhb6jj4qms7x4jw7mx4xb1d3lh16xllniz"))))
+ "1570m2dfia17dbkhd2qhx8jjihrpm7g8nnyg6n4wif4vv229s7dz"))))
(build-system meson-build-system)
(arguments
- `(#:configure-flags `("-Denable_tests=true -Denable_ffmpeg=true")))
+ `(#:meson ,meson-0.55
+ #:configure-flags
+ ;; Build the tests.
+ `("-Dtests=true")))
(inputs
`(("libsamplerate" ,libsamplerate)
- ("libsndfile" ,libsndfile)
- ("ffmpeg" ,ffmpeg)))
+ ("libsndfile" ,libsndfile)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Library for reading and resampling audio files")
(description "libaudec is a wrapper library over ffmpeg, sndfile and
libsamplerate for reading and resampling audio files, based on Robin Gareus'
(define-public lv2lint
(package
(name "lv2lint")
- (version "0.4.0")
+ (version "0.8.0")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "1pspwqpzl2dw1hd9ra9yr53arqbbqjn7d7j0f7p9g3iqa76vblpi"))))
+ "1jrka0hsn4n1clri7zfkcl3c2vi52144lkpjm81l51ff8rqy8ks1"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
`("-Delf-tests=true" ; for checking symbol visibility
"-Donline-tests=true"))) ; for checking URI existence
(inputs
- `(("curl", curl)
- ("libelf", libelf)
- ("lilv", lilv)))
+ `(("curl" ,curl)
+ ("libelf" ,libelf)
+ ("lilv" ,lilv)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "LV2 plugin lint tool")
(description "lv2lint is an LV2 lint-like tool that checks whether a
given plugin and its UI(s) match up with the provided metadata and adhere
(modify-phases %standard-phases
(delete 'configure))))
(inputs
- `(("jalv", jalv)
- ("lilv", lilv)))
+ `(("jalv" ,jalv)
+ ("lilv" ,lilv)))
(native-inputs
- `(("help2man", help2man)
- ("pkg-config", pkg-config)))
+ `(("help2man" ,help2man)
+ ("pkg-config" ,pkg-config)))
(synopsis "Documentation generator for LV2 plugins")
(description
"lv2toweb allows the user to create an xhtml page with information
,@(package-inputs ztoolkit)))
(synopsis "ZToolkit with SVG support")))
+(define-public lsp-dsp-lib
+ (package
+ (name "lsp-dsp-lib")
+ (version "0.5.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/sadko4u/lsp-dsp-lib/"
+ "releases/download/lsp-dsp-lib-" version
+ "/lsp-dsp-lib-" version "-src.tar.gz"))
+ (sha256
+ (base32
+ "07w3d2i0z0xmvi1ngcgs7lc5a0da8jvf7rv4dnjk01md43b7fkh1"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no tests
+ #:make-flags
+ (list (string-append "CC=" ,(cc-for-target)))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (invoke "make" "config"
+ (string-append "PREFIX=" (assoc-ref outputs "out"))))))))
+ (home-page "https://github.com/sadko4u/lsp-dsp-lib")
+ (synopsis "Digital signal processing library")
+ (description "The LSP DSP library provides a set of functions that perform
+SIMD-optimized computing on several hardware architectures. All functions
+currently operate on IEEE-754 single-precision floating-point numbers.")
+ (license license:lgpl3+)))
+
(define-public codec2
(package
(name "codec2")