;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.org>
;;; Copyright © 2019 raingloom <raingloom@protonmail.com>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
-;;; Copyright © 2019, 2020 Alexandros Theodotou <alex@zrythm.org>
+;;; Copyright © 2019, 2020, 2021 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Riku Viitanen <riku.viitanen0@gmail.com>
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2021 Leo Prikler <leo.prikler@student.tugraz.at>
+;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio) ;libsndfile
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
+ #:use-module (gnu packages sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages stb)
#:use-module (gnu packages tcl)
#:use-module (gnu packages video)
#:use-module (gnu packages vim) ;for 'xxd'
#:use-module (gnu packages web)
+ #:use-module (gnu packages webkit)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
(define-public strawberry
(package
(name "strawberry")
- (version "0.8.5")
+ (version "0.9.2")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "0lfbbmhfzwlhnjhzfk5zn8h71cabx47pzfkcw2nylkbqkz83r57r"))
+ "0d9asg21j9ai23sb35cimws8bd8fsnpha777rgscraa7i09q0rx2"))
(modules '((guix build utils)
(ice-9 regex)))
(snippet
(build-system cmake-build-system)
(arguments
`(#:test-target "run_strawberry_tests"
- #:configure-flags
- (list "-DUSE_SYSTEM_TAGLIB=TRUE"
- "-DBUILD_TESTS=TRUE")
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-program
(define-public denemo
(package
(name "denemo")
- (version "2.4.0")
+ (version "2.5.0")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://gnu/denemo/"
- "denemo-" version ".tar.gz"))
+ (uri (string-append "mirror://gnu/denemo/denemo-" version ".tar.gz"))
(sha256
- (base32 "145kq0zfgdadykl3i6na221i4s5wzdrcqq48amzyfarnrqk2rmpd"))))
+ (base32 "05kwy8894hsxr6123hc854j2qq2sxyjw721zk4g3vzz8pw29p887"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(define-public hydrogen
(package
(name "hydrogen")
- (version "1.0.1")
+ (version "1.0.2")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0snljpvbcgikhz610c325dgvayi0k512p3bglck9vvi90wsqx7l1"))))
+ (base32 "0nhn2njs8yyxcijxv5zgymf3211y6anzm0v9kn4vnd8kai7zwxxp"))))
(build-system cmake-build-system)
(arguments
`(#:test-target "tests"
audio and video).")
(license license:bsd-2)))
+(define-public fluida-lv2
+ (package
+ (name "fluida-lv2")
+ (version "0.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/brummer10/Fluida.lv2")
+ (commit (string-append "v" version))
+ (recursive? #t))) ; references specific commit of libxputty
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1v0bh4wcx79y832qigc3my8ixq0r4ica6z5fg2rg946pkh20x1a2"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no "check" target
+ #:make-flags
+ (list (string-append "INSTALL_DIR="
+ (assoc-ref %outputs "out") "/lib/lv2")
+ "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ `(("cairo" ,cairo)
+ ("libx11" ,libx11)
+ ("lv2" ,lv2)
+ ("fluidsynth" ,fluidsynth)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/brummer10/Fluida.lv2")
+ (synopsis "Fluidsynth as an LV2 audio plugin")
+ (description "Fluida is an audio plugin in the LV2 format that acts as
+a frontend for fluidsynth.")
+ (license license:gpl2+)))
+
(define-public surge-synth
(package
(name "surge-synth")
;; more than an hour of silence, so double the max silent time.
(properties `((max-silent-time . 7200)))))
+(define-public python-abjad
+ (package
+ (name "python-abjad")
+ (version "3.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Abjad/abjad")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1dzf5v7pawbzkb4qxp4s5z4r3gibkk705pag83yvgzkx6fd6jf2g"))))
+ (build-system python-build-system)
+ (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?
+ ;; See: https://stackoverflow.com/a/34140498
+ (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-ply" ,python-ply)
+ ("python-pytest" ,python-pytest-6)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-sphinx-autodoc-typehints" ,python-sphinx-autodoc-typehints)))
+ (propagated-inputs
+ `(("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.")
+ (license license:expat)))
+
(define-public non-sequencer
;; The latest tagged release is three years old and uses a custom build
;; system, so we take the last commit.
("txt2man" ,txt2man)
("libxml2" ,libxml2) ; for tests
("ghostscript" ,ghostscript)
- ("texinfo" ,texinfo)))
+ ("texinfo" ,texinfo-5)))
(home-page "https://www.gnu.org/software/solfege/")
(synopsis "Ear training")
(description
(define-public synthv1
(package
(name "synthv1")
- (version "0.9.20")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri
"/synthv1-" version ".tar.gz"))
(sha256
(base32
- "1g2i79gkl1j7i49djz6igkbvdmfwxhcg6kx97n63bcqcvvy03rqz"))))
+ "0wg4ywkqf307vln0y923p083xacb5ahr2ghzvb9gmqyszd7k2v15"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; there are no tests
(define-public drumkv1
(package
(name "drumkv1")
- (version "0.9.20")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri
"/drumkv1-" version ".tar.gz"))
(sha256
(base32
- "0y6njh1n0yai4g9dhg24hwc9khba44l4n5xizqcs6i4q7lyr9z48"))))
+ "1ym7kns7hfgxdwm2nzvpdm5vjxpkwb9dssjiic6rrpicv1p2v59m"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; there are no tests
(define-public samplv1
(package
(name "samplv1")
- (version "0.9.19")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri
"/samplv1-" version ".tar.gz"))
(sha256
(base32
- "1fwvk83sfvp1k6qyqv1a7a1l8sbm6azcldaiiqa3ls1vhl4m5wv4"))))
+ "1kz8hcpzhrkvxpah6irz5gbah4m7knjhi4rk5hs1kwiikn7p6vgk"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; there are no tests
(define-public padthv1
(package
(name "padthv1")
- (version "0.9.19")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri
"/padthv1-" version ".tar.gz"))
(sha256
(base32
- "06fkrc4xxzr3sa3c76lnkcm4q9k0xl5993bn60la0ja4sz2kp6r7"))))
+ "0s28l8vp9b85s4bdm18qm57dh8dx8rx7659r05p44828g4053ipl"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; there are no tests
(define-public drumstick
(package
(name "drumstick")
- (version "2.0.0")
+ (version "2.1.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/drumstick/"
version "/drumstick-" version ".tar.bz2"))
(sha256
(base32
- "088j0w3kr9i4lh78y0js0q8adlfzkr89xq2dxc8y3bafsgihax1x"))))
+ "06lz4kzpgg5lalcjb14pi35jxca5f4j6ckqf6mdxs1k42dfhjpjp"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
- #:configure-flags '("-DLIB_SUFFIX=")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-docbook
("docbook-xsl" ,docbook-xsl)
("doxygen" ,doxygen)
("graphviz" ,graphviz))) ; for dot
- (home-page "http://drumstick.sourceforge.net/")
+ (home-page "https://drumstick.sourceforge.io/")
(synopsis "C++ MIDI library")
(description
"Drumstick is a set of MIDI libraries using C++/Qt5 idioms and style. It
(define-public vmpk
(package
(name "vmpk")
- (version "0.8.0")
+ (version "0.8.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/vmpk/vmpk/"
version "/vmpk-" version ".tar.bz2"))
(sha256
(base32
- "0wn45c4sbvan7schq93zmsgg5fcf144mbbawxn5kq699vrbc3473"))))
+ "1kv256j13adk4ib7r464gsl4vjhih820bq37ddhqfyfd07wh53a2"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
(define-public qtractor
(package
(name "qtractor")
- (version "0.9.19")
+ (version "0.9.21")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.sourceforge.net/qtractor/"
"qtractor-" version ".tar.gz"))
(sha256
(base32
- "0gdr1hvda56vmv4998z9xcqsp7da6lplj00f217x9g2i2snyvkzp"))))
+ "12hn17hqs3jndv6238wj8yhw07n99s0zachab4kfvhwa0qfflsbl"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; no "check" target
streams on an individual packet/page level.")
(license license:gpl2))) ; "later version" never mentioned
-(define-public python2-mutagen
- (package-with-python2 python-mutagen))
-
(define-public python-mediafile
(package
(name "python-mediafile")
(define-public sooperlooper
(package
(name "sooperlooper")
- (version "1.7.4")
+ (version "1.7.6")
(source
(origin
(method url-fetch)
(uri (string-append "http://essej.net/sooperlooper/sooperlooper-"
version ".tar.gz"))
(sha256
- (base32 "1jjvq4aflbyr3nr8b318k1vkad16xfa1jkqn9ckzw4419qc6c1k5"))))
+ (base32 "0kbb1pj62rl32c88j6p7dg823kvs0gb5s42qy3bl6yg0wn10dksj"))))
(build-system gnu-build-system)
(arguments
`(#:phases
studio.")
(license license:gpl2+)))
+(define-public gsequencer
+ (package
+ (name "gsequencer")
+ (version "3.7.48")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/gsequencer.git/")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0pqaj09x3lzcj0zbbkqpyaky9i1w462bhhvg1akh73nzwvyy46zd"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'prepare-x-for-test
+ (lambda _
+ (system "Xvfb &")
+ (setenv "DISPLAY" ":0")
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("cunit" ,cunit)
+ ("gettext" ,gettext-minimal)
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk-doc" ,gtk-doc)
+ ("libtool" ,libtool)
+ ("libxslt" ,libxslt)
+ ("pkg-config" ,pkg-config)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("dssi" ,dssi)
+ ("fftw" ,fftw)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gstreamer" ,gstreamer)
+ ("gtk+" ,gtk+)
+ ("jack" ,jack-1)
+ ("ladspa" ,ladspa)
+ ("libinstpatch" ,libinstpatch)
+ ("libsamplerate" ,libsamplerate)
+ ("libsndfile" ,libsndfile)
+ ("libsoup" ,libsoup)
+ ("libuuid" ,util-linux "lib")
+ ("libxml2" ,libxml2)
+ ("lv2" ,lv2)
+ ("pulseaudio" ,pulseaudio)
+ ("webkitgtk" ,webkitgtk)))
+ (home-page "https://nongnu.org/gsequencer/")
+ (synopsis "Advanced Gtk+ Sequencer")
+ (description
+ "GSequencer allows you to play, capture and create music. There is a piano
+roll, automation and wave form editor. It has machines for playing drum samples,
+Soundfont2 sound containers and synthesizers. They usually can be connected to a
+MIDI input source (instrument). It has support for various audio backends like
+ALSA, Pulseaudio, JACK, OSSv4 and CoreAudio.")
+ (license license:gpl3+)))
+
(define-public dssi
(package
(name "dssi")
(home-page "https://gitlab.com/iurie-sw/geonkick")
(license license:gpl3+)))
+(define-public mamba
+ (package
+ (name "mamba")
+ (version "2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/brummer10/Mamba")
+ (commit (string-append "v" version))
+ (recursive? #t))) ; references specific commit of libxputty
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1bq6sqsij3cdwcsj3wpsnivi4c7jl4l5gwfywhqnib70v60smdja"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no "check" target
+ #:make-flags
+ (list (string-append "PREFIX="
+ (assoc-ref %outputs "out"))
+ (string-append "CC=" ,(cc-for-target)))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("cairo" ,cairo)
+ ("fluidsynth" ,fluidsynth)
+ ("jack" ,jack-1)
+ ("liblo" ,liblo)
+ ("libsigc++" ,libsigc++)
+ ("libsmf" ,libsmf)
+ ("libx11" ,libx11)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/brummer10/Mamba")
+ (synopsis "Virtual MIDI keyboard and MIDI file player/recorder for JACK")
+ (description "Mamba is a virtual MIDI keyboard and MIDI file
+player/recorder for the JACK Audio Connection Kit. It comes with predefined
+keymaps for QWERTZ, QWERTY and AZERTY keyboards and also allows custom
+ones.")
+ (license license:bsd-0)))
+
(define-public dpf-plugins
(package
(name "dpf-plugins")