summaryrefslogtreecommitdiff
path: root/gnu/packages/music.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/music.scm')
-rw-r--r--gnu/packages/music.scm188
1 files changed, 164 insertions, 24 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 5b8728e591..b7dc7d9aaa 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@@ -13,7 +13,8 @@
;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
-;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 nee <nee.git@hidamari.blue>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -113,6 +114,7 @@
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tex)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages version-control)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages wxwidgets)
@@ -1266,7 +1268,7 @@ users to select LV2 plugins and run them with jalv.")
(define-public synthv1
(package
(name "synthv1")
- (version "0.8.5")
+ (version "0.8.6")
(source (origin
(method url-fetch)
(uri
@@ -1274,7 +1276,7 @@ users to select LV2 plugins and run them with jalv.")
"/synthv1-" version ".tar.gz"))
(sha256
(base32
- "0mvrqk6jy7h2wg442ixwm49w7x15rs4066c2ljrz4kvxlzp5z69i"))))
+ "141ah1gnv5r2k846v5ay15q9q90h01p74240a56vlxqh20z43g92"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests.
@@ -1300,7 +1302,7 @@ oscillators and stereo effects.")
(define-public drumkv1
(package
(name "drumkv1")
- (version "0.8.5")
+ (version "0.8.6")
(source (origin
(method url-fetch)
(uri
@@ -1308,7 +1310,7 @@ oscillators and stereo effects.")
"/drumkv1-" version ".tar.gz"))
(sha256
(base32
- "06xqqm1ylmpp2s7xk7xav325gc50kxlvh9vf1343b0n3i8xkgjfg"))))
+ "0fwxrfyp15a4m77mzz4mwj36mhdrj646whlrkvcys33p2w75f8cq"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests.
@@ -1335,7 +1337,7 @@ effects.")
(define-public samplv1
(package
(name "samplv1")
- (version "0.8.5")
+ (version "0.8.6")
(source (origin
(method url-fetch)
(uri
@@ -1343,7 +1345,7 @@ effects.")
"/samplv1-" version ".tar.gz"))
(sha256
(base32
- "1gscwybsbaqbnylmgf2baf71cm2g7a0pd11rqmk3cz9hi3lyjric"))))
+ "035bq7yfg1yirsqk63zwkzjw9dxl52lrzq9y0w7nga0vb11xdfij"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests.
@@ -1367,6 +1369,42 @@ effects.")
effects.")
(license license:gpl2+)))
+(define-public padthv1
+ (package
+ (name "padthv1")
+ (version "0.8.6")
+ (source (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://sourceforge/padthv1/padthv1/" version
+ "/padthv1-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mikab2f9n5q1sfgnp3sbm1rf3v57k4085lsgh0a5gzga2h4hwxq"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; There are no tests.
+ #:configure-flags
+ '("CXXFLAGS=-std=gnu++11")))
+ (inputs
+ `(("jack" ,jack-1)
+ ("lv2" ,lv2)
+ ("alsa-lib" ,alsa-lib)
+ ("non-session-manager" ,non-session-manager)
+ ("liblo" ,liblo)
+ ("fftw" ,fftw)
+ ("qtbase" ,qtbase)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("qttools" ,qttools)))
+ (home-page "http://padthv1.sourceforge.net")
+ (synopsis "Polyphonic additive synthesizer")
+ (description
+ "Padthv1 is an old-school polyphonic additive synthesizer with stereo
+effects. Padthv1 is based on the PADsynth algorithm by Paul Nasca, as a
+special variant of additive synthesis.")
+ (license license:gpl2+)))
+
(define-public amsynth
(package
(name "amsynth")
@@ -1928,7 +1966,7 @@ capabilities, custom envelopes, effects, etc.")
(define-public yoshimi
(package
(name "yoshimi")
- (version "1.5.5")
+ (version "1.5.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/yoshimi/"
@@ -1936,7 +1974,7 @@ capabilities, custom envelopes, effects, etc.")
"/yoshimi-" version ".tar.bz2"))
(sha256
(base32
- "0h71x9742bswifwll7bma1fz648fd5xd0yfp7byvsczy6zhjz5pf"))))
+ "0bjfhfslpa2hjrc9h38m7dlr62953w9n4cvkgvfy495cbym12dak"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests
@@ -1956,17 +1994,7 @@ capabilities, custom envelopes, effects, etc.")
(("-msse -msse2 -mfpmath=sse") "")
(("-march=(athlon64|core2)" flag)
(string-append flag " -msse -msse2 -mfpmath=sse")))
- #t))
- ;; Yoshimi tries to find ncurses with pkg-config, but our ncurses
- ;; package does not install .pc files.
- (add-after 'unpack 'find-ncurses
- (lambda _
- (substitute* "src/CMakeLists.txt"
- (("LIBNCURSES REQUIRED") "LIBNCURSES")
- (("NCURSES REQUIRED") "NCURSES")
- (("FATAL_ERROR \"libncurses") "STATUS \"libncurses")
- (("\\$\\{NCURSES_LIBRARIES\\}") "ncurses"))
- #t)))))
+ #t)))))
(inputs
`(("boost" ,boost)
("fftwf" ,fftwf)
@@ -1986,7 +2014,7 @@ capabilities, custom envelopes, effects, etc.")
(home-page "http://yoshimi.sourceforge.net/")
(synopsis "Multi-paradigm software synthesizer")
(description
- "Yoshimi is a fork of ZynAddSubFX, a feature heavy realtime software
+ "Yoshimi is a fork of ZynAddSubFX, a feature-heavy real-time software
synthesizer. It offers three synthesizer engines, multitimbral and polyphonic
synths, microtonal capabilities, custom envelopes, effects, etc. Yoshimi
improves on support for JACK features, such as JACK MIDI.")
@@ -3460,6 +3488,62 @@ sample library.")
(home-page "https://musescore.org")
(license license:gpl2)))
+(define-public muse-sequencer
+ (package
+ (name "muse-sequencer")
+ (version "3.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/muse-sequencer/muse.git")
+ (commit (string-append "muse_"
+ (string-map (lambda (c)
+ (if (char=? c #\.)
+ #\_ c)) version)))))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "1nninz8qyqlxxjdnrm79y3gr3056pga9l2fsqh674jd3cjvafya3"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; there is no test target
+ #:configure-flags
+ (list "-DENABLE_LV2_SUPPLIED=OFF"
+ "-DENABLE_RTAUDIO=OFF" ; FIXME: not packaged
+ "-DENABLE_INSTPATCH=OFF" ; FIXME: not packaged
+ "-DENABLE_VST_NATIVE=OFF")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "muse3"))))))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("lash" ,lash)
+ ("jack" ,jack-1)
+ ("liblo" ,liblo)
+ ("dssi" ,dssi)
+ ("ladspa" ,ladspa)
+ ("lv2" ,lv2)
+ ("lilv" ,lilv)
+ ("sord" ,sord)
+ ("libsndfile" ,libsndfile)
+ ("libsamplerate" ,libsamplerate)
+ ("fluidsynth" ,fluidsynth)
+ ("pcre" ,pcre)
+ ("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("qttools" ,qttools)))
+ (home-page "http://muse-sequencer.org")
+ (synopsis "MIDI/Audio sequencer")
+ (description "MusE is a MIDI/Audio sequencer with recording and editing
+capabilities. Its audio sequencer supports the LADSPA, DSSI, and LV2 audio
+plugin formats; the MIDI sequencer provides a piano roll, a drum editor, a
+list view, and a score editor. MusE aims to be a complete multitrack virtual
+studio.")
+ (license license:gpl2+)))
+
(define-public dssi
(package
(name "dssi")
@@ -3475,7 +3559,7 @@ sample library.")
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
- ("jack-2" ,jack-2)
+ ("jack" ,jack-1)
("ladspa" ,ladspa)
("libsamplerate" ,libsamplerate)
("libsndfile" ,libsndfile)
@@ -3566,7 +3650,7 @@ specification and header.")
("dssi" ,dssi)
("flac" ,flac)
("fftwf" ,fftwf)
- ("jack-2" ,jack-2)
+ ("jack" ,jack-1)
("ladspa" ,ladspa)
("liblo" ,liblo)
("libsamplerate" ,libsamplerate)
@@ -3752,3 +3836,59 @@ for the DSSI Soft Synth Interface. A brief list of features:
@end enumerate
")
(license license:gpl2+)))
+
+(define-public libdiscid
+ (package
+ (name "libdiscid")
+ (version "0.6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://ftp.musicbrainz.org/pub/musicbrainz/libdiscid/libdiscid-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1f9irlj3dpb5gyfdnb1m4skbjvx4d4hwiz2152f83m0d9jn47r7r"))))
+ (arguments `(#:test-target "check"))
+ (build-system cmake-build-system)
+ (home-page "https://musicbrainz.org/doc/libdiscid")
+ (synopsis "Disc id reader library")
+ (description "libdiscid is a C library for creating MusicBrainz and freedb
+disc IDs from audio CDs. It reads a CD's table of contents (TOC) and generates
+an identifier which can be used to lookup the CD at MusicBrainz. Additionally,
+it provides a submission URL for adding the disc ID to the database and gathers
+ISRCs and the MCN (=UPC/EAN) from disc.")
+ (license license:lgpl2.1+)))
+
+(define-public libmusicbrainz
+ (package
+ (name "libmusicbrainz")
+ (version "5.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/metabrainz/libmusicbrainz/releases/download/release-"
+ version "/libmusicbrainz-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ikb9igyyk28jm34raxfzkw2qyn4nzzwsymdyprp7cmvi6g2ajb7")) ))
+ (build-system cmake-build-system)
+ (arguments `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (and
+ ;; requires network connections
+ ;; (zero? (system* "tests/mbtest"))
+ (zero? (system* "tests/ctest"))))))))
+ (inputs `(("neon" ,neon)
+ ("libxml2" ,libxml2)))
+ (native-inputs `(("pkg-config" ,pkg-config)))
+ (home-page "https://musicbrainz.org/doc/libmusicbrainz")
+ (synopsis "MusicBrainz client library")
+ (description "The MusicBrainz Client Library (libmusicbrainz), also known as
+mb_client, is a development library geared towards developers who wish to add
+MusicBrainz lookup capabilities to their applications.")
+ (license license:lgpl2.1+)))