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.scm57
1 files changed, 45 insertions, 12 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 1f6835f66c..ac4333168c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -2810,14 +2810,13 @@ 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.7")
+ (version "1.4.9")
(source (origin
(method url-fetch)
(uri (pypi-uri "beets" version))
- (patches (search-patches "beets-python-3.7-fix.patch"))
(sha256
(base32
- "0w3gz69s9gf5ih69d4sddgh7ndj7658m621bp742zldvjakdncrs"))))
+ "0m40rjimvfgy1dv04p8f8d5dvi2855v4ix99a9xr900cmcn476yj"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -2826,12 +2825,6 @@ 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"))))))
@@ -2855,7 +2848,7 @@ Songs can be searched by artist, name or even by a part of the song text.")
("python-mutagen" ,python-mutagen)
("python-pyyaml" ,python-pyyaml)
("python-unidecode" ,python-unidecode)))
- (home-page "http://beets.io")
+ (home-page "https://beets.io")
(synopsis "Music organizer")
(description "The purpose of beets is to get your music collection right
once and for all. It catalogs your collection, automatically improving its
@@ -4531,7 +4524,7 @@ controller.")
(define-public fmit
(package
(name "fmit")
- (version "1.2.6")
+ (version "1.2.13")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4540,7 +4533,7 @@ controller.")
(file-name (git-file-name name version))
(sha256
(base32
- "03nzkig5mw2rqwhwmg0qvc5cnk9bwh2wp13jh0mdrr935w0587mz"))))
+ "1qyskam053pvlap1av80rgp12pzhr92rs88vqs6s0ia3ypnixcc6"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -4589,3 +4582,43 @@ with error and volume history, and advanced features.")
;; Most of the code is under GPL2+, but some abstract or helper classes
;; are under LGPL2.1.
(license (list license:gpl2+ license:lgpl2.1))))
+
+(define-public mloop
+ (let ((commit "adebff98b0b4dc5872a03acb82e89c77cb29c127")
+ (revision "0"))
+ (package
+ (name "mloop")
+ (version (git-version "0.0.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://git.fuzzle.org/mloop")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "175gxvg5slq0bllcx1c381rjlq3xpxww8c3kpiw5i2kfr4m52myz"))))
+ (build-system waf-build-system)
+ (arguments
+ `(#:python ,python-2
+ #:tests? #f)) ; no "check" target
+ (inputs
+ `(("jack" ,jack-1)
+ ("ncurses" ,ncurses)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://fuzzle.org/~petern/mloop.html")
+ (synopsis "Live MIDI looper")
+ (description "mloop is a live MIDI looping system, using jack-midi.
+Loops are recorded, optionally with beat quantization, and can then be played
+back, either once or looping. A 'note cache' system is implemented to
+remember which notes are pressed and their velocities. This allows for a loop
+to start off with the currently pressed notes, making seamless loops much
+easier to perform. Features include:
+
+@itemize
+@item Quantisation; end a loop on a beat exactly.
+@item Delayed recording; wait for a MIDI event before starting a loop record.
+@item Adjust tempo; Playback speed of loops can be adjusted on the fly.
+@end itemize\n")
+ (license license:gpl2))))