;;; 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 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018 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 Nils Gillmann <ng0@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>
+;;; Copyright © 2018 okapi <okapi@firemail.cc>
+;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnunet) ; libmicrohttpd
#:use-module (gnu packages gperf)
+ #:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages qt)
#:use-module (gnu packages python)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages serialization)
#:use-module (gnu packages telephony)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
"libs/ardour/revision.cc"
(lambda (port)
(format port ,(string-append "#include \"ardour/revision.h\"
-namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
+namespace ARDOUR { const char* revision = \"" version "\" ; }"))
+ #t)))
(sha256
(base32
"0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"))
(define-public audacity
(package
(name "audacity")
- (version "2.2.1")
+ (version "2.2.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/audacity/audacity/archive"
"/Audacity-" version ".tar.gz"))
(sha256
- (base32 "1n05r8b4rnf9fas0py0is8cm97s3h65dgvqkk040aym5d1x6wd7z"))
+ (base32
+ "18q7i77ynihx7xp45lz2lv0k0wrh6736pcrivlpwrxjgbvyqx7km"))
(patches (search-patches "audacity-build-with-system-portaudio.patch"))
(modules '((guix build utils)))
(snippet
(modules '((guix build utils)))
(snippet
;; remove prebuilt binaries
- '(delete-file-recursively "linux_32bit"))))
+ '(begin
+ (delete-file-recursively "linux_32bit")
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
(define-public infamous-plugins
(package
(name "infamous-plugins")
- (version "0.2.02")
+ (version "0.2.04")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ssj71/infamousPlugins/"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0qm3ak07vc1l3f5c3c2lq9gkfknlxwn8ks03cysw1pk8hj7dwnv6"))))
+ "1n6rhqsmvad7692w2h01niw5gqg5yk7a09wxl5ivs77zyp93vf7z"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ; There are no tests
+ `(#: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") ""))
+ (substitute* (find-files "." "CMakeLists.txt")
+ (("-msse2 -mfpmath=sse") ""))
#t)))))
(inputs
`(("cairo" ,cairo)
("zita-resampler" ,zita-resampler)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://ssj71.github.io/infamousPlugins")
+ (home-page "https://ssj71.github.io/infamousPlugins")
(synopsis "LV2 plugins for live use")
(description
"The infamous plugins are a collection of LV2 audio plugins for live
(define-public fluidsynth
(package
(name "fluidsynth")
- (version "1.1.9")
+ (version "1.1.11")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0krvmb1idnf95l2ydzfcb08ayyx3n4m71hf9fgwv3srzaikvpf3q"))))
+ "0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"))))
(build-system cmake-build-system)
(arguments
- '(#:tests? #f ; no check phase
+ '(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-libdir
(lambda _
+ ;; Install libraries to /lib, not /lib64.
(substitute* "CMakeLists.txt"
(("LIB_SUFFIX \\$\\{_init_lib_suffix\\}")
"LIB_SUFFIX \"\""))
(arguments
'(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (replace 'bootstrap
(lambda _
(substitute* "bootstrap" (("\r\n") "\n"))
- (zero? (system* "sh" "bootstrap")))))))
+ (invoke "sh" "bootstrap"))))))
(home-page "http://www.audiocoding.com/faad2.html")
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
(description
(string-map (lambda (c)
(if (char=? c #\.) #\- c))
version)))))
+ (file-name (string-append "faust-" version "-checkout"))
(sha256
(base32
"06km0ygwxxwgw1lqldccqidxhmjfz8ck0wnbd95qk5sg8sbpc068"))))
(setenv "PATH" (string-append
(assoc-ref %build-inputs "bzip2") "/bin:"
(assoc-ref %build-inputs "tar") "/bin"))
- (system* "tar" "xvf" (assoc-ref %build-inputs "source"))
+ (invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
(chdir "freepats")
;; Use absolute pattern references
(substitute* "freepats.cfg"
(("Tone_000") (string-append out "/Tone_000"))
(("Drum_000") (string-append out "/Drum_000")))
(mkdir-p out)
- (copy-recursively "." out)))))
+ (copy-recursively "." out)
+ #t))))
(native-inputs
`(("tar" ,tar)
("bzip2" ,bzip2)))
("libxml2" ,libxml2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://www.nongnu.org/lash/")
+ (home-page "https://www.nongnu.org/lash/")
(synopsis "Audio application session manager")
(description
"LASH is a session management system for audio applications. It allows
(define-public liblo
(package
(name "liblo")
- (version "0.28")
+ (version "0.29")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/liblo/liblo/" version
"/liblo-" version ".tar.gz"))
(sha256
(base32
- "02drgnpirvl2ihvzgsmn02agr5sj3vipzzw9vma56qlkgfvak56s"))))
+ "0sn0ckc1d0845mhsaa62wf7f9v0c0ykiq796a30ja5096kib9qdc"))))
(build-system gnu-build-system)
(arguments
`(;; liblo test FAILED
(synopsis "Implementation of the Open Sound Control protocol")
(description
"liblo is a lightweight library that provides an easy to use
-implementation of the Open Sound Control (OSC) protocol.")
+implementation of the Open Sound Control (@dfn{OSC}) protocol.")
(license license:lgpl2.1+)))
(define-public python-pyaudio
(lambda* (#:key outputs #:allow-other-keys)
(setenv "LDFLAGS"
(string-append "-Wl,-rpath="
- (assoc-ref outputs "out") "/lib")))))))
+ (assoc-ref outputs "out") "/lib"))
+ #t)))))
;; required by lilv-0.pc
(propagated-inputs
`(("serd" ,serd)
(uri (git-reference
(url "http://lv2plug.in/git/lv2.git")
(commit commit)))
+ (file-name (git-file-name name version))
(sha256
(base32
"1gp2rd99dfmpibvpixrqn115mrhybzf3if3h8bssf6siyi13f29r")))))))
(uri (git-reference
(url "http://git.elephly.net/software/lv2-mdametapiano.git")
(commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
"07lywf6lpfpndg3i9w752mmlg2hgn1bwp23h8b0mdj6awh67abqd"))))
(define-public qjackctl
(package
(name "qjackctl")
- (version "0.5.0")
+ (version "0.5.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
- "0lx81dfwanc10vrny1vzi0wx73ph82dlz99ffjzsigj3cqzz6x4s"))))
+ "0jw1s4qh4qjxnysddjv3j2lchwlslj9p4iisv9i89d3m7pf1svs4"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
(uri (git-reference
(url "https://github.com/orouits/qjackrcd.git")
(commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
"1l5iq2mkqd4gn9yr8xbh9qlpp1clcflazychl4vhdbz0bzq4c6al"))))
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
- (zero? (system* "qmake"
- (string-append "PREFIX="
- (assoc-ref outputs "out")))))))))
+ (invoke "qmake"
+ (string-append "PREFIX="
+ (assoc-ref outputs "out"))))))))
(native-inputs
`(("qtbase" ,qtbase))) ; for qmake
(inputs
background file post-processing.")
(license license:gpl2+)))
+(define-public supercollider
+ (package
+ (name "supercollider")
+ (version "3.9.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/supercollider/supercollider"
+ "/releases/download/Version-" version
+ "/SuperCollider-" version "-Source-linux.tar.bz2"))
+ (sha256
+ (base32
+ "0d3cb6dw8jz7ijriqn3rlwin24gffczp69hl17pzxj1d5w57yj44"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
+ "-DSC_QT=off"
+ "-DSC_EL=off") ;scel is packaged individually as
+ ;emacs-scel.
+ #:modules ((guix build utils)
+ (guix build cmake-build-system)
+ (ice-9 ftw))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'rm-bundled-libs
+ (lambda _
+ ;; The build system doesn't allow us to unbundle the following
+ ;; libraries. hidapi is also heavily patched and upstream not
+ ;; actively maintained.
+ (let ((keep-dirs '("nova-simd" "nova-tt" "hidapi" "TLSF-2.4.6"
+ "oscpack_1_1_0" "." "..")))
+ (with-directory-excursion "./external_libraries"
+ (for-each
+ delete-file-recursively
+ (scandir "."
+ (lambda (x)
+ (and (eq? (stat:type (stat x)) 'directory)
+ (not (member (basename x) keep-dirs))))))))
+ #t))
+ ;; Some tests are broken (see:
+ ;; https://github.com/supercollider/supercollider/issues/3555 and
+ ;; https://github.com/supercollider/supercollider/issues/1736
+ (add-after 'rm-bundled-libs 'disable-broken-tests
+ (lambda _
+ (substitute* "testsuite/supernova/CMakeLists.txt"
+ (("server_test.cpp")
+ "")
+ (("perf_counter_test.cpp")
+ ""))
+ (delete-file "testsuite/supernova/server_test.cpp")
+ (delete-file "testsuite/supernova/perf_counter_test.cpp")
+ (substitute* "testsuite/CMakeLists.txt"
+ (("add_subdirectory\\(sclang\\)")
+ ""))
+ (delete-file "testsuite/sclang/CMakeLists.txt")
+ #t))
+ ;; TODO: Remove after version 3.9.2 is released
+ ;; (see: https://github.com/supercollider/supercollider/pull/3558).
+ (add-after 'disable-broken-tests 'apply-system-yaml-cpp-fix
+ (lambda _
+ ;; cmake: correctly include yaml-cpp (commit f82cec5ae).
+ (substitute* "editors/sc-ide/CMakeLists.txt"
+ (("external_libraries/boost\\)$")
+ "external_libraries/boost)
+include_directories(${YAMLCPP_INCLUDE_DIR})")
+ ((" yaml")
+ " ${YAMLCPP_LIBRARY}"))
+ ;; set YAMLCPP_LIBRARY and YAMLCPP_INCLUDE_DIR if not using
+ ;; system (commit 031922987).
+ (substitute* "external_libraries/CMakeLists.txt"
+ (("set_property\\( TARGET yaml PROPERTY FOLDER 3rdparty \\)")
+ "set_property( TARGET yaml PROPERTY FOLDER 3rdparty )
+set(YAMLCPP_LIBRARY yaml)
+set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/\
+external_libraries/yaml-cpp/include)"))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("jack" ,jack-1)
+ ("libsndfile" ,libsndfile)
+ ("fftw" ,fftw)
+ ("libxt" ,libxt)
+ ("readline" ,readline) ;readline support for sclang's CLI
+ ("alsa" ,alsa-lib) ;for sclang's MIDI interface
+ ("eudev" ,eudev) ;for user interactions with devices
+ ("avahi" ,avahi) ;zeroconf service discovery support
+ ("icu4c" ,icu4c)
+ ("boost" ,boost)
+ ("boost-sync" ,boost-sync)
+ ("yaml-cpp" ,yaml-cpp)))
+ (home-page "https://github.com/supercollider/supercollider")
+ (synopsis "Synthesis engine and programming language")
+ (description "SuperCollider is a synthesis engine (@code{scsynth} or
+@code{supernova}) and programming language (@code{sclang}). It can be used
+for experimenting with sound synthesis and algorithmic composition.
+
+SuperCollider requires jackd to be installed in your user profile and your
+user must be allowed to access the realtime features of the kernel. Search
+for \"realtime\" in the index of the Guix manual to learn how to achieve this
+using GuixSD.")
+ (license license:gpl2+)))
+
(define-public raul
(package
(name "raul")
(string-append "https://bitbucket.org/breakfastquay/rubberband/get/v"
version
".tar.bz2"))
+ (file-name (string-append name "-" version ".tar.bz2"))
(sha256
(base32
"05amrbrxx0da3w7m237q51799r8xgs4ffqabi2qv06hq8dpcj386"))))
(method url-fetch)
(uri (string-append "http://www.wavpack.com/"
name "-" version ".tar.bz2"))
+ (patches (search-patches "wavpack-CVE-2018-6767.patch"
+ "wavpack-CVE-2018-7253.patch"
+ "wavpack-CVE-2018-7254.patch"))
(sha256
(base32
"0i19c6krc0p9krwrqy9s5xahaafigqzxcn31piidmlaqadyn4f8r"))))
("automake" ,automake)
("libtool" ,libtool)
("file" ,file)))
- (arguments
- '(#: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.2")
+ (version "0.1.3")
(source
(origin
(method url-fetch)
(string-append "mirror://sourceforge/soxr/soxr-" version
"-Source.tar.xz"))
(sha256
- (base32 "0xf2w3piwz9gfr1xqyrj4k685q5dy53kq3igv663i4f4y4sg9rjl"))))
+ (base32 "12aql6svkplxq5fjycar18863hcq84c5kx8g6f4rj0lcvigw24di"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no 'check' target
(home-page "https://sourceforge.net/p/soxr/wiki/Home/")
(define-public qsynth
(package
(name "qsynth")
- (version "0.5.0")
+ (version "0.5.1")
(source
(origin
(method url-fetch)
"/qsynth-" version ".tar.gz"))
(sha256
(base32
- "1sr6vrz8z9r99j9xcix86lgcqldragb2ajmq1bnhr58d99sda584"))))
+ "0kpk1rnhbifbvm4xvw8i0d4ksk78pf505qvg08k89kqkg32494ap"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" phase
version ".tar.bz2"))
(snippet
;; Don't optimize for a specific processor architecture.
- '(substitute* "libs/Makefile"
- (("^CXXFLAGS \\+= -march=native") "")))
+ '(begin
+ (substitute* "libs/Makefile"
+ (("^CXXFLAGS \\+= -march=native") ""))
+ #t))
(modules '((guix build utils)))
(sha256
(base32
version ".tar.bz2"))
(snippet
;; Don't optimize for a specific processor architecture.
- '(substitute* '("apps/Makefile" "libs/Makefile")
- (("^CXXFLAGS \\+= -march=native") "")))
+ '(begin
+ (substitute* '("apps/Makefile" "libs/Makefile")
+ (("^CXXFLAGS \\+= -march=native") ""))
+ #t))
(modules '((guix build utils)))
(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)
(define-public gsm
(package
(name "gsm")
- (version "1.0.17")
+ (version "1.0.18")
(source
(origin
(method url-fetch)
"-" version ".tar.gz"))
(sha256
(base32
- "00bns0d4wwrvc60lj2w7wz4yk49q1f6rpdrwqzrxsha9d78mfnl5"))))
+ "041amvpz8cvxykl3pwqldrzxligmmzcg8ncdnxbg32rlqf3q1xh4"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "tst"
(mkdir-p (string-append out "/include/gsm"))
(copy-recursively "inc"
(string-append out "/include/gsm")))))
- (delete 'configure))))
+ (delete 'configure)))) ; no configure script
(synopsis "GSM 06.10 lossy speech compression library")
(description "This C library provides an encoder and a decoder for the GSM
06.10 RPE-LTP lossy speech compression algorithm.")
(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)
(define-public cava
(package
(name "cava")
- (version "0.6.0")
+ (version "0.6.1")
(source (origin
(method url-fetch)
(uri (string-append
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1p24lz3h4d0h82ffylqr7mq8a8x1c66flm2r2bsv1liw51n1rma2"))))
+ "13d72swnjs894llf0paandmhf1lf90dz6ygkcdw4bv84wzkq1f4q"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'bootstrap
+ (replace 'bootstrap
(lambda* (#:key outputs #:allow-other-keys)
(setenv "HOME" (getcwd))
(invoke "sh" "autogen.sh")))
(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)))
+
+(define-public fluid-3
+ (let ((commit "871c8ce2002e8b3c198f532fdb4fbcce7914f951"))
+ (package
+ (name "fluid-3")
+ (version "2.1")
+ (source
+ (origin
+ (method url-fetch)
+ ;; Only one file is required, but the release bundles the whole
+ ;; software which is 50MiB as tar and 200MiB unpacked. The website
+ ;; directly links the soundfont release to the github file download.
+ (uri (string-append "https://github.com/musescore/MuseScore/raw/"
+ commit "/share/sound/FluidR3Mono_GM.sf3"))
+ (file-name (string-append name "-" version ".sf3"))
+ (sha256
+ (base32
+ "1hjfg5i15bw9279007xs92zsggjgn4s4k9pc00s851l3kvc6dkfg"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let ((file (assoc-ref %build-inputs "source"))
+ (out (string-append %output "/share/soundfonts")))
+ (mkdir-p out)
+ (copy-file file (string-append out "/FluidR3Mono_GM.sf3"))
+ #t))))
+ (home-page "https://github.com/musescore/MuseScore/tree/master/share/sound")
+ (synopsis "Pro-quality GM soundfont")
+ (description "Fluid-3 is Frank Wen's pro-quality GM soundfont.")
+ (license license:expat))))