;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016 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 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system waf)
#:use-module (guix build-system trivial)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages databases)
#:use-module (gnu packages file)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages fltk)
+ #:use-module (gnu packages fontutils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
(define-public alsa-modular-synth
(package
(name "alsa-modular-synth")
- (version "2.1.1")
+ (version "2.1.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/alsamodular/ams-"
version ".tar.bz2"))
(sha256
(base32
- "1nb7qzzqlqa2x8h797jbwi18ihnfkxqg9lyi0c4nvf8ybwzxkzd2"))))
+ "1azbrhpfk4nnybr7kgmc7w6al6xnzppg853vas8gmkh185kk11l0"))))
(build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-qt5")
+ #:phases
+ (modify-phases %standard-phases
+ ;; Insert an extra space between linker flags.
+ (add-before 'configure 'add-missing-space
+ (lambda _
+ (substitute* "configure"
+ (("LIBS\\+=\\$LIBSsave") "LIBS+=\" $LIBSsave\"")
+ (("CFLAGS\\+=\\$CFLAGSsave") "CFLAGS+=\" $CFLAGSsave\""))
+ #t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
;; We cannot use zita-alsa-pcmi (the successor of clalsadrv) due to
("jack" ,jack-1)
("ladspa" ,ladspa)
("liblo" ,liblo)
- ("qt" ,qt-4)))
+ ("qt" ,qt)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://alsamodular.sourceforge.net/")
(define-public ardour
(package
(name "ardour")
- (version "4.4")
+ (version "4.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "git://git.ardour.org/ardour/ardour.git")
(commit version)))
(snippet
- ;; Ardour expects this file to exist at build time. It can be
- ;; created from a git checkout with:
- ;; ./waf create_stored_revision
+ ;; 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
"libs/ardour/revision.cc"
(lambda (port)
(format port "#include \"ardour/revision.h\"
-namespace ARDOUR { const char* revision = \"4.4-210-ga4daf93\" ; }"))))
+namespace ARDOUR { const char* revision = \"4.7-219-g0e36f8e\" ; }"))))
(sha256
(base32
- "1gnrcnq2ksnh7fsa301v1c4p5dqrbqpjylf02rg3za3ab58wxi7l"))
+ "149gswphz77m3pkzsn2nqbm6yvcfa3fva560bcvjzlgb73f64q5l"))
(file-name (string-append name "-" version))))
(build-system waf-build-system)
(arguments
version "/Csound" version ".tar.gz"))
(sha256
(base32
- "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))))
+ "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))
+ (patches (list (search-patch "csound-header-ordering.patch")))))
(build-system cmake-build-system)
(arguments
;; Work around this error on x86_64 with libc 2.22+:
ALSA PCM devices.")
(license license:gpl2+)))
+(define-public mcp-plugins
+ (package
+ (name "mcp-plugins")
+ (version "0.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://kokkinizita.linuxaudio.org"
+ "/linuxaudio/downloads/MCP-plugins-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "06a9r1l85jmg7l1cvc3788mk8ra0xagjfy1rmhw3b80y4n0vlnvc"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no "check" target
+ #:phases
+ (modify-phases %standard-phases
+ ;; no configure script
+ (delete 'configure)
+ (add-before 'install 'prepare-target-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+ (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+ #t))
+ (add-after 'unpack 'override-target-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("/usr") (assoc-ref outputs "out")))
+ #t)))))
+ (home-page "http://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
+@code{cs_phaser} provide chorus and phaser effects, respectively;
+@code{mvclpf24} provides four implementations of the low-pass filter used in
+vintage Moog synthesizers; @code{mvchpf24} is based on the voltage-controlled
+high-pass filter by Robert Moog. The filters attempt to accurately emulate
+the non-linear circuit elements of their original analog counterparts.")
+ (license license:gpl2+)))
+
+(define-public vco-plugins
+ (package
+ (name "vco-plugins")
+ (version "0.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://kokkinizita.linuxaudio.org"
+ "/linuxaudio/downloads/VCO-plugins-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "1xzqdg3b07r7zww05y9bb737l9dxvfkv28m3fyak1aazaci3rsgl"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no "check" target
+ #:phases
+ (modify-phases %standard-phases
+ ;; no configure script
+ (delete 'configure)
+ (add-before 'install 'prepare-target-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+ (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
+ #t))
+ (add-after 'unpack 'override-target-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("/usr") (assoc-ref outputs "out"))
+ (("/bin/cp") (which "cp")))
+ #t)))))
+ (home-page "http://kokkinizita.linuxaudio.org")
+ (synopsis "LADSPA plugin for synthesizer oscillators")
+ (description
+ "The @code{blvco} LADSPA plugin provides three anti-aliased oscillators:
+
+@enumerate
+@item Pulse-VCO, a dirac pulse oscillator with flat amplitude spectrum
+@item Saw-VCO, a sawtooth oscillator with 1/F amplitude spectrum
+@item Rec-VCO, a square / rectange oscillator
+@end enumerate\n
+
+All oscillators are low-pass filtered to provide waveforms similar to the
+output of analog synthesizers such as the Moog Voyager.")
+ (license license:gpl2+)))
+
(define-public fluidsynth
(package
(name "fluidsynth")
auto-wah.")
(license license:gpl2+)))
+(define-public rakarrack
+ (package
+ (name "rakarrack")
+ (version "0.6.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/rakarrack/rakarrack/"
+ "rakarrack-" version "/rakarrack-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "1rpf63pdn54c4yg13k7cb1w1c7zsvl97c4qxcpz41c8l91xd55kn"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* '("src/process.C"
+ "src/global.h")
+ (("#include <Fl/") "#include <FL/"))
+ #t))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("alsa-utils" ,alsa-utils)
+ ("fltk" ,fltk)
+ ("libx11" ,libx11)
+ ("libxext" ,libxext)
+ ("libxfixes" ,libxfixes)
+ ("libxft" ,libxft)
+ ("libxrender" ,libxrender)
+ ("libxpm" ,libxpm)
+ ("fontconfig" ,fontconfig)
+ ("freetype" ,freetype)
+ ("jack" ,jack-1)
+ ("alsa-lib" ,alsa-lib)
+ ("libsndfile" ,libsndfile)
+ ("libsamplerate" ,libsamplerate)
+ ("zlib" ,zlib)))
+ (home-page "http://rakarrack.sourceforge.net/")
+ (synopsis "Audio effects processor")
+ (description
+ "Rakarrack is a richly featured multi-effects processor emulating a
+guitar effects pedalboard. Effects include compressor, expander, noise gate,
+equalizers, exciter, flangers, chorus, various delay and reverb effects,
+distortion modules and many more. Most of the effects engine is built from
+modules found in the excellent software synthesizer ZynAddSubFX. Presets and
+user interface are optimized for guitar, but Rakarrack processes signals in
+stereo while it does not apply internal band-limiting filtering, and thus is
+well suited to all musical instruments and vocals.")
+ ;; The code is explicitly licensed under the GPL version 2 only.
+ (license license:gpl2)))
+
(define-public ir
(package
(name "ir")
("suil" ,suil)
("gtk" ,gtk+-2)
("gtkmm" ,gtkmm-2)
- ("qt" ,qt-4)
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(package
(name "ladspa")
(version "1.13")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://www.ladspa.org/download/ladspa_sdk_"
- version
- ".tgz"))
- (sha256
- (base32
- "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"))))
+ (source
+ (origin
+ (method url-fetch)
+ ;; Since the official link is dead,
+ ;; we download the tarball from Debian or Internet Archive.
+ (uri (list (string-append "http://http.debian.net"
+ "/debian/pool/main/l/ladspa-sdk/ladspa-sdk_"
+ version ".orig.tar.gz")
+ (string-append "https://web.archive.org/web/20140717172251/"
+ "http://www.ladspa.org/download/ladspa_sdk_"
+ version ".tgz")))
+ (sha256
+ (base32
+ "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; the "test" target is a listening test only
(("^CC.*") "CC = gcc\n")
(("^CPP.*") "CPP = g++\n"))))
(alist-delete 'build %standard-phases))))
- (home-page "http://ladspa.org")
+ ;; Since the home page is gone, we provide a link to the archived version.
+ (home-page
+ "https://web.archive.org/web/20140729190945/http://www.ladspa.org/")
(synopsis "Linux Audio Developer's Simple Plugin API (LADSPA)")
(description
"LADSPA is a standard that allows software audio processors and effects
implementation of the Open Sound Control (OSC) protocol.")
(license license:lgpl2.1+)))
+(define-public python-pyliblo
+ (package
+ (name "python-pyliblo")
+ (version "0.10.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://das.nasophon.de/download/pyliblo-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "13vry6xhxm7adnbyj28w1kpwrh0kf7nw83cz1yq74wl21faz2rzw"))))
+ (build-system python-build-system)
+ (arguments `(#:tests? #f)) ;no tests
+ (inputs
+ `(("python-cython" ,python-cython)
+ ("liblo" ,liblo)))
+ (home-page "http://das.nasophon.de/pyliblo/")
+ (synopsis "Python bindings for liblo")
+ (description
+ "Pyliblo is a Python wrapper for the liblo Open Sound Control (OSC)
+library. It supports almost the complete functionality of liblo, allowing you
+to send and receive OSC messages using a nice and simple Python API. Also
+included are the command line utilities @code{send_osc} and @code{dump_osc}.")
+ (license license:lgpl2.1+)))
+
+(define-public python2-pyliblo
+ (package-with-python2 python-pyliblo))
+
(define-public lilv
(package
(name "lilv")
#:configure-flags
(list (string-append "--boost-includes="
(assoc-ref %build-inputs "boost")
- "/include"))))
+ "/include"))
+ #:phases (modify-phases %standard-phases
+ (add-before
+ 'configure 'set-flags
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; See e.g. https://github.com/lvtk/lvtk/issues/21
+ (setenv "LDFLAGS"
+ (string-append
+ "-L" (assoc-ref inputs "boost") "/lib "
+ "-lboost_system")))))))
(inputs
`(("boost" ,boost)
("lv2" ,lv2)))
(define-public libxmp
(package
(name "libxmp")
- (version "4.3.8")
+ (version "4.3.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xmp/libxmp/"
name "-" version ".tar.gz"))
(sha256
(base32
- "0h06091hlpgc6ds4pjmfq8sx4snw7av3nhny180q4pwfyasjb6ny"))))
+ "1gm5xa0ca7ypcbj3bkmj3k1vvzl7nkch8gjyrm8p1a9vgzr0n761"))))
(build-system gnu-build-system)
(home-page "http://xmp.sourceforge.net/")
(synopsis "Module player library")
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/zita-convolver-"
version ".tar.bz2"))
+ (snippet
+ ;; Don't optimize for a specific processor architecture.
+ '(substitute* "libs/Makefile"
+ (("^CXXFLAGS \\+= -march=native") "")))
+ (modules '((guix build utils)))
(sha256
(base32
"14qrnczhp5mbwhky64il7kxc4hl1mmh495v60va7i2qnhasr6zmz"))))
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/zita-resampler-"
version ".tar.bz2"))
+ (snippet
+ ;; Don't optimize for a specific processor architecture.
+ '(substitute* '("apps/Makefile" "libs/Makefile")
+ (("^CXXFLAGS \\+= -march=native") "")))
+ (modules '((guix build utils)))
(sha256
(base32
"0r9ary5sc3y8vba5pad581ha7mgsrlyai83w7w4x2fmhfy64q0wq"))))
open, initialise and use a hw: device in mmap mode, and providing floating
point audio data.")
(license license:gpl3+)))
+
+(define-public cuetools
+ (package
+ (name "cuetools")
+ (version "1.4.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/svend/cuetools/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4"))))
+ (build-system gnu-build-system)
+ ;; The source tarball is not bootstrapped.
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _ (zero? (system* "autoreconf" "-vfi")))))))
+ ;; Bootstrapping tools
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("flex" ,flex)
+ ("bison" ,bison)))
+ (synopsis "Cue and toc file parsers and utilities")
+ (description "Cuetools is a set of programs that are useful for manipulating
+and using CUE sheet (cue) files and Table of Contents (toc) files. CUE and TOC
+files are a way to represent the layout of a data or audio CD in a
+machine-readable ASCII format.")
+ (home-page "https://github.com/svend/cuetools")
+ (license license:gpl2+)))
+
+(define-public shntool
+ (package
+ (name "shntool")
+ (version "3.0.10")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://etree.org/shnutils/shntool/dist/src/"
+ "shntool-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l"))))
+ (build-system gnu-build-system)
+ (synopsis "WAVE audio data processing tool")
+ (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.")
+ (home-page "http://etree.org/shnutils/shntool/")
+ ;; 'install-sh' bears the x11 license
+ (license (list license:gpl2+ license:x11))))
+
+(define-public dcadec
+ (package
+ (name "dcadec")
+ (version "0.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/foo86/dcadec/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0i0dpypgqkhhi4v1fmsp2way6w9kbcix3c7q79pmg39yvrzj17gd"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; Test files are missing: https://github.com/foo86/dcadec/issues/53
+ '(#:tests? #f
+ #:make-flags
+ (list "CC=gcc"
+ ;; Build shared library.
+ "CONFIG_SHARED=1"
+ (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ ;; Set proper runpath.
+ (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ ;; No configure script, just a hand-written Makefile.
+ (delete 'configure))))
+ (synopsis "DTS Coherent Acoustics decoder")
+ (description "Dcadec is a DTS Coherent Acoustics surround sound decoder
+with support for HD extensions.")
+ (home-page "https://github.com/foo86/dcadec")
+ (license license:lgpl2.1+)))