#:use-module (gnu packages fontutils)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
+ #:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnunet) ; libmicrohttpd
"CXXFLAGS=-std=gnu++11")
#:phases
(modify-phases %standard-phases
+ (add-after 'set-paths 'hide-default-gcc
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gcc (assoc-ref inputs "gcc")))
+ ;; Remove the default GCC from CPLUS_INCLUDE_PATH to prevent
+ ;; conflicts with the GCC 5 input.
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-join
+ (delete (string-append gcc "/include/c++")
+ (string-split (getenv "CPLUS_INCLUDE_PATH") #\:))
+ ":"))
+ #t)))
;; Insert an extra space between linker flags.
(add-before 'configure 'add-missing-space
(lambda _
(native-inputs
`(("pkg-config" ,pkg-config)
("qttools" ,qttools)
- ("gcc" ,gcc-5)))
+ ("gcc@5" ,gcc-5)))
(home-page "http://alsamodular.sourceforge.net/")
(synopsis "Realtime modular synthesizer and effect processor")
(description
(define-public audacity
(package
(name "audacity")
- (version "2.3.3")
+ (version "2.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/audacity/audacity.git")
+ (url "https://github.com/audacity/audacity")
(commit (string-append "Audacity-" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "0707fsnrl4vjalsi21w4blwgz024qhd0w8rdd5j5vpxf5lyk2rbk"))
+ "1xk0piv72d2xd3p7igr916fhcbrm76fhjr418k1rlqdzzg1hfljn"))
(patches (search-patches "audacity-build-with-system-portaudio.patch"))
(modules '((guix build utils)))
(snippet
;; Actually https://github.com/moddevices/caps-lv2.git, but it's
;; missing fixes for newer glibc, so using the origin of a pull
;; request regarding this issue:
- (url "https://github.com/jujudusud/caps-lv2.git")
+ (url "https://github.com/jujudusud/caps-lv2")
(commit "9c9478b7fbd8f9714f552ebe2a6866398b0babfb")))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ssj71/infamousPlugins.git")
+ (url "https://github.com/ssj71/infamousPlugins")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/swh/ladspa.git")
+ (url "https://github.com/swh/ladspa")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/swh/lv2.git")
+ (url "https://github.com/swh/lv2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
(license license:gpl3+)))
+(define-public tao
+ (package
+ (name "tao")
+ (version "1.0-beta-10May2006")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/taopm/Tao/"
+ "tao-" version "/"
+ "tao-" version ".tar.gz"))
+ (sha256
+ (base32
+ "156py3g6mmglldfd0j76bn7n242hdwf49diaprjpj7crp8vgf2pz"))
+ (patches
+ (search-patches "tao-add-missing-headers.patch"
+ "tao-fix-parser-types.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "configure"
+ (("SHELL=/bin/sh") ""))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("TAO_RELEASE=-beta")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-references
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "user-scripts/tao.in"
+ (("taoparse")
+ (string-append (assoc-ref outputs "out") "/bin/taoparse"))
+ (("grep") (which "grep"))
+ (("sed -f \\$distdir/user-scripts/")
+ (string-append (which "sed") " -f $distdir/"))
+ (("distdir=.*")
+ (string-append "distdir="
+ (assoc-ref outputs "out") "/share/tao")))
+ #t))
+ (add-after 'install 'install-extra-files
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (share (string-append out "/share/tao/"))
+ (inc (string-append out "/include/tao/")))
+ (mkdir-p share)
+ (mkdir-p inc)
+ (install-file "user-scripts/error.parse" share)
+ (copy-recursively "examples" (string-append share "examples"))
+ (for-each (lambda (file) (install-file file inc))
+ (find-files "include" "\\.h"))
+ #t))))))
+ (inputs
+ `(("audiofile" ,audiofile)
+ ("libxi" ,libxi)
+ ("libxmu" ,libxmu)
+ ("mesa" ,mesa)
+ ("glut" ,freeglut)
+ ("flex" ,flex)
+ ("bison" ,bison)
+ ("sed" ,sed)
+ ("grep" ,grep)))
+ (home-page "http://taopm.sourceforge.net/")
+ (synopsis "Sound Synthesis with Physical Models")
+ (description "Tao is a software package for sound synthesis using physical
+models. It provides a virtual acoustic material constructed from masses and
+springs which can be used as the basis for building quite complex virtual
+musical instruments. Tao comes with a synthesis language for creating and
+playing instruments and a C++ API for those who would like to use it as an
+object library.")
+ (license license:gpl2+)))
+
(define-public csound
(package
(name "csound")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/csound/csound.git")
+ (url "https://github.com/csound/csound")
(commit version)))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/FluidSynth/fluidsynth.git")
+ (url "https://github.com/FluidSynth/fluidsynth")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/grame-cncm/faust.git")
+ (url "https://github.com/grame-cncm/faust")
(commit (string-append "v"
(string-map (lambda (c)
(if (char=? c #\.) #\- c))
(package
(name "jack")
(version "0.125.0")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://jackaudio.org/downloads/jack-audio-connection-kit-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "0i6l25dmfk2ji2lrakqq9icnwjxklgcjzzk65dmsff91z2zva5rm"))))
+ (source
+ (origin
+ (method url-fetch)
+ ;; jackaudio.org/downloads/jack-audio-connection-kit-0.125.0.tar.gz
+ ;; no longer exists (404). Use an unofficial mirror.
+ (uri (string-append "https://crux.ster.zone/downloads/"
+ "jack-audio-connection-kit/"
+ "jack-audio-connection-kit-" version ".tar.gz"))
+ (sha256
+ (base32 "0i6l25dmfk2ji2lrakqq9icnwjxklgcjzzk65dmsff91z2zva5rm"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
("bdb" ,bdb)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://jackaudio.org/")
+ (home-page "https://jackaudio.org/")
(synopsis "JACK audio connection kit")
(description
"JACK is a low-latency audio server. It can connect a number of
(version "1.18.0")
(source (origin
(method url-fetch)
- (uri (string-append "http://lv2plug.in/spec/lv2-"
+ (uri (string-append "https://lv2plug.in/spec/lv2-"
version ".tar.bz2"))
(sha256
(base32
"0gs7401xz23q9vajqr31aa2db8dvssgyh5zrvr4ipa6wig7yb8wh"))))
(build-system waf-build-system)
(arguments
- `(#:tests? #f ; no check target
+ `(#:tests? #f ; no check target
#:configure-flags '("--no-plugins")))
(inputs
;; Leaving off cairo and gtk+-2.0 which are needed for example plugins
`(("libsndfile" ,libsndfile)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://lv2plug.in/")
+ (home-page "https://lv2plug.in/")
(synopsis "LV2 audio plugin specification")
(description
"LV2 is an open specification for audio plugins and host applications.
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/lvtk/lvtk.git")
+ (url "https://github.com/lvtk/lvtk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/orouits/qjackrcd.git")
+ (url "https://github.com/orouits/qjackrcd")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/supercollider/supercollider.git")
+ (url "https://github.com/supercollider/supercollider")
(commit (string-append "Version-" version))
;; for nova-simd, nova-tt, hidapi, TLSF, oscpack
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
- "02v911w2kdbg3kfl593lb2ig4sjbfxzv20a0vbcymhfzpvp1x6xp"))))
+ "02v911w2kdbg3kfl593lb2ig4sjbfxzv20a0vbcymhfzpvp1x6xp"))
+ (modules '((guix build utils)
+ (ice-9 ftw)))
+ (snippet
+ ;; 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)))))))
+ ;; To find the Guix provided ableton-link library.
+ (substitute* "lang/CMakeLists.txt"
+ (("include\\(\\.\\./external_libraries/link/\
+AbletonLinkConfig\\.cmake\\)")
+ "find_package(AbletonLink NAMES AbletonLink ableton-link \
+link REQUIRED)"))
+ #t))))
(build-system cmake-build-system)
(outputs
'("out" ;core language
"-DFORTIFY=ON" "-DLIBSCSYNTH=ON"
"-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
+ ;; HOME must be defined otherwise supercollider throws a "ERROR:
+ ;; Primitive '_FileMkDir' failed." error when generating the doc.
+ ;; The graphical tests also hang without it.
+ (add-after 'unpack 'set-home-directory
(lambda _
- ;; The build system doesn't allow us to unbundle the following
- ;; libraries. hidapi is also heavily patched.
- (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))))))))
- (substitute* "lang/CMakeLists.txt"
- (("include\\(\\.\\./external_libraries/link/AbletonLinkConfig\\.cmake\\)")
- "find_package(AbletonLink NAMES AbletonLink ableton-link link REQUIRED)"))
- #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/server/supernova/CMakeLists.txt"
- (("server_test.cpp")
- "")
- (("perf_counter_test.cpp")
- ""))
- (substitute* "testsuite/CMakeLists.txt"
- (("add_subdirectory\\(sclang\\)")
- ""))
- (delete-file "testsuite/sclang/CMakeLists.txt")
+ (setenv "HOME" (getcwd))
#t))
- (add-after 'disable-broken-tests 'patch-scclass-dir
+ (add-after 'unpack 'patch-scclass-dir
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(scclass-dir
"\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
(string-append "Path(\"" scclass-dir "\")")))
#t)))
+ (add-before 'build 'prepare-x
+ (lambda _
+ (system "Xvfb &")
+ (setenv "DISPLAY" ":0")
+ #t))
(add-before 'install 'install-ide
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(native-inputs
`(("ableton-link" ,ableton-link)
("pkg-config" ,pkg-config)
- ("qttools" ,qttools)))
+ ("qttools" ,qttools)
+ ("xorg-server" ,xorg-server-for-tests)))
(inputs
`(("jack" ,jack-1)
("libsndfile" ,libsndfile)
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Themaister/RSound.git")
+ (url "https://github.com/Themaister/RSound")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/johnhldavis/xjackfreak.git")
+ (url "https://github.com/johnhldavis/xjackfreak")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(define-public zita-resampler
(package
(name "zita-resampler")
- (version "1.3.0")
+ (version "1.6.2")
(source (origin
(method url-fetch)
(uri (string-append
(snippet
;; Don't optimize for a specific processor architecture.
'(begin
- (substitute* '("apps/Makefile" "libs/Makefile")
+ (substitute* '("apps/Makefile" "source/Makefile")
(("^CXXFLAGS \\+= -march=native") ""))
#t))
(modules '((guix build utils)))
(sha256
(base32
- "0r9ary5sc3y8vba5pad581ha7mgsrlyai83w7w4x2fmhfy64q0wq"))))
+ "1my5k2dh2dkvjp6xjnf9qy6i7s28z13kw1n9pwa4a2cpwbzawfr3"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
- #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:make-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "SUFFIX="))
#:phases
(modify-phases %standard-phases
(add-after
'unpack 'patch-makefile-and-enter-directory
(lambda _
- (substitute* "libs/Makefile"
+ (substitute* "source/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
- (chdir "libs")
+ (chdir "source")
#t))
(add-after
'install 'install-symlink
(define-public zita-alsa-pcmi
(package
(name "zita-alsa-pcmi")
- (version "0.2.0")
+ (version "0.3.2")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.bz2"))
(sha256
(base32
- "1rgv332g82rrrlm4vdam6p2pyrisxbi7b3izfaa0pcjglafsy7j9"))))
+ "12d7vdg74yh21w69qi0wg57iz4876j94qbiq09bvscih6xz9y78s"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
- #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:make-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "SUFFIX="))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _
- (substitute* "libs/Makefile"
+ (substitute* "source/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
- (chdir "libs")
+ (chdir "source")
#t))
(add-after 'install 'install-symlink
(lambda _
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/svend/cuetools.git")
+ (url "https://github.com/svend/cuetools")
(commit version)))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/foo86/dcadec.git")
+ (url "https://github.com/foo86/dcadec")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/irungentoo/filter_audio.git")
+ (url "https://github.com/irungentoo/filter_audio")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
;; bootstrapped build system.
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Arkq/bluez-alsa.git")
+ (url "https://github.com/Arkq/bluez-alsa")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(define-public snd
(package
(name "snd")
- (version "19.9")
+ (version "20.5")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
- "13s8fahpsjygjdrcwmprcrz23ny3klaj2rh2xzdv3bfs69gxvhys"))))
+ "1frg64q2d8cia6v7jia7kahzx0apwdl0z252mzlbwqdz5960nv90"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/lucianodato/noise-repellent.git")
+ (url "https://github.com/lucianodato/noise-repellent")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/dpayne/cli-visualizer.git")
+ (url "https://github.com/dpayne/cli-visualizer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/karlstav/cava.git")
+ (url "https://github.com/karlstav/cava")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/FNA-XNA/FAudio.git")
+ (url "https://github.com/FNA-XNA/FAudio")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public carla
(package
(name "carla")
- (version "2.0.0")
+ (version "2.1.1")
(source
(origin
(method git-fetch)
(uri
(git-reference
- (url "https://github.com/falkTX/Carla.git")
+ (url "https://github.com/falkTX/Carla")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "0fqgncqlr86n38yy7pa118mswfacmfczj7w9xx6c6k0jav3wk29k"))))
+ "0c3y4a6cgi4bv1mg57i3qn5ia6pqjqlaylvkapj6bmpsw71ig22g"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
("file" ,file)
("liblo" ,liblo)
("libsndfile" ,libsndfile)
+ ("gtk2" ,gtk+-2) ;needed for bridging GTK2 plugins in GTK3 hosts
("gtk+" ,gtk+)
("python-pyliblo" ,python-pyliblo)
("python-pyqt" ,python-pyqt)
(define-public libaudec
(package
(name "libaudec")
- (version "0.2")
+ (version "0.2.2")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "0lfydvs92b0hr72z71ci3yi356rjzi162pgms8dphgg18bz8dazv"))))
+ "04mpmfmqc43asw0m3zxhb6jj4qms7x4jw7mx4xb1d3lh16xllniz"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags `("-Denable_tests=true -Denable_ffmpeg=true")))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/drowe67/codec2.git")
+ (url "https://github.com/drowe67/codec2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Ableton/link.git")
+ (url "https://github.com/Ableton/link")
(commit (string-append "Link-" version))))
(file-name (git-file-name name version))
(sha256