diff options
Diffstat (limited to 'gnu/packages/music.scm')
-rw-r--r-- | gnu/packages/music.scm | 120 |
1 files changed, 109 insertions, 11 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 56e6d26493..c01bbc6e71 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016 Al McElrath <hello@yrns.org> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> -;;; Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org> +;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net> @@ -45,6 +45,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages backup) #:use-module (gnu packages base) ;libbdf + #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages cdrom) @@ -76,8 +77,9 @@ #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages java) - #:use-module (gnu packages linux) ; for alsa-utils #:use-module (gnu packages libffi) + #:use-module (gnu packages linux) ; for alsa-utils + #:use-module (gnu packages lirc) #:use-module (gnu packages llvm) #:use-module (gnu packages man) #:use-module (gnu packages mp3) @@ -675,7 +677,9 @@ Sega Master System/Mark III, Sega Genesis/Mega Drive, BBC Micro (("SHELL=/bin/sh") "SHELL=sh") ;; When checking the fontforge version do not consider the ;; version string that's part of the directory. - (("head -n") "tail -n")) + (("head -n") "tail -n") + ;; Also allow for SOURCE_DATE_EPOCH = 0 in fontforge. + (("20110222") "19700101")) (setenv "out" "www") (setenv "conf" "www") #t)) @@ -1084,7 +1088,7 @@ users to select LV2 plugins and run them with jalv.") (define-public synthv1 (package (name "synthv1") - (version "0.8.3") + (version "0.8.4") (source (origin (method url-fetch) (uri @@ -1092,7 +1096,7 @@ users to select LV2 plugins and run them with jalv.") "/synthv1-" version ".tar.gz")) (sha256 (base32 - "1yqh7jx431q01f15b3h4dh038yvmc4jcsr3vn2175kqgwfj9jqcg")))) + "0awk2zx0xa6vl6ah24zz0k2mwsx50hh5g1rh32mp790fp4x7l5s8")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -1118,7 +1122,7 @@ oscillators and stereo effects.") (define-public drumkv1 (package (name "drumkv1") - (version "0.8.3") + (version "0.8.4") (source (origin (method url-fetch) (uri @@ -1126,7 +1130,7 @@ oscillators and stereo effects.") "/drumkv1-" version ".tar.gz")) (sha256 (base32 - "0rvdvc81j4b4n64i7jmk58khry28al8p73g71srdv1kw7j65f2zv")))) + "0qqpklzy4wgw9jy0v2810j06712q90bwc69fp7da82536ba058a9")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -1153,7 +1157,7 @@ effects.") (define-public samplv1 (package (name "samplv1") - (version "0.8.3") + (version "0.8.4") (source (origin (method url-fetch) (uri @@ -1161,7 +1165,7 @@ effects.") "/samplv1-" version ".tar.gz")) (sha256 (base32 - "1lbxrn24fg1z659zbaakzq6z8gbax6z16di9v9bhhslk8w2mndik")))) + "107p2xsj066q2bil0xcgqrrn7lawp02wzf7qmlajcbnd79jhsi6i")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -1892,14 +1896,14 @@ computer's keyboard.") (define-public qtractor (package (name "qtractor") - (version "0.8.3") + (version "0.8.4") (source (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "0ggqp2pz6r0pvapbbil51fh5185rn0i9kgzm9ff8r8y1135zllk8")))) + "17bbjfn94843g5q1h7xh23fwyazpfgg4fw6drrn5wgk2vx7qpkis")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target (inputs @@ -3198,3 +3202,97 @@ specification and header.") ;; The DSSI interface is LGPL2.1+, some tests and examples are GPL2+. ;; The vast majority of examples are in the public domain. (license (list license:lgpl2.1+ license:gpl2+)))) + +(define-public rosegarden + (package + (name "rosegarden") + (version "17.04") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/rosegarden/rosegarden/" + version "/rosegarden-" version ".tar.bz2")) + (sha256 + (base32 + "1khfcj22asdhjh0jvhkqsz200wgmigkhsrcz09ffia5hqm0n32lq")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DUSE_QT5=1") ; "-DCMAKE_BUILD_TYPE=Release" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-tests + (lambda _ + (substitute* "CMakeLists.txt" + (("BUILD_TESTING OFF") "BUILD_TESTING ON") + ;; Make tests work. + ((" -fvisibility=hidden") "")) + #t)) + (add-after 'unpack 'fix-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/gui/general/ProjectPackager.cpp" + (("\"flac\\>") + (string-append "\"" (assoc-ref inputs "flac") "/bin/flac")) + (("\"wavpack\\>") + (string-append "\"" (assoc-ref inputs "wavpack") "/bin/wavpack")) + (("\"wvunpack\\>") + (string-append "\"" (assoc-ref inputs "wavpack") "/bin/wvunpack")) + (("\"bash\\>") + (string-append "\"" (assoc-ref inputs "bash") "/bin/bash")) + (("\"tar\\>") + (string-append "\"" (assoc-ref inputs "tar") "/bin/tar"))) + (substitute* "src/gui/general/LilyPondProcessor.cpp" + (("\"convert-ly\\>") + (string-append "\"" (assoc-ref inputs "lilypond") "/bin/convert-ly")) + (("\"lilypond\\>") + (string-append "\"" (assoc-ref inputs "lilypond") "/bin/lilypond"))) + #t)) + (add-after 'unpack 'make-reproducible + (lambda _ + ;; Prevent Last-Modified from being written. + ;; The "*.qm" files that are used in locale.qrc would have a new + ;; mtime otherwise that is written into qrc_locale.cpp in the + ;; end - except when we disable it. + (substitute* "src/CMakeLists.txt" + (("COMMAND [$][{]QT_RCC_EXECUTABLE[}]") + "COMMAND ${QT_RCC_EXECUTABLE} --format-version 1") + ;; Extraneous. + ;(("qt5_add_resources[(]rg_SOURCES ../data/data.qrc[)]") + ; "qt5_add_resources(rg_SOURCES ../data/data.qrc OPTIONS --format-version 1)") + ) + ;; Make hashtable traversal order predicable. + (setenv "QT_RCC_TEST" "1") ; important + #t)) + (add-before 'check 'prepare-check + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") + ;; Tests create files in $HOME/.local/share/rosegarden . + (mkdir-p "/tmp/foo") + (setenv "HOME" "/tmp/foo") + #t))))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("bash" ,bash) + ("dssi" ,dssi) + ("flac" ,flac) + ("fftwf" ,fftwf) + ("jack-2" ,jack-2) + ("ladspa" ,ladspa) + ("liblo" ,liblo) + ("libsamplerate" ,libsamplerate) + ("lilypond" ,lilypond) + ("lrdf" ,lrdf) + ("qtbase" ,qtbase) + ("tar" ,tar) + ("lirc" ,lirc) + ("wavpack" ,wavpack) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qtlinguist" ,qttools))) + (synopsis "Music composition and editing environment based around a MIDI +sequencer") + (description "Rosegarden is a music composition and editing environment +based around a MIDI sequencer that features a rich understanding of music +notation and includes basic support for digital audio.") + (home-page "http://www.rosegardenmusic.com/") + (license license:gpl2))) |