;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; 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 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
+;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system trivial)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
+ #:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages emacs)
#:use-module (gnu packages file)
#:use-module (gnu packages flex)
#:use-module (gnu packages fltk)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
+ #:use-module (gnu packages gnunet) ; libmicrohttpd
#:use-module (gnu packages gperf)
#:use-module (gnu packages image)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages libbsd)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages llvm)
#:use-module (gnu packages mp3) ;taglib
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages telephony)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages video)
+ #:use-module (gnu packages vim) ;xxd
#:use-module (gnu packages webkit)
+ #:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
- #:use-module (gnu packages zip)
- #:use-module (srfi srfi-1))
+ #:use-module (gnu packages maths)
+ #:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages music)
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26))
(define-public alsa-modular-synth
(package
(define-public ardour
(package
(name "ardour")
- (version "5.3")
+ (version "5.12")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "git://git.ardour.org/ardour/ardour.git")
+ (url "https://git.ardour.org/ardour/ardour.git")
(commit version)))
(snippet
;; Ardour expects this file to exist at build time. The revision
;; is the output of
;; git describe HEAD | sed 's/^[A-Za-z]*+//'
- '(call-with-output-file
+ `(call-with-output-file
"libs/ardour/revision.cc"
(lambda (port)
- (format port "#include \"ardour/revision.h\"
-namespace ARDOUR { const char* revision = \"5.3\" ; }"))))
+ (format port ,(string-append "#include \"ardour/revision.h\"
+namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
(sha256
(base32
- "0xdyc3syxg4drg7rafadhlrn6nycg169ay6q5xhga19kcwy6qmqm"))
+ "0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"))
(file-name (string-append name "-" version))))
(build-system waf-build-system)
(arguments
`(#:configure-flags '("--cxx11" ; required by gtkmm
- "--no-phone-home") ; don't contact ardour.org
+ "--no-phone-home" ; don't contact ardour.org
+ "--freedesktop" ; install .desktop file
+ "--test") ; build unit tests
#:phases
(modify-phases %standard-phases
(add-after
'unpack 'set-rpath-in-LDFLAGS
- ,(ardour-rpath-phase (version-prefix version 1))))
- #:tests? #f ; no check target
+ ,(ardour-rpath-phase (version-major version))))
+ #:test-target "test"
#:python ,python-2))
(inputs
`(("alsa-lib" ,alsa-lib)
("boost" ,boost)
("atkmm" ,atkmm)
("cairomm" ,cairomm)
+ ("eudev" ,eudev)
("gtkmm" ,gtkmm-2)
("glibmm" ,glibmm)
("libart-lgpl" ,libart-lgpl)
("readline" ,readline)
("redland" ,redland)
("rubberband" ,rubberband)
+ ("libarchive" ,libarchive)
("taglib" ,taglib)
("python-rdflib" ,python-rdflib)))
(native-inputs
`(("perl" ,perl)
("cppunit" ,cppunit)
+ ("itstool" ,itstool)
+ ("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(home-page "http://ardour.org")
(synopsis "Digital audio workstation")
engineers, musicians, soundtrack editors and composers.")
(license license:gpl2+)))
+(define-public audacity
+ (package
+ (name "audacity")
+ (version "2.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/audacity/audacity/archive"
+ "/Audacity-" version ".tar.gz"))
+ (sha256
+ (base32 "09xpr4bjnainz1xmc35v3qg3dadjr9wv8bmn1p4y91aqyihnhjry"))
+ (patches (search-patches "audacity-build-with-system-portaudio.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; Remove bundled libraries.
+ '(begin
+ (for-each
+ (lambda (dir)
+ (delete-file-recursively (string-append "lib-src/" dir)))
+ '("expat" "ffmpeg" "libflac" "libid3tag" "libmad" "libogg"
+ "libsndfile" "libsoxr" "libvamp" "libvorbis" "lv2"
+ "portaudio-v19" "portmidi" "soundtouch" "twolame"
+ ;; FIXME: these libraries have not been packaged yet:
+ ;; "libnyquist"
+ ;; "libscorealign"
+ ;; "libwidgetextra"
+ ;; "portburn"
+ ;; "portsmf"
+ ;; "portmixer"
+
+ ;; FIXME: we have this library, but it differs in that the Slide
+ ;; class does not have a member "getInverseStretchedTime".
+ ;; "sbsms"
+ ))
+ #t))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("wxwidgets" ,wxwidgets)
+ ("gtk" ,gtk+)
+ ("alsa-lib" ,alsa-lib)
+ ("jack" ,jack-1)
+ ("expat" ,expat)
+ ("ffmpeg" ,ffmpeg)
+ ("lame" ,lame)
+ ("flac" ,flac)
+ ("libid3tag" ,libid3tag)
+ ("libmad" ,libmad)
+ ;;("libsbsms" ,libsbsms) ;bundled version is modified
+ ("libsndfile" ,libsndfile)
+ ("soundtouch" ,soundtouch)
+ ("soxr" ,soxr) ;replaces libsamplerate
+ ("twolame" ,twolame)
+ ("vamp" ,vamp)
+ ("libvorbis" ,libvorbis)
+ ("lv2" ,lv2)
+ ("lilv" ,lilv) ;for lv2
+ ("suil" ,suil) ;for lv2
+ ("portaudio" ,portaudio)
+ ("portmidi" ,portmidi)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("gettext" ,gettext-minimal) ;for msgfmt
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-2)
+ ("which" ,which)))
+ (arguments
+ `(#:configure-flags
+ (let ((libid3tag (assoc-ref %build-inputs "libid3tag"))
+ (libmad (assoc-ref %build-inputs "libmad"))
+ (portmidi (assoc-ref %build-inputs "portmidi")))
+ (list
+ ;; Loading FFmpeg dynamically is problematic.
+ "--disable-dynamic-loading"
+ ;; SSE instructions are available on Intel systems only.
+ ,@(if (any (cute string-prefix? <> (or (%current-target-system)
+ (%current-system)))
+ '("x64_64" "i686"))
+ '()
+ '("--enable-sse=no"))
+ ;; portmidi, libid3tag and libmad provide no .pc files, so
+ ;; pkg-config fails to find them. Force their inclusion.
+ (string-append "ID3TAG_CFLAGS=-I" libid3tag "/include")
+ (string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
+ (string-append "LIBMAD_CFLAGS=-I" libmad "/include")
+ (string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")
+ (string-append "PORTMIDI_CFLAGS=-I" portmidi "/include")
+ (string-append "PORTMIDI_LIBS=-L" portmidi "/lib -lportmidi")
+ "EXPAT_USE_SYSTEM=yes"
+ "FFMPEG_USE_SYSTEM=yes"
+ "LAME_USE_SYSTEM=yes"
+ "LIBFLAC_USE_SYSTEM=yes"
+ "LIBID3TAG_USE_SYSTEM=yes"
+ "LIBMAD_USE_SYSTEM=yes"
+ "USE_LOCAL_LIBNYQUIST=" ;not packaged yet
+ ;;"LIBSBSMS_USE_SYSTEM=yes" ;bundled version is patched
+ "LIBSNDFILE_USE_SYSTEM=yes"
+ "LIBSOUNDTOUCH_USE_SYSTEM=yes"
+ "LIBSOXR_USE_SYSTEM=yes"
+ "LIBTWOLAME_USE_SYSTEM=yes"
+ "LIBVAMP_USE_SYSTEM=yes"
+ "LIBVORBIS_USE_SYSTEM=yes"
+ "LV2_USE_SYSTEM=yes"
+ "PORTAUDIO_USE_SYSTEM=yes"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-sbsms-check
+ (lambda _
+ ;; This check is wrong: there is no 2.2.0 release; not even the
+ ;; bundled sources match this release string.
+ (substitute* '("m4/audacity_checklib_libsbsms.m4"
+ "configure")
+ (("sbsms >= 2.2.0") "sbsms >= 2.0.0"))
+ #t))
+ (add-after 'unpack 'use-upstream-headers
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("src/NoteTrack.cpp"
+ "src/AudioIO.cpp"
+ "src/AudioIO.h")
+ (("../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h")
+ (("../lib-src/portmidi/porttime/porttime.h") "porttime.h"))
+ (substitute* "src/prefs/MidiIOPrefs.cpp"
+ (("../../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h"))
+ #t)))
+ ;; The test suite is not "well exercised" according to the developers,
+ ;; and fails with various errors. See
+ ;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
+ #:tests? #f))
+ (home-page "http://audacity.sourceforge.net/")
+ (synopsis "Software for recording and editing sounds")
+ (description
+ "Audacity is a multi-track audio editor designed for recording, playing
+and editing digital audio. It features digital effects and spectrum analysis
+tools.")
+ (license license:gpl2+)))
+
(define-public azr3
(package
(name "azr3")
(define-public calf
(package
(name "calf")
- (version "0.0.60")
+ (version "0.90.0")
(source (origin
(method url-fetch)
(uri (string-append "http://calf-studio-gear.org/files/calf-"
version ".tar.gz"))
(sha256
(base32
- "019fwg00jv217a5r767z7szh7vdrarybac0pr2sk26xp81kibrx9"))))
+ "0dijv2j7vlp76l10s4v8gbav26ibaqk8s24ci74vrc398xy00cib"))))
(build-system gnu-build-system)
(inputs
`(("fluidsynth" ,fluidsynth)
;; The plugins are released under LGPLv2.1+
(license (list license:lgpl2.1+ license:gpl2+))))
+(define-public espeak
+ (package
+ (name "espeak")
+ (version "1.48.04")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/espeak/espeak/"
+ "espeak-" (version-major+minor version)
+ "/espeak-" version "-source.zip"))
+ (sha256
+ (base32
+ "0n86gwh9pw0jqqpdz7mxggllfr8k0r7pc67ayy7w5z6z79kig6mz"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; remove prebuilt binaries
+ '(delete-file-recursively "linux_32bit"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "DATADIR="
+ (assoc-ref %outputs "out")
+ "/share/espeak-data")
+ (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib")
+ "AUDIO=pulseaudio")
+ #:tests? #f ; no check target
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (chdir "src")
+ ;; We use version 19 of the PortAudio library, so we must copy the
+ ;; corresponding file to be sure that espeak compiles correctly.
+ (copy-file "portaudio19.h" "portaudio.h")
+ (substitute* "Makefile"
+ (("/bin/ln") "ln"))
+ #t)))))
+ (inputs
+ `(("portaudio" ,portaudio)
+ ("pulseaudio" ,pulseaudio)))
+ (native-inputs `(("unzip" ,unzip)))
+ (home-page "http://espeak.sourceforge.net/")
+ (synopsis "Software speech synthesizer")
+ (description "eSpeak is a software speech synthesizer for English and
+other languages. eSpeak uses a \"formant synthesis\" method. This allows many
+languages to be provided in a small size. The speech is clear, and can be used
+at high speeds, but is not as natural or smooth as larger synthesizers which are
+based on human speech recordings.")
+ (license license:gpl3+)))
+
+(define-public infamous-plugins
+ (package
+ (name "infamous-plugins")
+ (version "0.2.02")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/ssj71/infamousPlugins/"
+ "archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qm3ak07vc1l3f5c3c2lq9gkfknlxwn8ks03cysw1pk8hj7dwnv6"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; There are no tests
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-compiler-flags
+ (lambda _
+ (substitute* '("src/casynth/CMakeLists.txt"
+ "src/cheapdist/CMakeLists.txt"
+ "src/duffer/CMakeLists.txt"
+ "src/envfollower/CMakeLists.txt"
+ "src/ewham/CMakeLists.txt"
+ "src/hip2b/CMakeLists.txt"
+ "src/lushlife/CMakeLists.txt"
+ "src/powercut/CMakeLists.txt"
+ "src/powerup/CMakeLists.txt"
+ "src/stuck/CMakeLists.txt")
+ (("-msse2 -mfpmath=sse") ""))
+ #t)))))
+ (inputs
+ `(("cairo" ,cairo)
+ ("fftwf" ,fftwf)
+ ("lv2" ,lv2)
+ ("ntk" ,ntk)
+ ("zita-resampler" ,zita-resampler)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://ssj71.github.io/infamousPlugins")
+ (synopsis "LV2 plugins for live use")
+ (description
+ "The infamous plugins are a collection of LV2 audio plugins for live
+performances. The plugins include a cellular automaton synthesizer, an
+envelope follower, distortion effects, tape effects and more.")
+ (license license:gpl2+)))
+
+(define-public swh-plugins-lv2
+ (package
+ (name "swh-plugins-lv2")
+ (version "1.0.16")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/swh/"
+ "lv2/archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0j1mih0lp4fds07knp5i32in515sh0df1qi6694pmyz2wqnm295w"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no check target
+ #:make-flags (list "CC=gcc"
+ (string-append "PREFIX="
+ (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ ;; no configure script
+ (delete 'configure)
+ (add-after 'unpack 'patch-makefile-and-enter-directory
+ ;; The default install target doesn't install, but the
+ ;; "install-system" target does.
+ (lambda _
+ (substitute* "Makefile"
+ (("install:") "install: install-system"))
+ #t)))))
+ (inputs
+ `(("lv2" ,lv2)
+ ("fftwf" ,fftwf)))
+ (native-inputs
+ `(("libxslt" ,libxslt)
+ ("pkg-config" ,pkg-config)))
+ (home-page "http://plugin.org.uk")
+ (synopsis "SWH plugins in LV2 format")
+ (description
+ "Swh-plugins-lv2 is a collection of audio plugins in LV2 format. Plugin
+classes include: dynamics (compressor, limiter), time (delay, chorus,
+flanger), ringmodulator, distortion, filters, pitchshift, oscillators,
+emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
+ (license license:gpl3+)))
+
(define-public csound
(package
(name "csound")
- (version "6.05")
+ (version "6.09.1")
(source (origin
(method url-fetch)
(uri (string-append
- "mirror://sourceforge/csound/csound6/Csound"
- version "/Csound" version ".tar.gz"))
+ "https://github.com/csound/csound/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))
- (patches (search-patches "csound-header-ordering.patch"))))
+ "0xqpqws4jsv7fyawcjzwaw544qbfh29xq164kdf30a9v1n3yklp4"))))
(build-system cmake-build-system)
- (arguments
- ;; Work around this error on x86_64 with libc 2.22+:
- ;; libmvec.so.1: error adding symbols: DSO missing from command line
- (if (string-prefix? "x86_64" (or (%current-target-system) (%current-system)))
- '(#:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-lmvec"))
- '()))
(inputs
`(("alsa-lib" ,alsa-lib)
("boost" ,boost)
("liblo" ,liblo)
("ladspa" ,ladspa)
("jack" ,jack-1)
- ("gettext" ,gnu-gettext)))
+ ("gettext" ,gettext-minimal)))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
- (alist-cons-after
- 'unpack 'patch-makefile-and-enter-directory
- (lambda _
- (substitute* "libs/Makefile"
- (("/sbin/ldconfig") "true")
- (("^LIBDIR =.*") "LIBDIR = lib\n"))
- (chdir "libs")
- #t)
- (alist-cons-after
- 'install
- 'install-symlink
- (lambda _
- (symlink "libclalsadrv.so"
- (string-append (assoc-ref %outputs "out")
- "/lib/libclalsadrv.so.2")))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-makefile-and-enter-directory
+ (lambda _
+ (substitute* "libs/Makefile"
+ (("/sbin/ldconfig") "true")
+ (("^LIBDIR =.*") "LIBDIR = lib\n"))
+ (chdir "libs")
+ #t))
+ (add-after 'install 'install-symlink
+ (lambda _
+ (symlink "libclalsadrv.so"
+ (string-append (assoc-ref %outputs "out")
+ "/lib/libclalsadrv.so.2"))))
;; no configure script
- (alist-delete 'configure %standard-phases)))))
+ (delete 'configure))))
(inputs
`(("alsa-lib" ,alsa-lib)
("fftw" ,fftw)))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "C++ wrapper around the ALSA API")
(description
"clalsadrv is a C++ wrapper around the ALSA API simplifying access to
(("/usr/bin/install") (which "install"))
(("/bin/rm") "#"))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA ambisonics plugins")
(description
"The AMB plugins are a set of LADSPA ambisonics plugins, mainly to be
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "Chorus, phaser, and vintage high-pass and low-pass filters")
(description
"This package provides various LADSPA plugins. @code{cs_chorus} and
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA reverb plugin")
(description
"This package provides a stereo reverb LADSPA plugin based on the
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA four-band parametric equalizer plugin")
(description
"This package provides a LADSPA plugin for a four-band parametric
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA stereo width plugin")
(description
"This package provides a LADSPA plugin to manipulate the stereo width of
(("/usr") (assoc-ref outputs "out"))
(("/bin/cp") (which "cp")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA plugin for synthesizer oscillators")
(description
"The @code{blvco} LADSPA plugin provides three anti-aliased oscillators:
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA Autowah effect plugin")
(description
"This package provides a LADSPA plugin for a Wah effect with envelope
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "LADSPA stereo reverb plugin")
(description
"This package provides a LADSPA plugin for a stereo reverb effect.")
(define-public fluidsynth
(package
(name "fluidsynth")
- (version "1.1.6")
+ (version "1.1.9")
(source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://sourceforge/fluidsynth/fluidsynth-"
- version "/fluidsynth-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/FluidSynth/fluidsynth.git")
+ (commit (string-append "v" version))))
+ (file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
- (build-system gnu-build-system)
+ "0krvmb1idnf95l2ydzfcb08ayyx3n4m71hf9fgwv3srzaikvpf3q"))))
+ (build-system cmake-build-system)
(arguments
- `(#:phases
- (alist-cons-after
- 'unpack
- 'remove-broken-symlinks
- (lambda _ (delete-file-recursively "m4") #t)
- %standard-phases)))
+ '(#:tests? #f ; no check phase
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-libdir
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("LIB_SUFFIX \\$\\{_init_lib_suffix\\}")
+ "LIB_SUFFIX \"\""))
+ #t)))))
(inputs
`(("libsndfile" ,libsndfile)
("alsa-lib" ,alsa-lib)
specifications. FluidSynth reads and handles MIDI events from the MIDI input
device. It is the software analogue of a MIDI synthesizer. FluidSynth can
also play midifiles using a Soundfont.")
- (license license:gpl2+)))
+ (license license:lgpl2.1+)))
(define-public faad2
(package
("unzip" ,unzip)))
(arguments
'(#:phases
- (alist-cons-after
- 'unpack 'bootstrap
- (lambda _
- (substitute* "bootstrap" (("\r\n") "\n"))
- (zero? (system* "sh" "bootstrap")))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _
+ (substitute* "bootstrap" (("\r\n") "\n"))
+ (zero? (system* "sh" "bootstrap")))))))
(home-page "http://www.audiocoding.com/faad2.html")
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
(description
(define-public faust
(package
(name "faust")
- (version "0.9.67")
+ (version "0.9.90")
(source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://sourceforge/faudiostream/faust-" version ".zip"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/grame-cncm/faust.git")
+ (commit (string-append "v"
+ (string-map (lambda (c)
+ (if (char=? c #\.) #\- c))
+ version)))))
+ (file-name (string-append "faust-" version "-checkout"))
(sha256
(base32
- "068vl9536zn0j4pknwfcchzi90rx5pk64wbcbd67z32w0csx8xm1"))
- (snippet
- ;; Remove prebuilt library
- '(delete-file "architecture/android/libs/armeabi-v7a/libfaust_dsp.so"))))
+ "0qc6iwjd3i80jdyjc186c6ywipmjzl8wlsp4050pbr56q4rlkd4z"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
;; no "configure" script
- (delete 'configure))))
+ (delete 'configure)
+ ;; Files appear under $out/share/faust that are read-only. The
+ ;; install phase tries to overwrite them and fails, so we change
+ ;; the permissions first.
+ (add-before 'install 'fix-permissions
+ (lambda _
+ (for-each (lambda (file)
+ (chmod file #o644))
+ (find-files "architecture/max-msp" ".*"))
+ #t)))))
(native-inputs
`(("unzip" ,unzip)))
(home-page "http://faust.grame.fr/")
"Faust is a programming language for realtime audio signal processing.")
(license license:gpl2+)))
+(define-public faust-2
+ (package
+ (inherit faust)
+ (version "2.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/grame-cncm/faust.git")
+ (commit (string-append "v"
+ (string-map (lambda (c)
+ (if (char=? c #\.) #\- c))
+ version)))))
+ (sha256
+ (base32
+ "06km0ygwxxwgw1lqldccqidxhmjfz8ck0wnbd95qk5sg8sbpc068"))))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments faust)
+ ((#:make-flags flags)
+ `(list (string-append "prefix=" (assoc-ref %outputs "out"))
+ "world"))))
+ (native-inputs
+ `(("llvm" ,llvm-with-rtti)
+ ("which" ,which)
+ ("xxd" ,xxd)
+ ("ctags" ,emacs-minimal) ; for ctags
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libsndfile" ,libsndfile)
+ ("libmicrohttpd" ,libmicrohttpd)
+ ("ncurses" ,ncurses)
+ ("openssl" ,openssl)
+ ("zlib" ,zlib)))))
+
(define-public freepats
(package
(name "freepats")
(define-public guitarix
(package
(name "guitarix")
- (version "0.35.0")
+ (version "0.36.1")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.xz"))
(sha256
(base32
- "10hijqrrl8xil46kgsac10ysfxysisxlibm2rz133zyig5n63jdw"))))
+ "1g5949jwh2n755xjs3kcbdb8a1wxr5mn0m115wdnk27dxcdn93b0"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
("jack" ,jack-1)
("gtkmm" ,gtkmm-2)
("gtk+" ,gtk+-2)
- ("webkitgtk/gtk+-2" ,webkitgtk/gtk+-2)
("fftwf" ,fftwf)
("lrdf" ,lrdf)
("zita-resampler" ,zita-resampler)
`(("gperf" ,gperf)
("faust" ,faust)
("intltool" ,intltool)
- ("gettext" ,gnu-gettext)
+ ("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(native-search-paths
(list (search-path-specification
auto-wah.")
(license license:gpl2+)))
+(define-public guitarix-lv2
+ (package (inherit guitarix)
+ (name "guitarix-lv2")
+ (arguments
+ (substitute-keyword-arguments (package-arguments guitarix)
+ ((#:configure-flags flags)
+ `(cons "--lv2-only" ,flags))))))
+
(define-public rakarrack
(package
(name "rakarrack")
(version "1.3.2")
(source (origin
(method url-fetch)
- (uri (string-append
- "http://factorial.hu/system/files/ir.lv2-"
- version ".tar.gz"))
+ ;; The original home-page is gone. Download the tarball from an
+ ;; archive mirror instead.
+ (uri (list (string-append
+ "https://web.archive.org/web/20150803095032/"
+ "http://factorial.hu/system/files/ir.lv2-"
+ version ".tar.gz")
+ (string-append
+ "https://mirrors.kernel.org/gentoo/distfiles/ir.lv2-"
+ version ".tar.gz")))
(sha256
(base32
"1jh2z01l9m4ar7yz0n911df07dygc7n4cl59p7qdjbh0nvkm747g"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f ;no "check" target
+ `(#:tests? #f ; no tests
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:phases
- ;; no configure script
- (alist-delete 'configure %standard-phases)))
+ #:phases (modify-phases %standard-phases
+ (delete 'configure)))) ; no configure script
(inputs
`(("libsndfile" ,libsndfile)
("libsamplerate" ,libsamplerate)
(list (search-path-specification
(variable "LV2_PATH")
(files '("lib/lv2")))))
- (home-page "http://factorial.hu/plugins/lv2/ir")
+ ;; Link to an archived copy of the home-page since the original is gone.
+ (home-page (string-append "https://web.archive.org/web/20150803095032/"
+ "http://factorial.hu/plugins/lv2/ir"))
(synopsis "LV2 convolution reverb")
(description
"IR is a low-latency, real-time, high performance signal convolver
(define-public jack-1
(package
(name "jack")
- (version "0.124.1")
+ (version "0.125.0")
(source (origin
(method url-fetch)
(uri (string-append
".tar.gz"))
(sha256
(base32
- "1mk1wnx33anp6haxfjjkfhwbaknfblsvj35nxvz0hvspcmhdyhpb"))))
+ "0i6l25dmfk2ji2lrakqq9icnwjxklgcjzzk65dmsff91z2zva5rm"))))
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
(define-public jack-2
(package (inherit jack-1)
(name "jack2")
- (version "1.9.10")
+ (version "1.9.12")
(source (origin
(method url-fetch)
- (uri (string-append
- "https://github.com/jackaudio/jack2/archive/v"
- version
- ".tar.gz"))
+ (uri (string-append "https://github.com/jackaudio/jack2/releases/"
+ "download/v" version "/jack2-"
+ version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "03b0iiyk3ng3vh5s8gaqwn565vik7910p56mlbk512bw3dhbdwc8"))))
+ "0crf4y9a5j9miw8r5ji4l3w5w0y2frrf7xyfsfdgacnw6vwy5vyy"))))
(build-system waf-build-system)
(arguments
`(#:python ,python-2
(define-public jalv
(package
(name "jalv")
- (version "1.4.6")
+ (version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/jalv-"
version ".tar.bz2"))
(sha256
(base32
- "1f1hcq74n3ziw8bk97mn5a1vgw028dxikv3fchaxd430pbbhqgl9"))))
+ "1x2wpzzx2cgvz3dgdcgsj8dr0w3zsasy62mvl199bsdj5fbjaili"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
`(("lv2" ,lv2)
("lilv" ,lilv)
("suil" ,suil)
- ("gtk" ,gtk+-2)
- ("gtkmm" ,gtkmm-2)
+ ("gtk" ,gtk+)
+ ("gtkmm" ,gtkmm)
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(base32
"12z1vx3krrzsfccpah9xjs68900xvr7bw92wx8np5871i2yv47iw"))))
(build-system gnu-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ ;; lashd embeds an ancient version of sigsegv so we just skip it
+ (add-after 'unpack 'skip-lashd
+ (lambda _
+ (substitute* '("Makefile.am" "Makefile.in")
+ (("lashd ") ""))
+ #t)))
+ #:configure-flags '("--disable-static")))
(inputs
`(("bdb" ,bdb)
("gtk" ,gtk+-2)
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libsndfile" ,libsndfile)))
- (home-page "http://sourceforge.net/projects/bs2b/")
+ (home-page "https://sourceforge.net/projects/bs2b/")
(synopsis "Bauer stereophonic-to-binaural DSP")
(description
"The Bauer stereophonic-to-binaural DSP (bs2b) library and plugins is
implementation of the Open Sound Control (OSC) protocol.")
(license license:lgpl2.1+)))
+(define-public python-pyaudio
+ (package
+ (name "python-pyaudio")
+ (version "0.2.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://pypi.python.org/packages/ab/42/"
+ "b4f04721c5c5bfc196ce156b3c768998ef8c0ae3654ed29ea5020c749a6b"
+ "/PyAudio-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x7vdsigm7xgvyg3shd3lj113m8zqj2pxmrgdyj66kmnw0qdxgwk"))))
+ (build-system python-build-system)
+ (inputs
+ `(("portaudio" ,portaudio)))
+ (home-page "https://people.csail.mit.edu/hubert/pyaudio/")
+ (synopsis "Bindings for PortAudio v19")
+ (description "This package provides bindings for PortAudio v19, the
+cross-platform audio input/output stream library.")
+ (license license:expat)))
+
+(define-public python2-pyaudio
+ (package-with-python2 python-pyaudio))
+
(define-public python-pyliblo
(package
(name "python-pyliblo")
"13vry6xhxm7adnbyj28w1kpwrh0kf7nw83cz1yq74wl21faz2rzw"))))
(build-system python-build-system)
(arguments `(#:tests? #f)) ;no tests
+ (native-inputs
+ `(("python-cython" ,python-cython)))
(inputs
- `(("python-cython" ,python-cython)
- ("liblo" ,liblo)))
+ `(("liblo" ,liblo)))
(home-page "http://das.nasophon.de/pyliblo/")
(synopsis "Python bindings for liblo")
(description
(define-public lilv
(package
(name "lilv")
- (version "0.22.0")
+ (version "0.24.2")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/lilv-"
- version
- ".tar.bz2"))
+ version ".tar.bz2"))
(sha256
(base32
- "1d3ss7vv8drf1c5340lyd0gv736n2qy7sxji2nh1rw9y48hr69yd"))))
+ "08m5a372pr1l7aii9s3pic5nm68gynx1n1bc7bnlswziq6qnbv7p"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
(define-public lv2
(package
(name "lv2")
- (version "1.12.0")
+ (version "1.14.0")
(source (origin
(method url-fetch)
(uri (string-append "http://lv2plug.in/spec/lv2-"
- version
- ".tar.bz2"))
+ version ".tar.bz2"))
(sha256
(base32
- "1saq0vwqy5zjdkgc5ahs8kcabxfmff2mmg68fiqrkv8hiw9m6jks"))))
+ "0chxwys3vnn3nxc9x2vchm74s9sx0vfra6y893byy12ci61jc1dq"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
software.")
(license license:isc)))
+(define-public lv2-devel
+ (let ((commit "39c7c726cd52b2863fcea356cafe1bcab2ba7f37")
+ (revision "1"))
+ (package (inherit lv2)
+ (name "lv2-devel")
+ (version (string-append "1.15.3-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://lv2plug.in/git/lv2.git")
+ (commit commit)))
+ (sha256
+ (base32
+ "1gp2rd99dfmpibvpixrqn115mrhybzf3if3h8bssf6siyi13f29r")))))))
+
(define-public lv2-mda-piano
(package
(name "lv2-mda-piano")
"TYPE=mdaPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target
- #:phases (alist-delete 'configure %standard-phases)))
+ #:phases (modify-phases %standard-phases (delete 'configure))))
(inputs
`(("lv2" ,lv2)
("lvtk" ,lvtk)))
"TYPE=mdaEPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target
- #:phases (alist-delete 'configure %standard-phases)))
+ #:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "http://elephly.net/lv2/mdaepiano.html")
(synopsis "LV2 port of the mda EPiano plugin")
(description "An LV2 port of the mda EPiano VSTi.")))
(setenv "LDFLAGS"
(string-append
"-L" (assoc-ref inputs "boost") "/lib "
- "-lboost_system")))))))
+ "-lboost_system"))
+ ;; Needed for gtkmm
+ (substitute* '("src/wscript_build"
+ "examples/wscript_build")
+ (("cxxflags.*= \\[" line)
+ (string-append line "\"-std=c++11\", ")))
+ #t)))))
(inputs
`(("boost" ,boost)
+ ("gtkmm" ,gtkmm-2)
("lv2" ,lv2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
and ALSA.")
(license license:gpl3+)))
+(define-public qjackctl
+ (package
+ (name "qjackctl")
+ (version "0.5.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
+ version "/qjackctl-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0lx81dfwanc10vrny1vzi0wx73ph82dlz99ffjzsigj3cqzz6x4s"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f)) ; no check target
+ (inputs
+ `(("jack" ,jack-1)
+ ("alsa-lib" ,alsa-lib)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("qttools" ,qttools)))
+ (home-page "https://qjackctl.sourceforge.io/")
+ (synopsis "Jack server control application")
+ (description "Control a Jack server. Allows you to plug various sources
+into various outputs and to start, stop and configure jackd")
+ (license license:gpl2+)))
+
+(define-public qjackrcd
+ (package
+ (name "qjackrcd")
+ (version "1.2.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/orouits/qjackrcd.git")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "1l5iq2mkqd4gn9yr8xbh9qlpp1clcflazychl4vhdbz0bzq4c6al"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (zero? (system* "qmake"
+ (string-append "PREFIX="
+ (assoc-ref outputs "out")))))))))
+ (native-inputs
+ `(("qtbase" ,qtbase))) ; for qmake
+ (inputs
+ `(("jack" ,jack-1)
+ ("libsndfile" ,libsndfile)
+ ("qtbase" ,qtbase)))
+ (home-page "https://sourceforge.net/projects/qjackrcd/")
+ (synopsis "Stereo audio recorder for JACK")
+ (description "QJackRcd is a simple graphical stereo recorder for JACK
+supporting silence processing for automatic pause, file splitting, and
+background file post-processing.")
+ (license license:gpl2+)))
+
(define-public raul
(package
(name "raul")
aimed at audio/musical applications.")
(license license:gpl2+)))
+(define-public raul-devel
+ (let ((commit "4db870b2b20b0a608ec0283139056b836c5b1624")
+ (revision "1"))
+ (package (inherit raul)
+ (name "raul")
+ (version (string-append "0.8.9-" revision "."
+ (string-take commit 9)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://git.drobilla.net/raul.git")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "04fajrass3ymr72flx5js5vxc601ccrmx8ny8scp0rw7j0igyjdr")))))))
+
(define-public rubberband
(package
(name "rubberband")
(arguments
`(#:tests? #f ;no "check" target
#:phases (modify-phases %standard-phases
- (add-before
- 'configure 'autoconf
+ (add-after
+ 'unpack 'autoconf
(lambda _ (zero? (system* "autoreconf" "-vfi"))))
(add-before
'build 'fix-makefile
(define-public sratom
(package
(name "sratom")
- (version "0.4.6")
+ (version "0.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/sratom-"
- version
- ".tar.bz2"))
+ version ".tar.bz2"))
(sha256
(base32
- "080jjiyxjnj7hf25844hd9rb01grvzz1rk8mxcdnakywmspbxfd4"))))
+ "0hrxd9i66s06bpn6i3s9ka95134g3sm8yscmif7qgdzhyjqw42j4"))))
(build-system waf-build-system)
(arguments `(#:tests? #f)) ; no check target
(inputs
(define-public suil
(package
(name "suil")
- (version "0.8.2")
+ (version "0.10.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/suil-"
- version
- ".tar.bz2"))
+ version ".tar.bz2"))
(sha256
(base32
- "1s3adyiw7sa5gfvm5wasa61qa23629kprxyv6w8hbxdiwp0hhxkq"))))
+ "0j489gm3fhnmwmbgw30bvd4byw1vsy4yazdlnji8jzhcz0qwb5cq"))))
(build-system waf-build-system)
- (arguments `(#:tests? #f)) ; no check target
+ (arguments
+ `(#:tests? #f ; no check target
+ #:configure-flags
+ '("CXXFLAGS=-std=gnu++11")))
(inputs
`(("lv2" ,lv2)
- ("gtk+-2" ,gtk+-2)
- ("qt-4" ,qt-4)))
+ ("gtk+" ,gtk+-2)
+ ("gtk+" ,gtk+)
+ ("qt" ,qtbase)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/suil/")
support specific toolkits – if Suil supports a particular toolkit, then UIs in
that toolkit will work in all hosts that use Suil automatically.
-Suil currently supports every combination of Gtk 2, Qt 4, and X11.")
+Suil currently supports every combination of Gtk, Qt, and X11.")
(license license:isc)))
(define-public timidity++
(string-append "--with-default-path="
(assoc-ref %outputs "out") "/etc/timidity"))
#:phases
- (alist-cons-after
- 'install 'install-config
- (lambda _
- (let ((out (string-append (assoc-ref %outputs "out")
- "/etc/timidity")))
- (mkdir-p out)
- (call-with-output-file
- (string-append out "/timidity.cfg")
- (lambda (port)
- (format port (string-append "source "
- (assoc-ref %build-inputs "freepats")
- "/share/freepats/freepats.cfg"))))))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'install 'install-config
+ (lambda _
+ (let ((out (string-append (assoc-ref %outputs "out")
+ "/etc/timidity")))
+ (mkdir-p out)
+ (call-with-output-file
+ (string-append out "/timidity.cfg")
+ (lambda (port)
+ (format port (string-append "source "
+ (assoc-ref %build-inputs "freepats")
+ "/share/freepats/freepats.cfg")))))
+ #t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("ao" ,ao)
(arguments
`(#:tests? #f ; no check target
#:phases
- (alist-cons-after
- 'install 'remove-libvamp-hostsdk.la
- (lambda* (#:key outputs #:allow-other-keys)
- ;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656
- (for-each delete-file
- (let ((out (assoc-ref outputs "out")))
- (list (string-append out "/lib/libvamp-sdk.la")
- (string-append out "/lib/libvamp-hostsdk.la"))))
- #t)
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'install 'remove-libvamp-hostsdk.la
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656
+ (for-each delete-file
+ (let ((out (assoc-ref outputs "out")))
+ (list (string-append out "/lib/libvamp-sdk.la")
+ (string-append out "/lib/libvamp-hostsdk.la"))))
+ #t)))))
(inputs
`(("libsndfile" ,libsndfile)))
(native-inputs
(define-public wavpack
(package
(name "wavpack")
- (version "4.70.0")
+ (version "5.1.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.wavpack.com/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "191h8hv8qk72hfh1crg429i9yq3cminwqb249sy9zadbn1wy7b9c"))))
+ "0i19c6krc0p9krwrqy9s5xahaafigqzxcn31piidmlaqadyn4f8r"))))
(build-system gnu-build-system)
- (arguments
- `(#:configure-flags
- ;; wavpack.pc.in lacks path substitution for 'exec_prefix'.
- (list (string-append "--libdir=" %output "/lib"))))
(home-page "http://www.wavpack.com/")
(synopsis "Hybrid lossless audio codec")
(description
(define-public libxmp
(package
(name "libxmp")
- (version "4.3.10")
+ (version "4.4.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xmp/libxmp/" version "/"
name "-" version ".tar.gz"))
(sha256
(base32
- "1gm5xa0ca7ypcbj3bkmj3k1vvzl7nkch8gjyrm8p1a9vgzr0n761"))))
+ "1kycz4jsyvmf7ny9227b497wc7y5ligydi6fvvldmkf8hk63ad9m"))))
(build-system gnu-build-system)
(home-page "http://xmp.sourceforge.net/")
(synopsis "Module player library")
(define-public xmp
(package
(name "xmp")
- (version "4.0.10")
+ (version "4.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xmp/xmp/" version "/"
name "-" version ".tar.gz"))
(sha256
(base32
- "0gjylvvmq7ha0nhcjg56qfp0xxpsrcsj7y5r914svd5x1ppmzm5n"))))
+ "17i8fc7x7yn3z1x963xp9iv108gxfakxmdgmpv3mlm438w3n3g8x"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
("file" ,file)))
(arguments
'(#:phases
- (alist-cons-after
- 'unpack 'bootstrap
- (lambda _
- (zero? (system* "sh" "bootstrap")))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _
+ (zero? (system* "sh" "bootstrap")))))))
(home-page "http://www.surina.net/soundtouch/")
(synopsis
"Audio processing library for changing tempo, pitch and playback rate")
(define-public soxr
(package
(name "soxr")
- (version "0.1.1")
+ (version "0.1.2")
(source
(origin
(method url-fetch)
(string-append "mirror://sourceforge/soxr/soxr-" version
"-Source.tar.xz"))
(sha256
- (base32 "1hmadwqfpg15vhwq9pa1sl5xslibrjpk6hpq2s9hfmx1s5l6ihfw"))))
+ (base32 "0xf2w3piwz9gfr1xqyrj4k685q5dy53kq3igv663i4f4y4sg9rjl"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no 'check' target
- (home-page "http://sourceforge.net/p/soxr/wiki/Home/")
+ (home-page "https://sourceforge.net/p/soxr/wiki/Home/")
(synopsis "One-dimensional sample-rate conversion library")
(description
"The SoX Resampler library (libsoxr) performs one-dimensional sample-rate
(uri (string-append "mirror://sourceforge/twolame/twolame/" version
"/twolame-" version ".tar.gz"))
(sha256
- (base32 "0ahiqqng5pidwhj1wzph4vxxgxxgcfa3gl0gywipzx2ii7s35wwq"))))
+ (base32 "0ahiqqng5pidwhj1wzph4vxxgxxgcfa3gl0gywipzx2ii7s35wwq"))
+ (modules '((guix build utils)))
+ ;; The tests break with Perl 5.24:
+ ;; https://github.com/njh/twolame/issues/21
+ ;; TODO: Remove this snippet when upgrading twolame.
+ (snippet
+ '(begin
+ (substitute* "tests/test.pl" (("\\(@_\\)") "($_[0])"))
+ #t))))
(build-system gnu-build-system)
(inputs
`(("libsndfile" ,libsndfile)))
(define-public portaudio
(package
(name "portaudio")
- (version "19.20140130")
+ (version "190600.20161030")
(source
(origin
(method url-fetch)
(string-map (lambda (c) (if (char=? c #\.) #\_ c)) version)
".tgz"))
(sha256
- (base32 "0mwddk4qzybaf85wqfhxqlf0c5im9il8z03rd4n127k8y2jj9q4g"))
+ (base32 "04qmin6nj144b8qb9kkd9a52xfvm0qdgm8bg8jbl7s3frmyiv8pm"))
(patches (search-patches "portaudio-audacity-compat.patch"))))
(build-system gnu-build-system)
(inputs
'(#:phases
;; Autoreconf is necessary because the audacity-compat patch modifies
;; .in files.
- (alist-cons-after
- 'unpack 'autoreconf
- (lambda _
- (zero? (system* "autoreconf" "-vif")))
- %standard-phases)
+ (modify-phases %standard-phases
+ (add-after 'unpack 'autoreconf
+ (lambda _
+ (zero? (system* "autoreconf" "-vif")))))
#:tests? #f)) ;no 'check' target
(home-page "http://www.portaudio.com/")
(synopsis "Audio I/O library")
(define-public qsynth
(package
(name "qsynth")
- (version "0.4.1")
+ (version "0.5.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz"))
(sha256
- (base32 "034p6mbwrjnxd9b6h20cidxi4ilkk3cgpjp154j0jzjs1ipf7x2h"))))
+ (base32
+ "1sr6vrz8z9r99j9xcix86lgcqldragb2ajmq1bnhr58d99sda584"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" phase
#:configure-flags
'("CXXFLAGS=-std=gnu++11")))
(native-inputs
- `(("qttools" ,qttools)))
+ `(("qttools" ,qttools)
+ ("pkg-config" ,pkg-config)))
(inputs
`(("fluidsynth" ,fluidsynth)
("qtbase" ,qtbase)
("pulseaudio" ,pulseaudio)))
(arguments
'(#:phases
- (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (setenv "CC" "gcc")
- (zero?
- (system* "./configure"
- (string-append "--prefix=" (assoc-ref outputs "out")))))
- %standard-phases)
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "CC" "gcc")
+ (zero?
+ (system* "./configure"
+ (string-append "--prefix=" (assoc-ref outputs "out")))))))
;; No 'check' target.
#:tests? #f))
(home-page "http://themaister.net/rsound.html")
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
- (alist-cons-after
- 'unpack 'patch-makefile-and-enter-directory
- (lambda _
- (substitute* "libs/Makefile"
- (("ldconfig") "true")
- (("^LIBDIR =.*") "LIBDIR = lib\n"))
- (chdir "libs") #t)
- (alist-cons-after
- 'install
- 'install-symlink
- (lambda _
- (symlink "libzita-convolver.so"
- (string-append (assoc-ref %outputs "out")
- "/lib/libzita-convolver.so.3")))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-makefile-and-enter-directory
+ (lambda _
+ (substitute* "libs/Makefile"
+ (("ldconfig") "true")
+ (("^LIBDIR =.*") "LIBDIR = lib\n"))
+ (chdir "libs") #t))
+ (add-after 'install 'install-symlink
+ (lambda _
+ (symlink "libzita-convolver.so"
+ (string-append (assoc-ref %outputs "out")
+ "/lib/libzita-convolver.so.3"))))
;; no configure script
- (alist-delete 'configure %standard-phases)))))
+ (delete 'configure))))
(inputs `(("fftwf" ,fftwf)))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "Fast, partitioned convolution engine library")
(description
"Zita convolver is a C++ library providing a real-time convolution
"/lib/libzita-resampler.so.1"))))
;; no configure script
(delete 'configure))))
- (home-page "http://kokkinizita.linuxaudio.org/linuxaudio/zita-resampler/resampler.html")
+ (home-page "https://kokkinizita.linuxaudio.org/linuxaudio/zita-resampler/resampler.html")
(synopsis "C++ library for resampling audio signals")
(description
"Libzita-resampler is a C++ library for resampling audio signals. It is
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
- (alist-cons-after
- 'unpack 'patch-makefile-and-enter-directory
- (lambda _
- (substitute* "libs/Makefile"
- (("ldconfig") "true")
- (("^LIBDIR =.*") "LIBDIR = lib\n"))
- (chdir "libs")
- #t)
- (alist-cons-after
- 'install
- 'install-symlink
- (lambda _
- (symlink "libzita-alsa-pcmi.so"
- (string-append (assoc-ref %outputs "out")
- "/lib/libzita-alsa-pcmi.so.0")))
- ;; no configure script
- (alist-delete 'configure %standard-phases)))))
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-makefile-and-enter-directory
+ (lambda _
+ (substitute* "libs/Makefile"
+ (("ldconfig") "true")
+ (("^LIBDIR =.*") "LIBDIR = lib\n"))
+ (chdir "libs")
+ #t))
+ (add-after 'install 'install-symlink
+ (lambda _
+ (symlink "libzita-alsa-pcmi.so"
+ (string-append (assoc-ref %outputs "out")
+ "/lib/libzita-alsa-pcmi.so.0"))))
+ ;; no configure script
+ (delete 'configure))))
(inputs
`(("alsa-lib" ,alsa-lib)
("fftw" ,fftw)))
- (home-page "http://kokkinizita.linuxaudio.org")
+ (home-page "https://kokkinizita.linuxaudio.org")
(synopsis "C++ wrapper around the ALSA API")
(description
"Zita-alsa-pcmi is a C++ wrapper around the ALSA API. It provides easy
(description "shntool is a multi-purpose WAVE data processing and reporting
utility. File formats are abstracted from its core, so it can process any file
that contains WAVE data, compressed or not---provided there exists a format
-module to handle that particular file type.")
+module to handle that particular file type. It can also generate CUE files, and
+use them split WAVE data into multiple files.")
(home-page "http://etree.org/shnutils/shntool/")
;; 'install-sh' bears the x11 license
(license (list license:gpl2+ license:x11))))
(define-public bs1770gain
(package
(name "bs1770gain")
- (version "0.4.11")
+ (version "0.4.12")
(source
(origin
(method url-fetch)
version "/bs1770gain-" version ".tar.gz"))
(sha256
(base32
- "0j765drdb7h3y5ipjv9sg1a0if6zh8cksbv3rdk5ppd7kxcrjnlb"))))
+ "0n9skdap1vnl6w52fx0gsrjlk7w3xgdwi62ycyf96h29rx059z6a"))))
(build-system gnu-build-system)
(inputs `(("ffmpeg" ,ffmpeg)
("sox" ,sox)))
(define-public gsm
(package
(name "gsm")
- (version "1.0.14")
+ (version "1.0.17")
(source
(origin
(method url-fetch)
"-" version ".tar.gz"))
(sha256
(base32
- "0b1mx69jq88wva3wk0hi6fcl5a52qhnq2f9p3f3jdh5k61ma252q"))))
+ "00bns0d4wwrvc60lj2w7wz4yk49q1f6rpdrwqzrxsha9d78mfnl5"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "tst"
06.10 RPE-LTP lossy speech compression algorithm.")
(home-page "http://quut.com/gsm/")
(license (license:non-copyleft "file://COPYRIGHT"))))
+
+(define-public python-pyalsaaudio
+ (package
+ (name "python-pyalsaaudio")
+ (version "0.8.4")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyalsaaudio" version))
+ (sha256
+ (base32
+ "1180ypn9596rq4b7y7dyv627j1q0fqilmkkrckclnzsdakdgis44"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ; tests require access to ALSA devices.
+ (inputs
+ `(("alsa-lib" ,alsa-lib)))
+ (home-page "http://larsimmisch.github.io/pyalsaaudio/")
+ (synopsis "ALSA wrappers for Python")
+ (description
+ "This package contains wrappers for accessing the ALSA API from Python.
+It is currently fairly complete for PCM devices, and has some support for
+mixers.")
+ (license license:psfl)))
+
+(define-public python2-pyalsaaudio
+ (package-with-python2 python-pyalsaaudio))
+
+(define-public bluez-alsa
+ (package
+ (name "bluez-alsa")
+ (version "1.2.0")
+ (source (origin
+ ;; The tarballs are mere snapshots and don't contain a
+ ;; bootstrapped build system.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Arkq/bluez-alsa.git")
+ (commit (string-append "v" version))))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "1qinf41wl2ihx54zmmhanycihwjkn7dn1cicq6pp4rqbiv79b95x"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _
+ (zero? (system* "autoreconf" "-vif")))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("bluez" ,bluez)
+ ("glib" ,glib)
+ ("libbsd" ,libbsd)
+ ("ncurses" ,ncurses)
+ ("ortp" ,ortp)
+ ("sbc" ,sbc)))
+ (home-page "https://github.com/Arkq/bluez-alsa")
+ (synopsis "Bluetooth ALSA backend")
+ (description "This project is a rebirth of a direct integration between
+Bluez and ALSA. Since Bluez >= 5, the build-in integration has been removed
+in favor of 3rd party audio applications. From now on, Bluez acts as a
+middleware between an audio application, which implements Bluetooth audio
+profile, and a Bluetooth audio device. BlueALSA registers all known Bluetooth
+audio profiles in Bluez, so in theory every Bluetooth device (with audio
+capabilities) can be connected. In order to access the audio stream, one has
+to connect to the ALSA PCM device called @code{bluealsa}. The device is based
+on the ALSA software PCM plugin.")
+ (license license:expat)))
+
+(define-public snd
+ (package
+ (name "snd")
+ (version "17.7")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
+ "snd-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vm0dy5qlycqkima7y5ajzvazyjybifa803fabjcpncjz08c26vp"))))
+ (build-system glib-or-gtk-build-system)
+ (arguments
+ '(#:tests? #f ; no tests
+ #:out-of-source? #f ; for the 'install-doc' phase
+ #:configure-flags
+ (let* ((out (assoc-ref %outputs "out"))
+ (docdir (string-append out "/share/doc/snd")))
+ (list "--with-alsa" "--with-jack" "--with-gmp"
+ (string-append "--with-doc-dir=" docdir)))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (docdir (string-append out "/share/doc/snd")))
+ (mkdir-p docdir)
+ (for-each
+ (lambda (f)
+ (install-file f docdir))
+ (find-files "." "\\.html$|COPYING"))
+ (copy-recursively "pix" (string-append docdir "/pix"))
+ #t))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("fftw" ,fftw)
+ ("flac" ,flac)
+ ("gmp" ,gmp)
+ ("gsl" ,gsl)
+ ("gtk+" ,gtk+)
+ ("jack" ,jack-1)
+ ("libsamplerate" ,libsamplerate)
+ ("mpc" ,mpc)
+ ("mpfr" ,mpfr)
+ ("mpg123" ,mpg123)
+ ("speex" ,speex)
+ ("timidity++" ,timidity++)
+ ("vorbis-tools" ,vorbis-tools)
+ ("wavpack" ,wavpack)))
+ (synopsis "Sound editor")
+ (home-page "https://ccrma.stanford.edu/software/snd/")
+ (description
+ "Snd is a sound editor modelled loosely after Emacs. It can be
+customized and extended using either the s7 Scheme implementation (included in
+the Snd sources), Ruby, or Forth.")
+ (license (license:non-copyleft "file://COPYING"))))
+
+(define-public noise-repellent
+ (package
+ (name "noise-repellent")
+ (version "0.1.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/lucianodato/noise-repellent.git")
+ (commit version)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "0rd3dlmk3vivjmcr6x2x860y0j1d49c2j95j6ny50v184mwvn11j"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags
+ (list "CC=gcc"
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:tests? #f ; there are none
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ `(("lv2" ,lv2)
+ ("fftwf" ,fftwf)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/lucianodato/noise-repellent")
+ (synopsis "LV2 plugin for broadband noise reduction")
+ (description "Noise Repellent is an LV2 plugin to reduce noise. It has
+the following features:
+
+@enumerate
+@item Spectral gating and spectral subtraction suppression rule
+@item Adaptive and manual noise thresholds estimation
+@item Adjustable noise floor
+@item Adjustable offset of thresholds to perform over-subtraction
+@item Time smoothing and a masking estimation to reduce artifacts
+@item Basic onset detector to avoid transients suppression
+@item Whitening of the noise floor to mask artifacts and to recover higher
+ frequencies
+@item Option to listen to the residual signal
+@item Soft bypass
+@item Noise profile saved with the session
+@end enumerate
+")
+ (license license:lgpl3+)))
+
+(define-public cli-visualizer
+ (package
+ (name "cli-visualizer")
+ (version "1.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/dpayne/cli-visualizer/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07zkm87f2fr8kc6531zrkya7q81sdanm6813y2f54mg13g41y6hi"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("which" ,which)))
+ (inputs
+ `(("fftw" ,fftw)
+ ("googletest" ,googletest)
+ ("ncurses" ,ncurses)
+ ("pulseaudio" ,pulseaudio)))
+ (arguments
+ '(#:test-target "test"
+ #:make-flags
+ (list (string-append "PREFIX=" %output "/bin/") "ENABLE_PULSE=1")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-sudo
+ (lambda _
+ (substitute* "install.sh" (("sudo") ""))
+ #t))
+ (add-before 'check 'set-check-environment
+ (lambda _
+ (setenv "CXX" "g++")
+ (setenv "CC" "gcc")
+ #t))
+ (add-before 'install 'make-prefix
+ (lambda _
+ (mkdir-p (string-append (assoc-ref %outputs "out") "/bin"))
+ #t))
+ (add-after 'install 'data
+ (lambda _
+ (for-each (lambda (file)
+ (install-file file
+ (string-append (assoc-ref %outputs "out")
+ "/share/doc")))
+ (find-files "examples"))
+ #t)))))
+ (home-page "https://github.com/dpayne/cli-visualizer/")
+ (synopsis "Command-line audio visualizer")
+ (description "@code{cli-visualizer} displays fast-Fourier
+transforms (FFTs) of the sound being played, as well as other graphical
+representations.")
+ (license license:expat)))
+
+(define-public cava
+ (package
+ (name "cava")
+ (version "0.6.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/karlstav/cava/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p24lz3h4d0h82ffylqr7mq8a8x1c66flm2r2bsv1liw51n1rma2"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (inputs
+ `(("fftw" ,fftw)
+ ("ncurses" ,ncurses)
+ ("pulseaudio" ,pulseaudio)))
+ (arguments
+ `(#:configure-flags
+ (list (string-append "PREFIX=" %output)
+ (string-append "FONT_DIR=" %output "/usr/share/consolefonts"))
+ #:make-flags
+ (let ((lib (string-append %output "/lib")))
+ (list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "HOME" (getcwd))
+ (invoke "sh" "autogen.sh")))
+ (add-before 'build 'make-cava-ldflags
+ (lambda* (#:key outputs #:allow-other-keys)
+ (mkdir-p (string-append (assoc-ref outputs "out") "/lib"))))
+ (add-after 'install 'data
+ (lambda* (#:key outputs #:allow-other-keys)
+ (for-each (lambda (file)
+ (install-file file
+ (string-append (assoc-ref outputs "out")
+ "/share/doc/examples")))
+ (find-files "example_files")))))))
+ (home-page "https://karlstav.github.io/cava/")
+ (synopsis "Console audio visualizer for ALSA, MPD, and PulseAudio")
+ (description "C.A.V.A. is a bar audio spectrum visualizer for the terminal
+using ALSA, MPD, PulseAudio, or a FIFO buffer as its input.")
+ (license license:expat)))