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.scm303
1 files changed, 160 insertions, 143 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index ac2ed81895..e16e64af73 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -18,6 +18,7 @@
;;; Copyright © 2018 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -284,7 +285,7 @@ score, keyboard, guitar, drum and controller views.")
("pulseaudio" ,pulseaudio)
("qtbase" ,qtbase)
("qtx11extras" ,qtx11extras)
- ("sqlite" ,sqlite)
+ ("sqlite" ,sqlite-with-column-metadata)
("sparsehash" ,sparsehash)
("taglib" ,taglib)))
(home-page "http://clementine-player.org")
@@ -309,29 +310,27 @@ playing your music.")
(name "cmus")
(version "2.7.1")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/" name "/" name "/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/cmus/cmus.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0raixgjavkm7hxppzsc5zqbfbh2bhjcmbiplhnsxsmyj8flafyc1"))))
+ "0xd96py21bl869qlv1353zw7xsgq6v5s8szr0ldr63zj5fgc2ps5"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; cmus does not include tests
#:phases
(modify-phases %standard-phases
- (replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
-
- ;; It's an idiosyncratic configure script that doesn't
- ;; understand --prefix=..; it wants prefix=.. instead.
- (zero?
- (system* "./configure"
- (string-append "prefix=" out)))))))))
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; It's an idiosyncratic configure script that doesn't
+ ;; understand --prefix=..; it wants prefix=.. instead.
+ (invoke "./configure"
+ (string-append "prefix=" out))
+ #t))))))
;; TODO: cmus optionally supports the following formats, which haven't yet
;; been added to Guix:
;;
@@ -889,9 +888,10 @@ Sega Master System/Mark III, Sega Genesis/Mega Drive, BBC Micro
#t))
(add-after 'install 'install-info
(lambda _
- (zero? (system* "make"
- "-j" (number->string (parallel-job-count))
- "conf=www" "install-info")))))))
+ (invoke "make"
+ "-j" (number->string (parallel-job-count))
+ "conf=www" "install-info")
+ #t)))))
(inputs
`(("guile" ,guile-1.8)
("font-dejavu" ,font-dejavu)
@@ -1144,14 +1144,14 @@ your own lessons.")
(name "powertabeditor")
(version "2.0.0-alpha10")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/powertab/powertabeditor/archive/"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/powertab/powertabeditor.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1fr14ql0yhlqvh6y08yaanszm2nvca5i50rqym396kfvga3ky18x"))
+ "1z4fhdp71ck9synr12rg1p6365xnypd8ih40c5icj4si36khvksk"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -1185,14 +1185,14 @@ add_library( rapidjson INTERFACE IMPORTED )"))
(modify-phases %standard-phases
(replace 'check
(lambda _
- (zero? (system* "bin/pte_tests"
- ;; FIXME: these tests fail
- "exclude:Actions/EditStaff"
- "exclude:Formats/PowerTabOldImport/MergeMultiBarRests"
- "exclude:Score/ViewFilter/FilterRule"
- "exclude:Score/ViewFilter/ViewFilter"
- "exclude:Formats/PowerTabOldImport/Directions"
- ))))
+ (invoke "bin/pte_tests"
+ ;; FIXME: these tests fail
+ "exclude:Actions/EditStaff"
+ "exclude:Formats/PowerTabOldImport/MergeMultiBarRests"
+ "exclude:Score/ViewFilter/FilterRule"
+ "exclude:Score/ViewFilter/ViewFilter"
+ "exclude:Formats/PowerTabOldImport/Directions")
+ #t))
;; FIXME: This bug has been fixed upstream, but no release has been
;; made yet. See https://github.com/powertab/powertabeditor/issues/257
(add-after 'unpack 'fix-boost-bug
@@ -1257,12 +1257,14 @@ Editor. It is compatible with Power Tab Editor 1.7 and Guitar Pro.")
(name "jalv-select")
(version "0.8")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/brummer10/jalv_select/"
- "archive/V" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/brummer10/jalv_select.git")
+ (commit (string-append "V" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0zraagwr681b5s3qifxf399c7q93jz23c8sr42gmff9zqnvxc75q"))))
+ "0gqh768sbvn9ffyx1vqg9i57py9x9v4l65bk6wjsvgga4d7m83k1"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@@ -1277,6 +1279,13 @@ Editor. It is compatible with Power Tab Editor 1.7 and Guitar Pro.")
(string-append "ls -1 " (assoc-ref inputs "jalv") "/bin")))
(substitute* "jalv.select.h"
(("gtkmm.h") "gtkmm-2.4/gtkmm.h"))
+ #t))
+ (add-before 'reset-gzip-timestamps 'make-manpages-writable
+ (lambda* (#:key outputs #:allow-other-keys)
+ (for-each make-file-writable
+ (find-files (string-append (assoc-ref outputs "out")
+ "/share/man")
+ ".*\\.gz$"))
#t)))))
(inputs
`(("lilv" ,lilv)
@@ -1751,9 +1760,7 @@ export.")
(lambda _
(substitute* "tcl/pd-gui.tcl"
(("exec wish ") (string-append "exec " (which "wish8.6") " ")))
- #t))
- (add-after 'unpack 'autoconf
- (lambda _ (zero? (system* "bash" "./autogen.sh")))))))
+ #t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -1861,13 +1868,14 @@ using a system-independent interface.")
(name "portmidi-for-extempore")
(version "217")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/extemporelang/portmidi/"
- "archive/" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/extemporelang/portmidi.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235"))))
+ "1inriyrjf7xx2b7r54x0vmf9ngyqgr7g5060c22bwkbsgg53apzv"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; no tests
(native-inputs '())
@@ -2239,14 +2247,14 @@ from the command line.")
(define-public qtractor
(package
(name "qtractor")
- (version "0.9.2")
+ (version "0.9.3")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/qtractor/"
"qtractor-" version ".tar.gz"))
(sha256
(base32
- "1j3rpvdkw9rw48j4zyfn6rprp01csy4rl6zckcjyx0vh7vaycchr"))))
+ "1010gvkzdzdk39g1g6wx2j19ls0kdl6l9q51xzk2qik7h2fwxl71"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; no "check" target
@@ -2278,59 +2286,66 @@ follows a traditional multi-track tape recorder control paradigm.")
(license license:gpl2+)))
(define-public ams-lv2
- (package
- (name "ams-lv2")
- (version "1.2.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://github.com/blablack/ams-lv2/"
- "archive/" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1xacxyzqcj83g9c1gwfn36gg1c6yi15v7km4vidfidrjzb4x27fq"))))
- (build-system waf-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'remove-sse-flags
- (lambda* (#:key system #:allow-other-keys)
- (when (not (or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system)))
- (substitute* "wscript"
- (("'-msse', '-mfpmath=sse', ") ""))
- #t))))
- #:tests? #f)) ; no tests
- (inputs
- `(("lv2" ,lv2)
- ("lvtk" ,lvtk)
- ("gtkmm" ,gtkmm-2)
- ("gtk" ,gtk+-2)
- ("cairo" ,cairo)
- ("fftw" ,fftw)))
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (home-page "https://objectivewave.wordpress.com/ams-lv2/")
- (synopsis "Port of Alsa Modular Synth internal modules into LV2")
- (description "This set of LV2 plugins is a port of the internal modules
+ ;; Version 1.2.1 built with Python 3.7 raises an error in the waf-script.
+ ;; Therefore, we take two more commmits than 1.2.1 that introduce an updated
+ ;; waf-script and fix one error.
+ (let ((commit "377d166db54a787b48979171c5652d2eb4f1bbb5")
+ (revision "1"))
+ (package
+ (name "ams-lv2")
+ (version (git-version "1.2.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/blablack/ams-lv2.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ndgxcxjxwidg7436k0nb5clxkyi878k1j999sbbd1gk2fm0kcqm"))))
+ (build-system waf-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-sse-flags
+ (lambda* (#:key system #:allow-other-keys)
+ (unless (or (string-prefix? "x86_64" system)
+ (string-prefix? "i686" system))
+ (substitute* "wscript"
+ (("'-msse', '-mfpmath=sse', ") "")))
+ #t)))
+ #:tests? #f)) ; no tests
+ (inputs
+ `(("lv2" ,lv2)
+ ("lvtk" ,lvtk)
+ ("gtkmm" ,gtkmm-2)
+ ("gtk" ,gtk+-2)
+ ("cairo" ,cairo)
+ ("fftw" ,fftw)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://objectivewave.wordpress.com/ams-lv2/")
+ (synopsis "Port of Alsa Modular Synth internal modules into LV2")
+ (description "This set of LV2 plugins is a port of the internal modules
found in Alsa Modular Synth. These plugins are used to create modular
synthesizers and contain: VCO, VCF, VCA, LFO, slew limiter, envelopes, sample
and hold, etc.")
- (license license:gpl2)))
+ (license license:gpl2))))
(define-public gxtuner
(package
(name "gxtuner")
(version "2.4")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/brummer10/gxtuner/"
- "archive/v" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/brummer10/gxtuner.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1hn5qjac7qd00v0sp7ijhhc3sb26ks9bni06nngivva21h61xrjr"))))
+ "1fxd2akan2njlr7fpkh84830783qhh1gg7yakswqk5dd466dcn96"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@@ -2436,13 +2451,14 @@ tune-in sender list from @url{http://opml.radiotime.com}.")
(name "pianobar")
(version "2016.06.02")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/PromyLOPh/"
- name "/archive/" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/PromyLOPh/pianobar.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1hi5rr6jcr0kwf4xfz007ndwkjkp287lhwlsgfz6iryqa5n6jzcp"))))
+ "058fbdxp7n35hxwy3b8slfy4pb4n63cb173vfmywqa06wh1dv6f6"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
@@ -2672,13 +2688,14 @@ Songs can be searched by artist, name or even by a part of the song text.")
(define-public beets
(package
(name "beets")
- (version "1.4.6")
+ (version "1.4.7")
(source (origin
(method url-fetch)
(uri (pypi-uri "beets" version))
+ (patches (search-patches "beets-python-3.7-fix.patch"))
(sha256
(base32
- "0l2vfrknwcsm6bn83m7476qrz45qwgxcb5k0h7kn96kr70irn1v2"))))
+ "0w3gz69s9gf5ih69d4sddgh7ndj7658m621bp742zldvjakdncrs"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -2687,6 +2704,12 @@ Songs can be searched by artist, name or even by a part of the song text.")
(lambda _
(setenv "HOME" (string-append (getcwd) "/tmp"))
#t))
+ (add-after 'unpack 'make-python3.7-compatible
+ (lambda _
+ ;; See <https://github.com/beetbox/beets/issues/2978>.
+ (substitute* "beets/autotag/hooks.py"
+ (("re\\._pattern_type") "re.Pattern"))
+ #t))
(replace 'check
(lambda _
(invoke "nosetests" "-v"))))))
@@ -2723,14 +2746,14 @@ of tools for manipulating and accessing your music.")
(name "milkytracker")
(version "1.02.00")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/milkytracker/"
- "MilkyTracker/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/milkytracker/MilkyTracker.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "08v0l4ipvvwkwv4ywkc6c8a6xnpkyb02anj36w8q6gikxrs6xjvb"))
+ "05a6d7l98k9i82dwrgi855dnccm3f2lkb144gi244vhk1156n0ca"))
(modules '((guix build utils)))
;; Remove non-FSDG compliant sample songs.
(snippet
@@ -2763,16 +2786,16 @@ for improved Amiga ProTracker 2/3 compatibility.")
(define-public schismtracker
(package
(name "schismtracker")
- (version "20180513")
+ (version "20180810")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/" name "/" name "/archive/"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/schismtracker/schismtracker.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1yjfd02arb51n0vyv11qgpn6imh7hcqnc3953cbvgwb4cnrswk9f"))
+ "0cwp5fna14hjrlf652l96ja5cjq63is3cwg6pp4wbpx43mb7qb2d"))
(modules '((guix build utils)))
(snippet
;; Remove use of __DATE__ and __TIME__ for reproducibility.
@@ -2785,8 +2808,6 @@ for improved Amiga ProTracker 2/3 compatibility.")
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'autoconf
- (lambda _ (invoke "autoreconf" "-vfi")))
(add-before 'configure 'link-libm
(lambda _ (setenv "LIBS" "-lm") #t)))))
(native-inputs
@@ -3284,7 +3305,8 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.")
"1wg47vjw9djn99gbnsl2bcwj4xhdid61m4wrbn2nlp797flj91ic"))))
(build-system waf-build-system)
(arguments
- `(#:tests? #f ; no "check" target
+ `(#:python ,python-2
+ #:tests? #f ; no "check" target
#:configure-flags (list "--no-webkit")
#:phases
(modify-phases %standard-phases
@@ -3524,13 +3546,14 @@ are a C compiler and glib. Full API documentation and examples are included.")
(version "1.1.3")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://github.com/LMMS/lmms/archive/v"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/LMMS/lmms.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1g76z7ha3hd53vbqaq9n1qg6s3lw8zzaw51iny6y2bz0j1xqwcsr"))))
+ "03hhymc6d73fa3wbcqb7rm1l03zkw605k5i9kvkvjmv488bqh3pd"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests
@@ -3919,9 +3942,9 @@ OSC connections.")
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion "faust"
(delete-file "main.cpp")
- (zero? (system* "faust" "-i"
- "-a" "lv2synth.cpp"
- "-o" "main.cpp" "main.dsp"))))))))
+ (invoke "faust" "-i"
+ "-a" "lv2synth.cpp"
+ "-o" "main.cpp" "main.dsp")))))))
(inputs
`(("boost" ,boost)
("lv2" ,lv2)
@@ -4071,14 +4094,15 @@ ISRCs and the MCN (=UPC/EAN) from disc.")
(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"))))))))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; requires network connections
+ ;; (invoke "tests/mbtest")
+ (invoke "tests/ctest")
+ #t)))))
(inputs `(("neon" ,neon)
("libxml2" ,libxml2)))
(native-inputs `(("pkg-config" ,pkg-config)))
@@ -4146,17 +4170,15 @@ at @code{musicbrainz.org}.")
(version "0.10")
(source
(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/trizen/clyrics/archive/"
- version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/trizen/clyrics.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1l0cg26afnjv8cgk0jbiavbyvq55q1djyigzmi526rpcjjwq9jwn"))
- (file-name (string-append name "-" version ".tar.gz"))))
+ "1qvj4dyipkkdccx5hci4z0q23i54ldk6hh7x5m35a7f70rrj6fbk"))))
(build-system trivial-build-system)
- (native-inputs `(("tar" ,tar)
- ("gzip" ,gzip)))
(inputs
`(("bash" ,bash) ;for the wrapped program
("perl" ,perl)
@@ -4173,17 +4195,12 @@ at @code{musicbrainz.org}.")
(ice-9 match)
(srfi srfi-26))
(let* ((source (assoc-ref %build-inputs "source"))
- (tar (assoc-ref %build-inputs "tar"))
- (gzip (assoc-ref %build-inputs "gzip"))
(output (assoc-ref %outputs "out")))
(setenv "PATH"
(string-append
- (assoc-ref %build-inputs "gzip") "/bin" ":"
(assoc-ref %build-inputs "bash") "/bin" ":"
(assoc-ref %build-inputs "perl") "/bin" ":"))
- (invoke (string-append tar "/bin/tar") "xvf"
- source)
- (chdir ,(string-append "clyrics-" version))
+ (copy-recursively source (getcwd))
(patch-shebang "clyrics")
(substitute* "clyrics"
(("/usr/share") output))