diff options
Diffstat (limited to 'gnu/packages/music.scm')
-rw-r--r-- | gnu/packages/music.scm | 213 |
1 files changed, 180 insertions, 33 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 492103b715..6b544b6b2e 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -847,7 +847,7 @@ MusePack, Monkey's Audio, and WavPack files.") (define-public extempore (package (name "extempore") - (version "0.8.6") + (version "0.8.9") (source (origin (method git-fetch) (uri (git-reference @@ -855,7 +855,7 @@ MusePack, Monkey's Audio, and WavPack files.") (commit (string-append "v" version)))) (sha256 (base32 - "182jy23qv115dipny7kglwbn21z55dp253w1ykm0kh8n6vkgs7gp")) + "16i12zl3g1zpx6lhg5pg821xirdf9rxx5m11b68inf83wn6hknhb")) (file-name (git-file-name name version)) (patches (search-patches "extempore-unbundle-external-dependencies.patch")) @@ -864,16 +864,12 @@ MusePack, Monkey's Audio, and WavPack files.") '(begin ;; Remove bundled sources. (map delete-file-recursively - '("src/portaudio" - "src/pcre")) + '("src/pcre")) #t)))) (build-system cmake-build-system) (arguments `(#:configure-flags (list "-DJACK=ON" "-DPACKAGE=ON" - "-DEXTERNAL_SHLIBS_AUDIO=OFF" - "-DEXTERNAL_SHLIBS_GRAPHICS=OFF" - "-DCMAKE_BUILD_TYPE=Release" (string-append "-DEXT_SHARE_DIR=" (assoc-ref %outputs "out") "/share")) @@ -958,7 +954,12 @@ MusePack, Monkey's Audio, and WavPack files.") (("COMMAND extempore" prefix) (string-append prefix " --sharedir " (getcwd) " --mcpu=generic --attr=none"))) - #t))))) + #t)) + (add-after 'unpack 'symlink-assets + (lambda* (#:key inputs #:allow-other-keys) + (let ((assets (assoc-ref inputs "extempore-assets"))) + (symlink assets "assets") + #t)))))) (inputs `(("llvm" ,(package @@ -972,6 +973,19 @@ MusePack, Monkey's Audio, and WavPack files.") (sha256 (base32 "1svdl6fxn8l01ni8mpm0bd5h856ahv3h9sdzgmymr6fayckjvqzs")))))) + ("extempore-assets" + ,(let ((commit "0c9f32c18169b3fbc24bc1ad66283125b54a0c85") + (revision "0") + (version "0.0.0")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/extemporelang/extempore-assets") + (commit commit))) + (file-name (git-file-name "extempore-assets" + (git-version version revision commit))) + (sha256 + (base32 "1pxmcbngd9qx8m71d5rfsmf4h31jnsnd3wjh8vb0rwskif22xz8l"))))) ("libffi" ,libffi) ("jack" ,jack-1) ("libsndfile" ,libsndfile) @@ -1538,9 +1552,9 @@ Guile.") ;; more than an hour of silence, so double the max silent time. (properties `((max-silent-time . 7200))))) -(define-public python-abjad +(define-public abjad (package - (name "python-abjad") + (name "abjad") (version "3.3") (source (origin @@ -1556,11 +1570,6 @@ Guile.") (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-source - (lambda _ - (substitute* "setup.py" - (("uqbar>=0.5.1, <0.5.0") "uqbar>=0.5.0")) - #t)) (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? @@ -1568,25 +1577,166 @@ Guile.") (invoke "python" "-m" "pytest" "tests") #t)))))) (native-inputs - `(("lilypond" ,lilypond) - ("python-black" ,python-black) + `(("python-black" ,python-black) ("python-flake8" ,python-flake8) ("python-iniconfig" ,python-iniconfig) ("python-isort" ,python-isort) ("python-mypy" ,python-mypy) - ("python-ply" ,python-ply) ("python-pytest" ,python-pytest) ("python-pytest-cov" ,python-pytest-cov) ("python-sphinx-autodoc-typehints" ,python-sphinx-autodoc-typehints))) + (inputs + `(("lilypond" ,lilypond))) (propagated-inputs - `(("python-quicktions" ,python-quicktions) + `(("python-ply" ,python-ply) + ("python-quicktions" ,python-quicktions) ("python-roman" ,python-roman) ("python-six" ,python-six) ("python-uqbar" ,python-uqbar))) (home-page "https://abjad.github.io") (synopsis "Python API for building LilyPond files") (description - "This package provides a Python API for building LilyPond files.") + "Abjad helps composers build up complex pieces of music notation in iterative +and incremental ways. Use Abjad to create a symbolic representation of all the notes, +rests, chords, tuplets, beams and slurs in any score. Because Abjad extends the Python +programming language, you can use Abjad to make systematic changes to music as you work. +Because Abjad wraps the LilyPond music notation package, you can use Abjad to control the +typographic detail of symbols on the page.") + (license license:expat))) + +(define-public python-abjad + (deprecated-package "python-abjad" abjad)) + +(define-public abjad-ext-rmakers + (package + (name "abjad-ext-rmakers") + (version "3.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Abjad/abjad-ext-rmakers") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03nry8lzh3s81yq4lw8y6j63m7zdsl20q7rvx9cfmp3rmbvlaycs")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "pytest" ".") + #t)))))) + (native-inputs + `(("lilypond" ,lilypond) + ("python-black" ,python-black) + ("python-flake8" ,python-flake8) + ("python-iniconfig" ,python-iniconfig) + ("python-isort" ,python-isort) + ("python-mypy" ,python-mypy) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-helpers-namespace" ,python-pytest-helpers-namespace))) + (propagated-inputs + `(("abjad" ,abjad))) + (home-page "https://abjad.github.io") + (synopsis "Abjad rhythm-maker exension package") + (description + "@code{abjad-ext-rmakers} includes a collection of classes for creating and +and manipulating rhythms such as accelerandi, taleas, and more.") + (license license:expat))) + +(define-public abjad-ext-nauert + (package + (name "abjad-ext-nauert") + (version "3.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Abjad/abjad-ext-nauert") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07vgfjh32vmf652lcl2vrbzr0h6nld00qbgwbf9i1kk3xwhvklc9")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "python" "-m" "pytest" "tests") + #t)))))) + (native-inputs + `(("lilypond" ,lilypond) + ("python-black" ,python-black) + ("python-flake8" ,python-flake8) + ("python-iniconfig" ,python-iniconfig) + ("python-isort" ,python-isort) + ("python-mypy" ,python-mypy) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-helpers-namespace" ,python-pytest-helpers-namespace))) + (propagated-inputs + `(("abjad" ,abjad))) + (home-page "https://abjad.github.io") + (synopsis "Abjad quantization extension, based on Paul Nauert's Q-Grids") + (description + "@code{abjad-ext-nauert} provides classes for dealing with composer and +music theorist Paul Nauert's quantization grids or Q-Grids, for short.") + (license license:expat))) + +(define-public abjad-ext-ipython + (package + (name "abjad-ext-ipython") + (version "3.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Abjad/abjad-ext-ipython") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1vv0alpiz0gf5lgjfvlh4km72dvrxfqkwzxl3k4amzci3i0jzbs2")))) + (build-system python-build-system) + (arguments + ;; UnboundLocalError: local variable 'output_path' referenced before assignment + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (setenv "HOME" (getcwd)) + (add-installed-pythonpath inputs outputs) + ;; From 'make jupyter-test' + (invoke "jupyter" "nbconvert" "--to=html" + "--ExecutePreprocessor.enabled=True" "tests/test.ipynb"))))))) + (native-inputs + `(("lilypond" ,lilypond) + ("python-black" ,python-black) + ("python-flake8" ,python-flake8) + ("python-iniconfig" ,python-iniconfig) + ("python-isort" ,python-isort) + ("python-mypy" ,python-mypy) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-helpers-namespace" ,python-pytest-helpers-namespace))) + (propagated-inputs + `(("abjad" ,abjad) + ("jupyter" ,jupyter))) + (home-page "https://abjad.github.io") + (synopsis "Abjad IPython Extension") + (description + "@code{abjad-ext-ipython} makes it possible to embed music notation in +@code{jupyter} notebooks.") (license license:expat))) (define-public non-sequencer @@ -4963,14 +5113,15 @@ specification and header.") (define-public rosegarden (package (name "rosegarden") - (version "21.06") + (version "21.06.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/rosegarden/rosegarden/" - version "/rosegarden-" version ".tar.bz2")) + (version-major+minor version) "/" + "rosegarden-" version ".tar.bz2")) (sha256 - (base32 "0rhbmygzh62hc3mkq60lh9r28wvfkhzzd5kspl1ll0h1ipjgvr6d")))) + (base32 "0yir279gxc5b298sr0fg9jxgdi75bb1gvvy4mh3pxqjsnp00sxc7")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DCMAKE_BUILD_TYPE=Release") @@ -4981,8 +5132,7 @@ specification and header.") (substitute* "CMakeLists.txt" (("BUILD_TESTING OFF") "BUILD_TESTING ON") ;; Make tests work. - ((" -fvisibility=hidden") "")) - #t)) + ((" -fvisibility=hidden") "")))) (add-after 'unpack 'fix-references (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/gui/general/ProjectPackager.cpp" @@ -5000,8 +5150,7 @@ specification and header.") (("\"convert-ly\\>") (string-append "\"" (assoc-ref inputs "lilypond") "/bin/convert-ly")) (("\"lilypond\\>") - (string-append "\"" (assoc-ref inputs "lilypond") "/bin/lilypond"))) - #t)) + (string-append "\"" (assoc-ref inputs "lilypond") "/bin/lilypond"))))) (add-after 'unpack 'make-reproducible (lambda _ ;; Prevent Last-Modified from being written. @@ -5016,16 +5165,14 @@ specification and header.") ;; "qt5_add_resources(rg_SOURCES ../data/data.qrc OPTIONS --format-version 1)") ) ;; Make hashtable traversal order predicable. - (setenv "QT_RCC_TEST" "1") ; important - #t)) + (setenv "QT_RCC_TEST" "1"))) ; important (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") - (setenv "XDG_RUNTIME_DIR" "/tmp/foo") - #t))))) + (setenv "XDG_RUNTIME_DIR" "/tmp/foo")))))) (inputs `(("alsa-lib" ,alsa-lib) ("bash" ,bash) @@ -5045,7 +5192,7 @@ specification and header.") ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config) - ("qtlinguist" ,qttools))) + ("qttools" ,qttools))) ;for qtlinguist (synopsis "Music composition and editing environment based around a MIDI sequencer") (description "Rosegarden is a music composition and editing environment @@ -6332,7 +6479,7 @@ as JACK standalone applications.") (method git-fetch) (uri (git-reference - (url "https://git.zrythm.org/git/zplugins") + (url "https://git.zrythm.org/zrythm/zplugins") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 |