summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjgart <jgart@dismail.de>2021-11-11 04:12:54 -0500
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2021-11-15 11:17:50 +0100
commit50f3b082a728fdda78c78753e5c4fd15e7f483b2 (patch)
tree6a3ef20e5086dfe7e819ff765303e25cd8678002
parent1e9bed9ebe130e4ba7daa47207730a8e465584cd (diff)
gnu: Add music21.
* gnu/packages/music.scm (music21): New variable. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
-rw-r--r--gnu/packages/music.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 32ed4081b6..60cff2cc28 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1528,6 +1528,39 @@ Guile.")
;; more than an hour of silence, so double the max silent time.
(properties `((max-silent-time . 7200)))))
+(define-public music21
+ (package
+ (name "music21")
+ (version "7.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "music21" version))
+ (sha256
+ (base32 "17v2id8qm99xqymqsdczq173fmbdha4w109ahh8j1d9l5a7mqc86"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ ;; See: https://github.com/cuthbertLab/music21/issues/1164
+ (invoke "python" "-m" "music21.stream.tests")))))))
+ (propagated-inputs
+ `(("python-chardet" ,python-chardet)
+ ("python-joblib" ,python-joblib)
+ ("python-more-itertools" ,python-more-itertools)
+ ("python-webcolors" ,python-webcolors)))
+ (home-page "https://web.mit.edu/music21/")
+ (synopsis "Toolkit for Computational Musicology")
+ (description
+ "Music21 is a set of tools for helping scholars and other active
+listeners answer questions about music quickly and simply.")
+ ;; Software is dual-licensed.
+ (license (list license:bsd-3 license:lgpl3+))))
+
(define-public abjad
(package
(name "abjad")