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.scm175
1 files changed, 127 insertions, 48 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 34b37ca510..798aad11f7 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -55,6 +55,7 @@
;;; Copyright © 2023, 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2024 Parnikkapore <poomklao@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -135,6 +136,7 @@
#:use-module (gnu packages gnunet)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
+ #:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gpodder)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
@@ -190,6 +192,7 @@
#:use-module (gnu packages terminals)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
+ #:use-module (gnu packages textutils)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
@@ -598,6 +601,76 @@ you create custom user interfaces for your MIDI hardware.")
license:gpl3 ;JUCE
license:bsd-3)))))
+(define-public qmmp
+ (package
+ (name "qmmp")
+ (version "2.1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://qmmp.ylsoftware.com/files/qmmp/"
+ (version-major+minor version) "/"
+ "qmmp-" version ".tar.bz2"))
+ (sha256
+ (base32 "0wqy4dh5cci67d822zn2535l0vsvd9c9sqsbscz4j530c6y6g9z6"))))
+ (build-system qt-build-system)
+ (arguments
+ (list #:qtbase qtbase
+ #:tests? #f ; there are no tests
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'set-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/plugins/Ui/skinned/skinreader.cpp"
+ (("\"(tar|unzip)\"" _ name)
+ (let ((file (string-append "/bin/" name)))
+ (string-append "\"" (search-input-file inputs file) "\"")))))))))
+ (inputs
+ ;; Missing optional inputs:
+ ;; libsidplay2 ; input plugin
+ ;; projectm ; visualization plugin
+ (list alsa-lib
+ curl
+ enca
+ faad2
+ ffmpeg
+ flac
+ jack-2
+ libarchive
+ libbs2b
+ libcddb
+ libcdio-paranoia
+ libgme
+ libmad
+ libshout
+ libsndfile
+ libvorbis
+ libxmp
+ opusfile
+ opus
+ pipewire
+ pulseaudio
+ qtmultimedia
+ qttools
+ soxr
+ taglib
+ tar ; for loading skins
+ unzip ; for loading skins
+ wavpack
+ wildmidi))
+ (native-inputs
+ (list pkg-config))
+ (home-page "https://qmmp.ylsoftware.com")
+ (properties
+ `((release-monitoring-url . "https://qmmp.ylsoftware.com/downloads.php")))
+ (synopsis "Qt-based music player")
+ (description "Music player with support for most common audio formats, and
+plugins for various additional features such as visualization, effects and
+online service integration. In addition to a Qt-based interface it supports
+Winamp/XMMS skins.")
+ (license (list license:gpl2+ ; code
+ license:cc-by-sa4.0)))) ; src/plugins/Ui/skinned/glare
+
(define-public strawberry
(package
(name "strawberry")
@@ -2186,7 +2259,7 @@ your own lessons.")
(define-public powertabeditor
(package
(name "powertabeditor")
- (version "2.0.0-alpha14")
+ (version "2.0.0-alpha19")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2195,30 +2268,29 @@ your own lessons.")
(file-name (git-file-name name version))
(sha256
(base32
- "1wsvni2aa9h2bpndlic7ckch4n600ahwm56n521y5vxivwjx3jmj"))))
+ "1fbrfw1ky57nms47pcfdrrwpa2jmgc8vgc68sz96wkvs49zzm5d1"))))
(build-system cmake-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'check (lambda _ (invoke "bin/pte_tests")))
- (add-after 'unpack 'fix-pugixml-detection
- (lambda _
- (substitute* "cmake/third_party/pugixml.cmake"
- (("add_library") "#add_library"))
- #t)))))
+ (list
+ #:phases
+ '(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests? (invoke "bin/pte_tests")))))))
(inputs
- `(("alsa-lib" ,alsa-lib)
- ("boost" ,boost)
- ("minizip" ,minizip)
- ("pugixml" ,pugixml)
- ("qtbase" ,qtbase-5)
- ("rapidjson" ,rapidjson)
- ("rtmidi" ,rtmidi)
- ("timidity" ,timidity++)
- ("zlib" ,zlib)))
+ (list alsa-lib
+ boost
+ minizip
+ nlohmann-json
+ pugixml
+ qtbase-5
+ qttools-5 ;for Qt5LinguistTools
+ rtmidi
+ timidity++
+ zlib))
(native-inputs
(list doctest pkg-config))
- (home-page "https://github.com/powertab/powertabedito")
+ (home-page "https://github.com/powertab/powertabeditor")
(synopsis "Guitar tablature editor")
(description
"Power Tab Editor 2.0 is the successor to the famous original Power Tab
@@ -5899,8 +5971,6 @@ console music players.")
(build-system go-build-system)
(native-inputs
(list lua
- go-github-com-mattn-go-isatty
- go-github-com-mattn-go-colorable
go-github-com-aarzilli-golua
go-gitlab-com-ambrevar-damerau
go-gitlab-com-ambrevar-golua-unicode
@@ -6138,47 +6208,56 @@ and reverb.")
(define-public lsp-plugins
(package
(name "lsp-plugins")
- (version "1.2.3")
+ (version "1.2.15")
(source
(origin
(method url-fetch)
- (uri (string-append "https://github.com/sadko4u/lsp-plugins"
+ (uri (string-append "https://github.com/lsp-plugins/lsp-plugins"
"/releases/download/" version
"/lsp-plugins-src-" version ".tar.gz"))
(sha256
- (base32 "0asgwrkyncxz5h7kjkbwm78z8l2jndxvsrgd634m5x9n37gjsgvs"))))
+ (base32 "1bpkbmy8djz304rlsf9zp7bkyc874gnpfihkigqg4fj667x2xfcj"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags
- (list
- (string-append "CC=" ,(cc-for-target))
- "BUILD_MODULES=\"lv2 ladspa jack\"" "VST_UI=0"
- (string-append "PREFIX=" (assoc-ref %outputs "out"))
- (string-append "ETC_PATH=" (assoc-ref %outputs "out") "/etc"))
- #:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (invoke "make" "config" "TEST=1"
- (string-append "PREFIX=" out)
- (string-append "ETCDIR=" out "/etc")))))
- (replace 'check
- (lambda _
- (invoke ".build/host/lsp-plugin-fw/lsp-plugins-test" "utest"))))))
+ (list
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (invoke "make" "config"
+ "STRICT=1"
+ "TEST=1"
+ "FEATURES=clap doc jack ladspa lv2 vst2 xdg"
+ (string-append "PREFIX=" #$output)
+ (string-append "ETCDIR=" #$output "/etc"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke ".build/host/lsp-plugin-fw/lsp-plugins-test" "utest"))))
+ (add-after 'install 'move-large-subdirs
+ (lambda _
+ (define (move-to-output output path)
+ (let ((source (string-append #$output path))
+ (target (string-append output path)))
+ (mkdir-p (dirname target))
+ (rename-file source target)))
+ (move-to-output #$output:doc "/share/doc") ; 29MB
+ (move-to-output #$output:lv2 "/lib/lv2") ; 32MB
+ (move-to-output #$output:bin "/bin") ; Avoid cluttering xdg menu
+ (move-to-output #$output:bin "/share")
+ (move-to-output #$output:bin "/etc"))))))
(inputs
(list cairo
freetype
- hicolor-icon-theme
- jack-1
- ladspa
+ jack-2
libsndfile
libx11
libxrandr
- lv2
mesa))
- (native-inputs
- (list pkg-config php))
+ (native-inputs (list pkg-config php))
+ (outputs '("out" "doc" "lv2" "debug"))
(synopsis "Audio plugin collection")
(description "LSP (Linux Studio Plugins) is a collection of audio
plugins available as LADSPA/LV2 plugins and as standalone JACK