* [bug#69593] [PATCH 1/3] gnu: Add fluidplug-lv2.
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
@ 2024-03-06 20:20 ` Giacomo Leidi via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] Add FluidPlug paul via Guix-patches via
` (4 subsequent siblings)
5 siblings, 2 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-03-06 20:20 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm: New file;
* gnu/local.mk: Add it.
Change-Id: Iec61d692010f9d7635de2cf27c32e1356225ca09
---
gnu/local.mk | 1 +
gnu/packages/fluidplug.scm | 319 +++++++++++++++++++++++++++++++++++++
2 files changed, 320 insertions(+)
create mode 100644 gnu/packages/fluidplug.scm
diff --git a/gnu/local.mk b/gnu/local.mk
index 83937db4c8..16fa6dc1e1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -277,6 +277,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/flashing-tools.scm \
%D%/packages/flex.scm \
%D%/packages/fltk.scm \
+ %D%/packages/fluidplug.scm \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
new file mode 100644
index 0000000000..b45d3a85b5
--- /dev/null
+++ b/gnu/packages/fluidplug.scm
@@ -0,0 +1,319 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages fluidplug)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses)
+ #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix records)
+ #:use-module (guix utils)
+ #:use-module (gnu packages audio)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (srfi srfi-1)
+ #:export (fluidplug-plugin
+ fluidplug-plugin?
+ fluidplug-plugin-name
+ fluidplug-plugin-path
+ fluidplug-plugin-hash
+ fluidplug-plugin-license))
+
+(define-record-type* <fluidplug-plugin>
+ fluidplug-plugin make-fluidplug-plugin
+ fluidplug-plugin?
+ (name fluidplug-plugin-name) ;string
+ (hash fluidplug-plugin-hash) ;string
+ (path fluidplug-plugin-path) ;string
+ (license fluidplug-plugin-license ;license
+ (default license:cc-by-sa4.0)))
+
+(define (fluidplug-plugin->package-name record)
+ (string-append "fluidplug-"
+ (string-downcase
+ (string-replace-substring
+ (fluidplug-plugin-name record) "_" "-"))
+ "-lv2"))
+
+(define (fluidplug-plugin->origin record)
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://download.linuxaudio.org/"
+ "musical-instrument-libraries/sf2/"
+ (fluidplug-plugin-path record)))
+ (sha256
+ (base32 (fluidplug-plugin-hash record)))))
+
+(define (fluidplug-plugin->local-path record)
+ (string-append "./" (fluidplug-plugin-name record) ".lv2/"
+ (basename (fluidplug-plugin-path record))))
+
+(define airfont320-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AirFont320")
+ (path "airfont_a340u.tar.7z")
+ (hash "1x4xzm4khq823i4p18ydbkjza2nv3hzwyxp7vf3gzqs374jdcqbw")
+ (license license:gpl2)))
+
+(define avl-drumkits-perc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AVL_Drumkits_Perc")
+ (path "AVL-Drumkits-1.1-SF2-splitted/AVL_Drumkits_Perc_1.1.tar.7z")
+ (hash "0l1zvzw9dg922wf9llcl9zlw5ybjmayg7yqacp253xcr2jz1hn7m")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4a-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4A")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4A-1.1.tar.7z")
+ (hash "0flzlg5m2r3df8dchydzg3xllcv7ignr7hx6qxzy51s6gzrlbzli")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4b-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4B")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4B-1.1.tar.7z")
+ (hash "1z5q8z4k81xnbcv0gpc2xgrzqm9fg4n2yly1kaw82q7sm29vi0z9")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_5-1.1.tar.7z")
+ (hash "0mg41wc912sfj2mydn86ychwk21l3ngbn7k3qsm6jgf1ipmsip9y")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-4-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_4")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_4-1.1.tar.7z")
+ (hash "0pcswg4hlyn8j6nghbwvxa71ibp6r0wxcbxjzxs4iim43vpxc659")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_5-1.1.tar.7z")
+ (hash "18hhmi1d1i7gr2rp4wn28pnfwl825rmhmjnvxvvcwdmis6nad4gm")
+ (license license:cc-by-sa3.0)))
+
+(define fluidgm-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGM")
+ (path "fluidr3.tar.7z")
+ (hash "00ka1b2pxn0g2g0hm7kdg5w785pfx8f9585238d183wjdkc3a8m6")
+ (license license:expat)))
+
+(define fluidbass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBass")
+ (path "fluidr3-splitted/fluidr3gm_bass.sf2.tar.7z")
+ (hash "1zhixrxkwvmn6xkpy9f8zkrwxmaqwdcx0jz7zg8lc2amqkx9wqan")))
+
+(define fluidbrass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBrass")
+ (path "fluidr3-splitted/fluidr3gm_brass.sf2.tar.7z")
+ (hash "027l3q4q9011xzbzsrsp5nj3h05w9dj7d8b943xzck7q4sp9alkp")))
+
+(define fluidchromperc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidChromPerc")
+ (path "fluidr3-splitted/fluidr3gm_chromaticpercussion.sf2.tar.7z")
+ (hash "1233fh36wlifrawh57v8vycxc0g4pbvy3qr9f596g9n7mm4h51f7")))
+
+(define fluiddrums-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidDrums")
+ (path "fluidr3-splitted/fluidr3gm_drums.sf2.tar.7z")
+ (hash "01pv3aj52pz8xy29acprwkb69jxhrn64kx7w29ch5bl091lccqgr")))
+
+(define fluidensemble-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEnsemble")
+ (path "fluidr3-splitted/fluidr3gm_ensemble.sf2.tar.7z")
+ (hash "0rswcgzapcjmwddh2hgicym27hqz3p43r2s8j7hy1s40hzk3nbax")))
+
+(define fluidethnic-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEthnic")
+ (path "fluidr3-splitted/fluidr3gm_ethnic.sf2.tar.7z")
+ (hash "0z1z37wn6lw1n919bkpfirachg5wwddi7f0g4l9vimazv34ds1b1")))
+
+(define fluidguitars-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGuitars")
+ (path "fluidr3-splitted/fluidr3gm_guitar.sf2.tar.7z")
+ (hash "1d5jxx4sgbyh9sqmfksggcsri9hal7mw83a6h1vqb9xf59gnmx1i")))
+
+(define fluidorgans-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidOrgans")
+ (path "fluidr3-splitted/fluidr3gm_organ.sf2.tar.7z")
+ (hash "12zlq28cmr2hsgn1319hidzcm8yifx6vsqsqk544z3qkhc8cg4fr")))
+
+(define fluidpercussion-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPercussion")
+ (path "fluidr3-splitted/fluidr3gm_percussive.sf2.tar.7z")
+ (hash "1gql0g1zk09n6r90mav47khdc406jhmg5iql6i2zjmg9l7yg65n3")))
+
+(define fluidpianos-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPianos")
+ (path "fluidr3-splitted/fluidr3gm_piano.sf2.tar.7z")
+ (hash "06a817xvx7qj8plr1vhpanbdr97cbmzky0pp6xhff916s5k0jg2r")))
+
+(define fluidpipes-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPipes")
+ (path "fluidr3-splitted/fluidr3gm_pipe.sf2.tar.7z")
+ (hash "09wzvsabcif27687g71g4m75zz08zpwpm2dzwh8a7xsfi5qdynf2")))
+
+(define fluidreeds-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidReeds")
+ (path "fluidr3-splitted/fluidr3gm_reed.sf2.tar.7z")
+ (hash "1yb0whi67wz7ag6hcfdns69m1ic3fq6firvbb893ilnx8h17yjak")))
+
+(define fluidsoundfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSoundFX")
+ (path "fluidr3-splitted/fluidr3gm_soundeffects.sf2.tar.7z")
+ (hash "0sg8gca9735gy0pna63vgsfnabk54dl30n1lnhcf976n7y0npzfx")))
+
+(define fluidstrings-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidStrings")
+ (path "fluidr3-splitted/fluidr3gm_strings.sf2.tar.7z")
+ (hash "1nnxr62i3p3hhdpwlly62c4cvf7f3dzq818fmlnlxp25215h17bs")))
+
+(define fluidsynthfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthFX")
+ (path "fluidr3-splitted/fluidr3gm_syntheffects.sf2.tar.7z")
+ (hash "0rlq58v9m6wjk45kxmza54y8fkj1b8y1zg00r80nwyqz6rylgjh4")))
+
+(define fluidsynthleads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthLeads")
+ (path "fluidr3-splitted/fluidr3gm_synthlead.sf2.tar.7z")
+ (hash "0axi5dyqf8zh1gn82qq0jpzr0cgbsjn4xm0yrlqld4k6h9ggj475")))
+
+(define fluidsynthpads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthPads")
+ (path "fluidr3-splitted/fluidr3gm_synthpad.sf2.tar.7z")
+ (hash "1q4pd6ymb08yc6rz68wlidjp5kp7pygc2aw45djw9wr8id6pnadi")))
+
+(define-public fluidplug-plugins
+ (list airfont320-fluidplug-plugin
+ avl-drumkits-perc-fluidplug-plugin
+ black-pearl-4a-fluidplug-plugin
+ black-pearl-4b-fluidplug-plugin
+ black-pearl-5-fluidplug-plugin
+ red-zeppelin-4-fluidplug-plugin
+ red-zeppelin-5-fluidplug-plugin
+ fluidgm-fluidplug-plugin
+ fluidbass-fluidplug-plugin
+ fluidbrass-fluidplug-plugin
+ fluidchromperc-fluidplug-plugin
+ fluiddrums-fluidplug-plugin
+ fluidensemble-fluidplug-plugin
+ fluidethnic-fluidplug-plugin
+ fluidguitars-fluidplug-plugin
+ fluidorgans-fluidplug-plugin
+ fluidpercussion-fluidplug-plugin
+ fluidpianos-fluidplug-plugin
+ fluidpipes-fluidplug-plugin
+ fluidreeds-fluidplug-plugin
+ fluidsoundfx-fluidplug-plugin
+ fluidstrings-fluidplug-plugin
+ fluidsynthfx-fluidplug-plugin
+ fluidsynthleads-fluidplug-plugin
+ fluidsynthpads-fluidplug-plugin))
+
+(define-public fluidplug-lv2
+ (let ((version "0.0.5")
+ (revision "0")
+ (commit "38d7d0d5259c89199be3cf56768edf0d41bfd881"))
+ (package
+ (name "fluidplug-lv2")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/falkTX/FluidPlug")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0k4wjcvpgf4nk4d5b40x5zckfgp22b4i3npcahqbr16hh21cjfjj"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; SoundFonts can't be downloaded at build time
+ ;; in Guix, so it is disabled.
+ (substitute* "Makefile"
+ (("wget") "# wget"))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ ;; There are no tests.
+ #:tests? #f
+ #:make-flags #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX=")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-plugin
+ (lambda _
+ (use-modules (srfi srfi-1))
+ (for-each
+ (lambda (p)
+ (define source (first p))
+ (define target (second p))
+ (symlink source target))
+ '(#$@(map
+ (lambda (p)
+ (list (fluidplug-plugin->origin p)
+ (fluidplug-plugin->local-path p)))
+ fluidplug-plugins)))))
+ (delete 'configure)
+ (add-before 'build 'setenv
+ (lambda _
+ (setenv "CC" "gcc"))))))
+ (native-inputs
+ (list lv2 gnu-make p7zip pkg-config))
+ (inputs (list fluidsynth))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "LV2_PATH")
+ (files '("lib/lv2")))))
+ (synopsis
+ "SoundFonts as LV2 plugins via FluidSynth")
+ (description
+ "@code{FluidPlug} provides SoundFonts as LV2 plugins via FluidSynth.")
+ (home-page "https://github.com/falkTX/FluidPlug")
+ (license
+ (delete-duplicates
+ (map fluidplug-plugin-license fluidplug-plugins))))))
base-commit: f18d13b5f89c161c6ee88d15ecdaa8d973ee4503
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH 2/3] gnu: Add fluidplug plugins.
2024-03-06 20:20 ` [bug#69593] [PATCH 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-03-06 20:20 ` Giacomo Leidi via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-03-06 20:20 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm (fluidplug-plugin->package): New variable;
(fluidplug-airfont320-lv2): new variable;
(fluidplug-avl-drumkits-perc-lv2): new variable;
(fluidplug-black-pearl-4a-lv2): new variable;
(fluidplug-black-pearl-4b-lv2): new variable;
(fluidplug-black-pearl-5-lv2): new variable;
(fluidplug-red-zeppelin-4-lv2): new variable;
(fluidplug-red-zeppelin-5-lv2): new variable;
(fluidplug-fluidgm-lv2): new variable;
(fluidplug-fluidbass-lv2): new variable;
(fluidplug-fluidbrass-lv2): new variable;
(fluidplug-fluidchromperc-lv2): new variable;
(fluidplug-fluiddrums-lv2): new variable;
(fluidplug-fluidensemble-lv2): new variable;
(fluidplug-fluidethnic-lv2): new variable;
(fluidplug-fluidguitars-lv2): new variable;
(fluidplug-fluidorgans-lv2): new variable;
(fluidplug-fluidpercussion-lv2): new variable;
(fluidplug-fluidpianos-lv2): new variable;
(fluidplug-fluidpipes-lv2): new variable;
(fluidplug-fluidreeds-lv2): new variable;
(fluidplug-fluidsoundfx-lv2): new variable;
(fluidplug-fluidstrings-lv2): new variable;
(fluidplug-fluidsynthfx-lv2): new variable;
(fluidplug-fluidsynthleads-lv2): new variable;
(fluidplug-fluidsynthpads-lv2): new variable.
Change-Id: If67aa88f6dd1e7c889ea7e42c418e1157699312b
---
gnu/packages/fluidplug.scm | 126 +++++++++++++++++++++++++++++++++++++
1 file changed, 126 insertions(+)
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
index b45d3a85b5..4838b09dcc 100644
--- a/gnu/packages/fluidplug.scm
+++ b/gnu/packages/fluidplug.scm
@@ -317,3 +317,129 @@ (define-public fluidplug-lv2
(license
(delete-duplicates
(map fluidplug-plugin-license fluidplug-plugins))))))
+
+(define (fluidplug-plugin->package record)
+ (package
+ (inherit fluidplug-lv2)
+ (name (fluidplug-plugin->package-name record))
+ (arguments
+ (substitute-keyword-arguments (package-arguments fluidplug-lv2)
+ ((#:make-flags make-flags)
+ #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX="))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'unpack-plugin
+ (lambda _
+ (symlink #$(fluidplug-plugin->origin record)
+ #$(fluidplug-plugin->local-path record))))
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke `("make" ,@make-flags
+ #$(fluidplug-plugin-name record)))))
+ (replace 'install
+ (lambda _
+ (let* ((plugin-directory
+ (string-append #$(fluidplug-plugin-name record)
+ ".lv2"))
+ (lib (string-append #$output "/lib/lv2"))
+ (share/doc (string-append #$output "/share/doc"))
+ (plugin-lib (string-append lib "/" plugin-directory)))
+
+ ;; Install plugin
+ (for-each
+ (lambda (f)
+ (install-file f plugin-lib))
+ (find-files plugin-directory
+ "^.*\\.(sf2|so|ttl)$"))
+
+ ;; Install license
+ (for-each
+ (lambda (f)
+ (install-file f share/doc))
+ (find-files plugin-directory "(README|License\\.pdf)"))
+
+ ;; Install UI
+ (copy-recursively (string-append plugin-directory "/modgui")
+ (string-append plugin-lib "/modgui")))))))))
+ (description
+ (string-append (package-description fluidplug-lv2) "
+
+This package provides the @code{" (fluidplug-plugin-name record)
+"} LV2 plugin."))
+ (license (fluidplug-plugin-license record))))
+
+(define-public fluidplug-airfont320-lv2
+ (fluidplug-plugin->package airfont320-fluidplug-plugin))
+
+(define-public fluidplug-avl-drumkits-perc-lv2
+ (fluidplug-plugin->package avl-drumkits-perc-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4a-lv2
+ (fluidplug-plugin->package black-pearl-4a-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4b-lv2
+ (fluidplug-plugin->package black-pearl-4b-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-5-lv2
+ (fluidplug-plugin->package black-pearl-5-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-4-lv2
+ (fluidplug-plugin->package red-zeppelin-4-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-5-lv2
+ (fluidplug-plugin->package red-zeppelin-5-fluidplug-plugin))
+
+(define-public fluidplug-fluidgm-lv2
+ (fluidplug-plugin->package fluidgm-fluidplug-plugin))
+
+(define-public fluidplug-fluidbass-lv2
+ (fluidplug-plugin->package fluidbass-fluidplug-plugin))
+
+(define-public fluidplug-fluidbrass-lv2
+ (fluidplug-plugin->package fluidbrass-fluidplug-plugin))
+
+(define-public fluidplug-fluidchromperc-lv2
+ (fluidplug-plugin->package fluidchromperc-fluidplug-plugin))
+
+(define-public fluidplug-fluiddrums-lv2
+ (fluidplug-plugin->package fluiddrums-fluidplug-plugin))
+
+(define-public fluidplug-fluidensemble-lv2
+ (fluidplug-plugin->package fluidensemble-fluidplug-plugin))
+
+(define-public fluidplug-fluidethnic-lv2
+ (fluidplug-plugin->package fluidethnic-fluidplug-plugin))
+
+(define-public fluidplug-fluidguitars-lv2
+ (fluidplug-plugin->package fluidguitars-fluidplug-plugin))
+
+(define-public fluidplug-fluidorgans-lv2
+ (fluidplug-plugin->package fluidorgans-fluidplug-plugin))
+
+(define-public fluidplug-fluidpercussion-lv2
+ (fluidplug-plugin->package fluidpercussion-fluidplug-plugin))
+
+(define-public fluidplug-fluidpianos-lv2
+ (fluidplug-plugin->package fluidpianos-fluidplug-plugin))
+
+(define-public fluidplug-fluidpipes-lv2
+ (fluidplug-plugin->package fluidpipes-fluidplug-plugin))
+
+(define-public fluidplug-fluidreeds-lv2
+ (fluidplug-plugin->package fluidreeds-fluidplug-plugin))
+
+(define-public fluidplug-fluidsoundfx-lv2
+ (fluidplug-plugin->package fluidsoundfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidstrings-lv2
+ (fluidplug-plugin->package fluidstrings-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthfx-lv2
+ (fluidplug-plugin->package fluidsynthfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthleads-lv2
+ (fluidplug-plugin->package fluidsynthleads-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthpads-lv2
+ (fluidplug-plugin->package fluidsynthpads-fluidplug-plugin))
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH 3/3] teams: Add FluidPlug team.
2024-03-06 20:20 ` [bug#69593] [PATCH 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
@ 2024-03-06 20:20 ` Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-03-06 20:20 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi
* etc/teams.scm (fluidplug): New team; add Giacomo to it.
Change-Id: I78af3e3ab865a9a740d69598c3149e7ad0270893
---
etc/teams.scm | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/etc/teams.scm b/etc/teams.scm
index e2da31a2b4..bfcc8c8dad 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -567,6 +567,12 @@ (define-team zig
"guix/build/zig-build-system.scm"
"guix/build-system/zig.scm")))
+(define-team fluidplug
+ (team 'fluidplug
+ #:name "FluidPlug"
+ #:description "FluidPlug LV2 plugins"
+ #:scope (list "gnu/packages/fluidplug.scm")))
+
\f
(define-member (person "Eric Bavier"
"bavier@posteo.net")
@@ -724,6 +730,10 @@ (define-member (person "Mark H Weaver"
"mhw@netris.org")
mozilla)
+(define-member (person "Giacomo Leidi"
+ "goodoldpaul@autistici.org")
+ fluidplug)
+
\f
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] Add FluidPlug
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-04-02 22:37 ` paul via Guix-patches via
2024-05-03 22:41 ` paul via Guix-patches via
2024-04-02 22:37 ` [bug#69593] [PATCH v2 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
` (3 subsequent siblings)
5 siblings, 1 reply; 17+ messages in thread
From: paul via Guix-patches via @ 2024-04-02 22:37 UTC (permalink / raw)
To: 69593
Hello Guixers,
I'm sending an updated patchset rebased on current master.
Thank you for your work,
giacomo
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v2 1/3] gnu: Add fluidplug-lv2.
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
2024-03-06 20:20 ` [bug#69593] [PATCH 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] Add FluidPlug paul via Guix-patches via
@ 2024-04-02 22:37 ` Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] [PATCH v2 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] [PATCH v2 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
2024-09-04 21:43 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
` (2 subsequent siblings)
5 siblings, 2 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-04-02 22:37 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm: New file;
* gnu/local.mk: Add it.
Change-Id: Iec61d692010f9d7635de2cf27c32e1356225ca09
---
gnu/local.mk | 1 +
gnu/packages/fluidplug.scm | 319 +++++++++++++++++++++++++++++++++++++
2 files changed, 320 insertions(+)
create mode 100644 gnu/packages/fluidplug.scm
diff --git a/gnu/local.mk b/gnu/local.mk
index f2b480bded..6d554c0116 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -278,6 +278,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/flashing-tools.scm \
%D%/packages/flex.scm \
%D%/packages/fltk.scm \
+ %D%/packages/fluidplug.scm \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
new file mode 100644
index 0000000000..b45d3a85b5
--- /dev/null
+++ b/gnu/packages/fluidplug.scm
@@ -0,0 +1,319 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages fluidplug)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses)
+ #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix records)
+ #:use-module (guix utils)
+ #:use-module (gnu packages audio)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (srfi srfi-1)
+ #:export (fluidplug-plugin
+ fluidplug-plugin?
+ fluidplug-plugin-name
+ fluidplug-plugin-path
+ fluidplug-plugin-hash
+ fluidplug-plugin-license))
+
+(define-record-type* <fluidplug-plugin>
+ fluidplug-plugin make-fluidplug-plugin
+ fluidplug-plugin?
+ (name fluidplug-plugin-name) ;string
+ (hash fluidplug-plugin-hash) ;string
+ (path fluidplug-plugin-path) ;string
+ (license fluidplug-plugin-license ;license
+ (default license:cc-by-sa4.0)))
+
+(define (fluidplug-plugin->package-name record)
+ (string-append "fluidplug-"
+ (string-downcase
+ (string-replace-substring
+ (fluidplug-plugin-name record) "_" "-"))
+ "-lv2"))
+
+(define (fluidplug-plugin->origin record)
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://download.linuxaudio.org/"
+ "musical-instrument-libraries/sf2/"
+ (fluidplug-plugin-path record)))
+ (sha256
+ (base32 (fluidplug-plugin-hash record)))))
+
+(define (fluidplug-plugin->local-path record)
+ (string-append "./" (fluidplug-plugin-name record) ".lv2/"
+ (basename (fluidplug-plugin-path record))))
+
+(define airfont320-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AirFont320")
+ (path "airfont_a340u.tar.7z")
+ (hash "1x4xzm4khq823i4p18ydbkjza2nv3hzwyxp7vf3gzqs374jdcqbw")
+ (license license:gpl2)))
+
+(define avl-drumkits-perc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AVL_Drumkits_Perc")
+ (path "AVL-Drumkits-1.1-SF2-splitted/AVL_Drumkits_Perc_1.1.tar.7z")
+ (hash "0l1zvzw9dg922wf9llcl9zlw5ybjmayg7yqacp253xcr2jz1hn7m")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4a-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4A")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4A-1.1.tar.7z")
+ (hash "0flzlg5m2r3df8dchydzg3xllcv7ignr7hx6qxzy51s6gzrlbzli")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4b-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4B")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4B-1.1.tar.7z")
+ (hash "1z5q8z4k81xnbcv0gpc2xgrzqm9fg4n2yly1kaw82q7sm29vi0z9")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_5-1.1.tar.7z")
+ (hash "0mg41wc912sfj2mydn86ychwk21l3ngbn7k3qsm6jgf1ipmsip9y")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-4-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_4")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_4-1.1.tar.7z")
+ (hash "0pcswg4hlyn8j6nghbwvxa71ibp6r0wxcbxjzxs4iim43vpxc659")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_5-1.1.tar.7z")
+ (hash "18hhmi1d1i7gr2rp4wn28pnfwl825rmhmjnvxvvcwdmis6nad4gm")
+ (license license:cc-by-sa3.0)))
+
+(define fluidgm-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGM")
+ (path "fluidr3.tar.7z")
+ (hash "00ka1b2pxn0g2g0hm7kdg5w785pfx8f9585238d183wjdkc3a8m6")
+ (license license:expat)))
+
+(define fluidbass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBass")
+ (path "fluidr3-splitted/fluidr3gm_bass.sf2.tar.7z")
+ (hash "1zhixrxkwvmn6xkpy9f8zkrwxmaqwdcx0jz7zg8lc2amqkx9wqan")))
+
+(define fluidbrass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBrass")
+ (path "fluidr3-splitted/fluidr3gm_brass.sf2.tar.7z")
+ (hash "027l3q4q9011xzbzsrsp5nj3h05w9dj7d8b943xzck7q4sp9alkp")))
+
+(define fluidchromperc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidChromPerc")
+ (path "fluidr3-splitted/fluidr3gm_chromaticpercussion.sf2.tar.7z")
+ (hash "1233fh36wlifrawh57v8vycxc0g4pbvy3qr9f596g9n7mm4h51f7")))
+
+(define fluiddrums-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidDrums")
+ (path "fluidr3-splitted/fluidr3gm_drums.sf2.tar.7z")
+ (hash "01pv3aj52pz8xy29acprwkb69jxhrn64kx7w29ch5bl091lccqgr")))
+
+(define fluidensemble-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEnsemble")
+ (path "fluidr3-splitted/fluidr3gm_ensemble.sf2.tar.7z")
+ (hash "0rswcgzapcjmwddh2hgicym27hqz3p43r2s8j7hy1s40hzk3nbax")))
+
+(define fluidethnic-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEthnic")
+ (path "fluidr3-splitted/fluidr3gm_ethnic.sf2.tar.7z")
+ (hash "0z1z37wn6lw1n919bkpfirachg5wwddi7f0g4l9vimazv34ds1b1")))
+
+(define fluidguitars-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGuitars")
+ (path "fluidr3-splitted/fluidr3gm_guitar.sf2.tar.7z")
+ (hash "1d5jxx4sgbyh9sqmfksggcsri9hal7mw83a6h1vqb9xf59gnmx1i")))
+
+(define fluidorgans-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidOrgans")
+ (path "fluidr3-splitted/fluidr3gm_organ.sf2.tar.7z")
+ (hash "12zlq28cmr2hsgn1319hidzcm8yifx6vsqsqk544z3qkhc8cg4fr")))
+
+(define fluidpercussion-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPercussion")
+ (path "fluidr3-splitted/fluidr3gm_percussive.sf2.tar.7z")
+ (hash "1gql0g1zk09n6r90mav47khdc406jhmg5iql6i2zjmg9l7yg65n3")))
+
+(define fluidpianos-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPianos")
+ (path "fluidr3-splitted/fluidr3gm_piano.sf2.tar.7z")
+ (hash "06a817xvx7qj8plr1vhpanbdr97cbmzky0pp6xhff916s5k0jg2r")))
+
+(define fluidpipes-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPipes")
+ (path "fluidr3-splitted/fluidr3gm_pipe.sf2.tar.7z")
+ (hash "09wzvsabcif27687g71g4m75zz08zpwpm2dzwh8a7xsfi5qdynf2")))
+
+(define fluidreeds-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidReeds")
+ (path "fluidr3-splitted/fluidr3gm_reed.sf2.tar.7z")
+ (hash "1yb0whi67wz7ag6hcfdns69m1ic3fq6firvbb893ilnx8h17yjak")))
+
+(define fluidsoundfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSoundFX")
+ (path "fluidr3-splitted/fluidr3gm_soundeffects.sf2.tar.7z")
+ (hash "0sg8gca9735gy0pna63vgsfnabk54dl30n1lnhcf976n7y0npzfx")))
+
+(define fluidstrings-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidStrings")
+ (path "fluidr3-splitted/fluidr3gm_strings.sf2.tar.7z")
+ (hash "1nnxr62i3p3hhdpwlly62c4cvf7f3dzq818fmlnlxp25215h17bs")))
+
+(define fluidsynthfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthFX")
+ (path "fluidr3-splitted/fluidr3gm_syntheffects.sf2.tar.7z")
+ (hash "0rlq58v9m6wjk45kxmza54y8fkj1b8y1zg00r80nwyqz6rylgjh4")))
+
+(define fluidsynthleads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthLeads")
+ (path "fluidr3-splitted/fluidr3gm_synthlead.sf2.tar.7z")
+ (hash "0axi5dyqf8zh1gn82qq0jpzr0cgbsjn4xm0yrlqld4k6h9ggj475")))
+
+(define fluidsynthpads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthPads")
+ (path "fluidr3-splitted/fluidr3gm_synthpad.sf2.tar.7z")
+ (hash "1q4pd6ymb08yc6rz68wlidjp5kp7pygc2aw45djw9wr8id6pnadi")))
+
+(define-public fluidplug-plugins
+ (list airfont320-fluidplug-plugin
+ avl-drumkits-perc-fluidplug-plugin
+ black-pearl-4a-fluidplug-plugin
+ black-pearl-4b-fluidplug-plugin
+ black-pearl-5-fluidplug-plugin
+ red-zeppelin-4-fluidplug-plugin
+ red-zeppelin-5-fluidplug-plugin
+ fluidgm-fluidplug-plugin
+ fluidbass-fluidplug-plugin
+ fluidbrass-fluidplug-plugin
+ fluidchromperc-fluidplug-plugin
+ fluiddrums-fluidplug-plugin
+ fluidensemble-fluidplug-plugin
+ fluidethnic-fluidplug-plugin
+ fluidguitars-fluidplug-plugin
+ fluidorgans-fluidplug-plugin
+ fluidpercussion-fluidplug-plugin
+ fluidpianos-fluidplug-plugin
+ fluidpipes-fluidplug-plugin
+ fluidreeds-fluidplug-plugin
+ fluidsoundfx-fluidplug-plugin
+ fluidstrings-fluidplug-plugin
+ fluidsynthfx-fluidplug-plugin
+ fluidsynthleads-fluidplug-plugin
+ fluidsynthpads-fluidplug-plugin))
+
+(define-public fluidplug-lv2
+ (let ((version "0.0.5")
+ (revision "0")
+ (commit "38d7d0d5259c89199be3cf56768edf0d41bfd881"))
+ (package
+ (name "fluidplug-lv2")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/falkTX/FluidPlug")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0k4wjcvpgf4nk4d5b40x5zckfgp22b4i3npcahqbr16hh21cjfjj"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; SoundFonts can't be downloaded at build time
+ ;; in Guix, so it is disabled.
+ (substitute* "Makefile"
+ (("wget") "# wget"))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ ;; There are no tests.
+ #:tests? #f
+ #:make-flags #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX=")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-plugin
+ (lambda _
+ (use-modules (srfi srfi-1))
+ (for-each
+ (lambda (p)
+ (define source (first p))
+ (define target (second p))
+ (symlink source target))
+ '(#$@(map
+ (lambda (p)
+ (list (fluidplug-plugin->origin p)
+ (fluidplug-plugin->local-path p)))
+ fluidplug-plugins)))))
+ (delete 'configure)
+ (add-before 'build 'setenv
+ (lambda _
+ (setenv "CC" "gcc"))))))
+ (native-inputs
+ (list lv2 gnu-make p7zip pkg-config))
+ (inputs (list fluidsynth))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "LV2_PATH")
+ (files '("lib/lv2")))))
+ (synopsis
+ "SoundFonts as LV2 plugins via FluidSynth")
+ (description
+ "@code{FluidPlug} provides SoundFonts as LV2 plugins via FluidSynth.")
+ (home-page "https://github.com/falkTX/FluidPlug")
+ (license
+ (delete-duplicates
+ (map fluidplug-plugin-license fluidplug-plugins))))))
base-commit: 7af70efd7633b0d70091762cf43ce01a86176e8e
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v2 2/3] gnu: Add fluidplug plugins.
2024-04-02 22:37 ` [bug#69593] [PATCH v2 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-04-02 22:37 ` Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] [PATCH v2 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-04-02 22:37 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm (fluidplug-plugin->package): New variable;
(fluidplug-airfont320-lv2): new variable;
(fluidplug-avl-drumkits-perc-lv2): new variable;
(fluidplug-black-pearl-4a-lv2): new variable;
(fluidplug-black-pearl-4b-lv2): new variable;
(fluidplug-black-pearl-5-lv2): new variable;
(fluidplug-red-zeppelin-4-lv2): new variable;
(fluidplug-red-zeppelin-5-lv2): new variable;
(fluidplug-fluidgm-lv2): new variable;
(fluidplug-fluidbass-lv2): new variable;
(fluidplug-fluidbrass-lv2): new variable;
(fluidplug-fluidchromperc-lv2): new variable;
(fluidplug-fluiddrums-lv2): new variable;
(fluidplug-fluidensemble-lv2): new variable;
(fluidplug-fluidethnic-lv2): new variable;
(fluidplug-fluidguitars-lv2): new variable;
(fluidplug-fluidorgans-lv2): new variable;
(fluidplug-fluidpercussion-lv2): new variable;
(fluidplug-fluidpianos-lv2): new variable;
(fluidplug-fluidpipes-lv2): new variable;
(fluidplug-fluidreeds-lv2): new variable;
(fluidplug-fluidsoundfx-lv2): new variable;
(fluidplug-fluidstrings-lv2): new variable;
(fluidplug-fluidsynthfx-lv2): new variable;
(fluidplug-fluidsynthleads-lv2): new variable;
(fluidplug-fluidsynthpads-lv2): new variable.
Change-Id: If67aa88f6dd1e7c889ea7e42c418e1157699312b
---
gnu/packages/fluidplug.scm | 126 +++++++++++++++++++++++++++++++++++++
1 file changed, 126 insertions(+)
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
index b45d3a85b5..4838b09dcc 100644
--- a/gnu/packages/fluidplug.scm
+++ b/gnu/packages/fluidplug.scm
@@ -317,3 +317,129 @@ (define-public fluidplug-lv2
(license
(delete-duplicates
(map fluidplug-plugin-license fluidplug-plugins))))))
+
+(define (fluidplug-plugin->package record)
+ (package
+ (inherit fluidplug-lv2)
+ (name (fluidplug-plugin->package-name record))
+ (arguments
+ (substitute-keyword-arguments (package-arguments fluidplug-lv2)
+ ((#:make-flags make-flags)
+ #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX="))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'unpack-plugin
+ (lambda _
+ (symlink #$(fluidplug-plugin->origin record)
+ #$(fluidplug-plugin->local-path record))))
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke `("make" ,@make-flags
+ #$(fluidplug-plugin-name record)))))
+ (replace 'install
+ (lambda _
+ (let* ((plugin-directory
+ (string-append #$(fluidplug-plugin-name record)
+ ".lv2"))
+ (lib (string-append #$output "/lib/lv2"))
+ (share/doc (string-append #$output "/share/doc"))
+ (plugin-lib (string-append lib "/" plugin-directory)))
+
+ ;; Install plugin
+ (for-each
+ (lambda (f)
+ (install-file f plugin-lib))
+ (find-files plugin-directory
+ "^.*\\.(sf2|so|ttl)$"))
+
+ ;; Install license
+ (for-each
+ (lambda (f)
+ (install-file f share/doc))
+ (find-files plugin-directory "(README|License\\.pdf)"))
+
+ ;; Install UI
+ (copy-recursively (string-append plugin-directory "/modgui")
+ (string-append plugin-lib "/modgui")))))))))
+ (description
+ (string-append (package-description fluidplug-lv2) "
+
+This package provides the @code{" (fluidplug-plugin-name record)
+"} LV2 plugin."))
+ (license (fluidplug-plugin-license record))))
+
+(define-public fluidplug-airfont320-lv2
+ (fluidplug-plugin->package airfont320-fluidplug-plugin))
+
+(define-public fluidplug-avl-drumkits-perc-lv2
+ (fluidplug-plugin->package avl-drumkits-perc-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4a-lv2
+ (fluidplug-plugin->package black-pearl-4a-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4b-lv2
+ (fluidplug-plugin->package black-pearl-4b-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-5-lv2
+ (fluidplug-plugin->package black-pearl-5-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-4-lv2
+ (fluidplug-plugin->package red-zeppelin-4-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-5-lv2
+ (fluidplug-plugin->package red-zeppelin-5-fluidplug-plugin))
+
+(define-public fluidplug-fluidgm-lv2
+ (fluidplug-plugin->package fluidgm-fluidplug-plugin))
+
+(define-public fluidplug-fluidbass-lv2
+ (fluidplug-plugin->package fluidbass-fluidplug-plugin))
+
+(define-public fluidplug-fluidbrass-lv2
+ (fluidplug-plugin->package fluidbrass-fluidplug-plugin))
+
+(define-public fluidplug-fluidchromperc-lv2
+ (fluidplug-plugin->package fluidchromperc-fluidplug-plugin))
+
+(define-public fluidplug-fluiddrums-lv2
+ (fluidplug-plugin->package fluiddrums-fluidplug-plugin))
+
+(define-public fluidplug-fluidensemble-lv2
+ (fluidplug-plugin->package fluidensemble-fluidplug-plugin))
+
+(define-public fluidplug-fluidethnic-lv2
+ (fluidplug-plugin->package fluidethnic-fluidplug-plugin))
+
+(define-public fluidplug-fluidguitars-lv2
+ (fluidplug-plugin->package fluidguitars-fluidplug-plugin))
+
+(define-public fluidplug-fluidorgans-lv2
+ (fluidplug-plugin->package fluidorgans-fluidplug-plugin))
+
+(define-public fluidplug-fluidpercussion-lv2
+ (fluidplug-plugin->package fluidpercussion-fluidplug-plugin))
+
+(define-public fluidplug-fluidpianos-lv2
+ (fluidplug-plugin->package fluidpianos-fluidplug-plugin))
+
+(define-public fluidplug-fluidpipes-lv2
+ (fluidplug-plugin->package fluidpipes-fluidplug-plugin))
+
+(define-public fluidplug-fluidreeds-lv2
+ (fluidplug-plugin->package fluidreeds-fluidplug-plugin))
+
+(define-public fluidplug-fluidsoundfx-lv2
+ (fluidplug-plugin->package fluidsoundfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidstrings-lv2
+ (fluidplug-plugin->package fluidstrings-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthfx-lv2
+ (fluidplug-plugin->package fluidsynthfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthleads-lv2
+ (fluidplug-plugin->package fluidsynthleads-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthpads-lv2
+ (fluidplug-plugin->package fluidsynthpads-fluidplug-plugin))
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v2 3/3] teams: Add FluidPlug team.
2024-04-02 22:37 ` [bug#69593] [PATCH v2 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
2024-04-02 22:37 ` [bug#69593] [PATCH v2 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
@ 2024-04-02 22:37 ` Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-04-02 22:37 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi
* etc/teams.scm (fluidplug): New team; add Giacomo to it.
Change-Id: I78af3e3ab865a9a740d69598c3149e7ad0270893
---
etc/teams.scm | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/etc/teams.scm b/etc/teams.scm
index 570793b539..d2bef0a3cf 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -566,6 +566,12 @@ (define-team zig
"guix/build/zig-build-system.scm"
"guix/build-system/zig.scm")))
+(define-team fluidplug
+ (team 'fluidplug
+ #:name "FluidPlug"
+ #:description "FluidPlug LV2 plugins"
+ #:scope (list "gnu/packages/fluidplug.scm")))
+
\f
(define-member (person "Eric Bavier"
"bavier@posteo.net")
@@ -731,6 +737,10 @@ (define-member (person "Adam Faiz"
"adam.faiz@disroot.org")
games)
+(define-member (person "Giacomo Leidi"
+ "goodoldpaul@autistici.org")
+ fluidplug)
+
\f
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2.
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
` (2 preceding siblings ...)
2024-04-02 22:37 ` [bug#69593] [PATCH v2 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-09-04 21:43 ` Giacomo Leidi via Guix-patches via
2024-09-04 21:43 ` [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
2024-09-04 21:43 ` [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
2024-10-20 22:54 ` [bug#69593] Add FluidPlug paul via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
5 siblings, 2 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-09-04 21:43 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm: New file;
* gnu/local.mk: Add it.
Change-Id: Iec61d692010f9d7635de2cf27c32e1356225ca09
---
gnu/local.mk | 1 +
gnu/packages/fluidplug.scm | 319 +++++++++++++++++++++++++++++++++++++
2 files changed, 320 insertions(+)
create mode 100644 gnu/packages/fluidplug.scm
diff --git a/gnu/local.mk b/gnu/local.mk
index 8d8c552a4d..4439fdd8de 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -284,6 +284,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/flashing-tools.scm \
%D%/packages/flex.scm \
%D%/packages/fltk.scm \
+ %D%/packages/fluidplug.scm \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
new file mode 100644
index 0000000000..b45d3a85b5
--- /dev/null
+++ b/gnu/packages/fluidplug.scm
@@ -0,0 +1,319 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages fluidplug)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses)
+ #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix records)
+ #:use-module (guix utils)
+ #:use-module (gnu packages audio)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (srfi srfi-1)
+ #:export (fluidplug-plugin
+ fluidplug-plugin?
+ fluidplug-plugin-name
+ fluidplug-plugin-path
+ fluidplug-plugin-hash
+ fluidplug-plugin-license))
+
+(define-record-type* <fluidplug-plugin>
+ fluidplug-plugin make-fluidplug-plugin
+ fluidplug-plugin?
+ (name fluidplug-plugin-name) ;string
+ (hash fluidplug-plugin-hash) ;string
+ (path fluidplug-plugin-path) ;string
+ (license fluidplug-plugin-license ;license
+ (default license:cc-by-sa4.0)))
+
+(define (fluidplug-plugin->package-name record)
+ (string-append "fluidplug-"
+ (string-downcase
+ (string-replace-substring
+ (fluidplug-plugin-name record) "_" "-"))
+ "-lv2"))
+
+(define (fluidplug-plugin->origin record)
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://download.linuxaudio.org/"
+ "musical-instrument-libraries/sf2/"
+ (fluidplug-plugin-path record)))
+ (sha256
+ (base32 (fluidplug-plugin-hash record)))))
+
+(define (fluidplug-plugin->local-path record)
+ (string-append "./" (fluidplug-plugin-name record) ".lv2/"
+ (basename (fluidplug-plugin-path record))))
+
+(define airfont320-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AirFont320")
+ (path "airfont_a340u.tar.7z")
+ (hash "1x4xzm4khq823i4p18ydbkjza2nv3hzwyxp7vf3gzqs374jdcqbw")
+ (license license:gpl2)))
+
+(define avl-drumkits-perc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AVL_Drumkits_Perc")
+ (path "AVL-Drumkits-1.1-SF2-splitted/AVL_Drumkits_Perc_1.1.tar.7z")
+ (hash "0l1zvzw9dg922wf9llcl9zlw5ybjmayg7yqacp253xcr2jz1hn7m")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4a-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4A")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4A-1.1.tar.7z")
+ (hash "0flzlg5m2r3df8dchydzg3xllcv7ignr7hx6qxzy51s6gzrlbzli")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4b-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4B")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4B-1.1.tar.7z")
+ (hash "1z5q8z4k81xnbcv0gpc2xgrzqm9fg4n2yly1kaw82q7sm29vi0z9")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_5-1.1.tar.7z")
+ (hash "0mg41wc912sfj2mydn86ychwk21l3ngbn7k3qsm6jgf1ipmsip9y")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-4-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_4")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_4-1.1.tar.7z")
+ (hash "0pcswg4hlyn8j6nghbwvxa71ibp6r0wxcbxjzxs4iim43vpxc659")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_5-1.1.tar.7z")
+ (hash "18hhmi1d1i7gr2rp4wn28pnfwl825rmhmjnvxvvcwdmis6nad4gm")
+ (license license:cc-by-sa3.0)))
+
+(define fluidgm-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGM")
+ (path "fluidr3.tar.7z")
+ (hash "00ka1b2pxn0g2g0hm7kdg5w785pfx8f9585238d183wjdkc3a8m6")
+ (license license:expat)))
+
+(define fluidbass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBass")
+ (path "fluidr3-splitted/fluidr3gm_bass.sf2.tar.7z")
+ (hash "1zhixrxkwvmn6xkpy9f8zkrwxmaqwdcx0jz7zg8lc2amqkx9wqan")))
+
+(define fluidbrass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBrass")
+ (path "fluidr3-splitted/fluidr3gm_brass.sf2.tar.7z")
+ (hash "027l3q4q9011xzbzsrsp5nj3h05w9dj7d8b943xzck7q4sp9alkp")))
+
+(define fluidchromperc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidChromPerc")
+ (path "fluidr3-splitted/fluidr3gm_chromaticpercussion.sf2.tar.7z")
+ (hash "1233fh36wlifrawh57v8vycxc0g4pbvy3qr9f596g9n7mm4h51f7")))
+
+(define fluiddrums-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidDrums")
+ (path "fluidr3-splitted/fluidr3gm_drums.sf2.tar.7z")
+ (hash "01pv3aj52pz8xy29acprwkb69jxhrn64kx7w29ch5bl091lccqgr")))
+
+(define fluidensemble-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEnsemble")
+ (path "fluidr3-splitted/fluidr3gm_ensemble.sf2.tar.7z")
+ (hash "0rswcgzapcjmwddh2hgicym27hqz3p43r2s8j7hy1s40hzk3nbax")))
+
+(define fluidethnic-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEthnic")
+ (path "fluidr3-splitted/fluidr3gm_ethnic.sf2.tar.7z")
+ (hash "0z1z37wn6lw1n919bkpfirachg5wwddi7f0g4l9vimazv34ds1b1")))
+
+(define fluidguitars-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGuitars")
+ (path "fluidr3-splitted/fluidr3gm_guitar.sf2.tar.7z")
+ (hash "1d5jxx4sgbyh9sqmfksggcsri9hal7mw83a6h1vqb9xf59gnmx1i")))
+
+(define fluidorgans-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidOrgans")
+ (path "fluidr3-splitted/fluidr3gm_organ.sf2.tar.7z")
+ (hash "12zlq28cmr2hsgn1319hidzcm8yifx6vsqsqk544z3qkhc8cg4fr")))
+
+(define fluidpercussion-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPercussion")
+ (path "fluidr3-splitted/fluidr3gm_percussive.sf2.tar.7z")
+ (hash "1gql0g1zk09n6r90mav47khdc406jhmg5iql6i2zjmg9l7yg65n3")))
+
+(define fluidpianos-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPianos")
+ (path "fluidr3-splitted/fluidr3gm_piano.sf2.tar.7z")
+ (hash "06a817xvx7qj8plr1vhpanbdr97cbmzky0pp6xhff916s5k0jg2r")))
+
+(define fluidpipes-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPipes")
+ (path "fluidr3-splitted/fluidr3gm_pipe.sf2.tar.7z")
+ (hash "09wzvsabcif27687g71g4m75zz08zpwpm2dzwh8a7xsfi5qdynf2")))
+
+(define fluidreeds-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidReeds")
+ (path "fluidr3-splitted/fluidr3gm_reed.sf2.tar.7z")
+ (hash "1yb0whi67wz7ag6hcfdns69m1ic3fq6firvbb893ilnx8h17yjak")))
+
+(define fluidsoundfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSoundFX")
+ (path "fluidr3-splitted/fluidr3gm_soundeffects.sf2.tar.7z")
+ (hash "0sg8gca9735gy0pna63vgsfnabk54dl30n1lnhcf976n7y0npzfx")))
+
+(define fluidstrings-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidStrings")
+ (path "fluidr3-splitted/fluidr3gm_strings.sf2.tar.7z")
+ (hash "1nnxr62i3p3hhdpwlly62c4cvf7f3dzq818fmlnlxp25215h17bs")))
+
+(define fluidsynthfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthFX")
+ (path "fluidr3-splitted/fluidr3gm_syntheffects.sf2.tar.7z")
+ (hash "0rlq58v9m6wjk45kxmza54y8fkj1b8y1zg00r80nwyqz6rylgjh4")))
+
+(define fluidsynthleads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthLeads")
+ (path "fluidr3-splitted/fluidr3gm_synthlead.sf2.tar.7z")
+ (hash "0axi5dyqf8zh1gn82qq0jpzr0cgbsjn4xm0yrlqld4k6h9ggj475")))
+
+(define fluidsynthpads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthPads")
+ (path "fluidr3-splitted/fluidr3gm_synthpad.sf2.tar.7z")
+ (hash "1q4pd6ymb08yc6rz68wlidjp5kp7pygc2aw45djw9wr8id6pnadi")))
+
+(define-public fluidplug-plugins
+ (list airfont320-fluidplug-plugin
+ avl-drumkits-perc-fluidplug-plugin
+ black-pearl-4a-fluidplug-plugin
+ black-pearl-4b-fluidplug-plugin
+ black-pearl-5-fluidplug-plugin
+ red-zeppelin-4-fluidplug-plugin
+ red-zeppelin-5-fluidplug-plugin
+ fluidgm-fluidplug-plugin
+ fluidbass-fluidplug-plugin
+ fluidbrass-fluidplug-plugin
+ fluidchromperc-fluidplug-plugin
+ fluiddrums-fluidplug-plugin
+ fluidensemble-fluidplug-plugin
+ fluidethnic-fluidplug-plugin
+ fluidguitars-fluidplug-plugin
+ fluidorgans-fluidplug-plugin
+ fluidpercussion-fluidplug-plugin
+ fluidpianos-fluidplug-plugin
+ fluidpipes-fluidplug-plugin
+ fluidreeds-fluidplug-plugin
+ fluidsoundfx-fluidplug-plugin
+ fluidstrings-fluidplug-plugin
+ fluidsynthfx-fluidplug-plugin
+ fluidsynthleads-fluidplug-plugin
+ fluidsynthpads-fluidplug-plugin))
+
+(define-public fluidplug-lv2
+ (let ((version "0.0.5")
+ (revision "0")
+ (commit "38d7d0d5259c89199be3cf56768edf0d41bfd881"))
+ (package
+ (name "fluidplug-lv2")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/falkTX/FluidPlug")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0k4wjcvpgf4nk4d5b40x5zckfgp22b4i3npcahqbr16hh21cjfjj"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; SoundFonts can't be downloaded at build time
+ ;; in Guix, so it is disabled.
+ (substitute* "Makefile"
+ (("wget") "# wget"))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ ;; There are no tests.
+ #:tests? #f
+ #:make-flags #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX=")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-plugin
+ (lambda _
+ (use-modules (srfi srfi-1))
+ (for-each
+ (lambda (p)
+ (define source (first p))
+ (define target (second p))
+ (symlink source target))
+ '(#$@(map
+ (lambda (p)
+ (list (fluidplug-plugin->origin p)
+ (fluidplug-plugin->local-path p)))
+ fluidplug-plugins)))))
+ (delete 'configure)
+ (add-before 'build 'setenv
+ (lambda _
+ (setenv "CC" "gcc"))))))
+ (native-inputs
+ (list lv2 gnu-make p7zip pkg-config))
+ (inputs (list fluidsynth))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "LV2_PATH")
+ (files '("lib/lv2")))))
+ (synopsis
+ "SoundFonts as LV2 plugins via FluidSynth")
+ (description
+ "@code{FluidPlug} provides SoundFonts as LV2 plugins via FluidSynth.")
+ (home-page "https://github.com/falkTX/FluidPlug")
+ (license
+ (delete-duplicates
+ (map fluidplug-plugin-license fluidplug-plugins))))))
base-commit: 9a03ab25ba889be27b34d5cebea05d5ac3b0a033
--
2.45.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins.
2024-09-04 21:43 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-09-04 21:43 ` Giacomo Leidi via Guix-patches via
2024-09-04 21:43 ` [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-09-04 21:43 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm (fluidplug-plugin->package): New variable;
(fluidplug-airfont320-lv2): new variable;
(fluidplug-avl-drumkits-perc-lv2): new variable;
(fluidplug-black-pearl-4a-lv2): new variable;
(fluidplug-black-pearl-4b-lv2): new variable;
(fluidplug-black-pearl-5-lv2): new variable;
(fluidplug-red-zeppelin-4-lv2): new variable;
(fluidplug-red-zeppelin-5-lv2): new variable;
(fluidplug-fluidgm-lv2): new variable;
(fluidplug-fluidbass-lv2): new variable;
(fluidplug-fluidbrass-lv2): new variable;
(fluidplug-fluidchromperc-lv2): new variable;
(fluidplug-fluiddrums-lv2): new variable;
(fluidplug-fluidensemble-lv2): new variable;
(fluidplug-fluidethnic-lv2): new variable;
(fluidplug-fluidguitars-lv2): new variable;
(fluidplug-fluidorgans-lv2): new variable;
(fluidplug-fluidpercussion-lv2): new variable;
(fluidplug-fluidpianos-lv2): new variable;
(fluidplug-fluidpipes-lv2): new variable;
(fluidplug-fluidreeds-lv2): new variable;
(fluidplug-fluidsoundfx-lv2): new variable;
(fluidplug-fluidstrings-lv2): new variable;
(fluidplug-fluidsynthfx-lv2): new variable;
(fluidplug-fluidsynthleads-lv2): new variable;
(fluidplug-fluidsynthpads-lv2): new variable.
Change-Id: If67aa88f6dd1e7c889ea7e42c418e1157699312b
---
gnu/packages/fluidplug.scm | 126 +++++++++++++++++++++++++++++++++++++
1 file changed, 126 insertions(+)
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
index b45d3a85b5..4838b09dcc 100644
--- a/gnu/packages/fluidplug.scm
+++ b/gnu/packages/fluidplug.scm
@@ -317,3 +317,129 @@ (define-public fluidplug-lv2
(license
(delete-duplicates
(map fluidplug-plugin-license fluidplug-plugins))))))
+
+(define (fluidplug-plugin->package record)
+ (package
+ (inherit fluidplug-lv2)
+ (name (fluidplug-plugin->package-name record))
+ (arguments
+ (substitute-keyword-arguments (package-arguments fluidplug-lv2)
+ ((#:make-flags make-flags)
+ #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX="))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'unpack-plugin
+ (lambda _
+ (symlink #$(fluidplug-plugin->origin record)
+ #$(fluidplug-plugin->local-path record))))
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke `("make" ,@make-flags
+ #$(fluidplug-plugin-name record)))))
+ (replace 'install
+ (lambda _
+ (let* ((plugin-directory
+ (string-append #$(fluidplug-plugin-name record)
+ ".lv2"))
+ (lib (string-append #$output "/lib/lv2"))
+ (share/doc (string-append #$output "/share/doc"))
+ (plugin-lib (string-append lib "/" plugin-directory)))
+
+ ;; Install plugin
+ (for-each
+ (lambda (f)
+ (install-file f plugin-lib))
+ (find-files plugin-directory
+ "^.*\\.(sf2|so|ttl)$"))
+
+ ;; Install license
+ (for-each
+ (lambda (f)
+ (install-file f share/doc))
+ (find-files plugin-directory "(README|License\\.pdf)"))
+
+ ;; Install UI
+ (copy-recursively (string-append plugin-directory "/modgui")
+ (string-append plugin-lib "/modgui")))))))))
+ (description
+ (string-append (package-description fluidplug-lv2) "
+
+This package provides the @code{" (fluidplug-plugin-name record)
+"} LV2 plugin."))
+ (license (fluidplug-plugin-license record))))
+
+(define-public fluidplug-airfont320-lv2
+ (fluidplug-plugin->package airfont320-fluidplug-plugin))
+
+(define-public fluidplug-avl-drumkits-perc-lv2
+ (fluidplug-plugin->package avl-drumkits-perc-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4a-lv2
+ (fluidplug-plugin->package black-pearl-4a-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4b-lv2
+ (fluidplug-plugin->package black-pearl-4b-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-5-lv2
+ (fluidplug-plugin->package black-pearl-5-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-4-lv2
+ (fluidplug-plugin->package red-zeppelin-4-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-5-lv2
+ (fluidplug-plugin->package red-zeppelin-5-fluidplug-plugin))
+
+(define-public fluidplug-fluidgm-lv2
+ (fluidplug-plugin->package fluidgm-fluidplug-plugin))
+
+(define-public fluidplug-fluidbass-lv2
+ (fluidplug-plugin->package fluidbass-fluidplug-plugin))
+
+(define-public fluidplug-fluidbrass-lv2
+ (fluidplug-plugin->package fluidbrass-fluidplug-plugin))
+
+(define-public fluidplug-fluidchromperc-lv2
+ (fluidplug-plugin->package fluidchromperc-fluidplug-plugin))
+
+(define-public fluidplug-fluiddrums-lv2
+ (fluidplug-plugin->package fluiddrums-fluidplug-plugin))
+
+(define-public fluidplug-fluidensemble-lv2
+ (fluidplug-plugin->package fluidensemble-fluidplug-plugin))
+
+(define-public fluidplug-fluidethnic-lv2
+ (fluidplug-plugin->package fluidethnic-fluidplug-plugin))
+
+(define-public fluidplug-fluidguitars-lv2
+ (fluidplug-plugin->package fluidguitars-fluidplug-plugin))
+
+(define-public fluidplug-fluidorgans-lv2
+ (fluidplug-plugin->package fluidorgans-fluidplug-plugin))
+
+(define-public fluidplug-fluidpercussion-lv2
+ (fluidplug-plugin->package fluidpercussion-fluidplug-plugin))
+
+(define-public fluidplug-fluidpianos-lv2
+ (fluidplug-plugin->package fluidpianos-fluidplug-plugin))
+
+(define-public fluidplug-fluidpipes-lv2
+ (fluidplug-plugin->package fluidpipes-fluidplug-plugin))
+
+(define-public fluidplug-fluidreeds-lv2
+ (fluidplug-plugin->package fluidreeds-fluidplug-plugin))
+
+(define-public fluidplug-fluidsoundfx-lv2
+ (fluidplug-plugin->package fluidsoundfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidstrings-lv2
+ (fluidplug-plugin->package fluidstrings-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthfx-lv2
+ (fluidplug-plugin->package fluidsynthfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthleads-lv2
+ (fluidplug-plugin->package fluidsynthleads-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthpads-lv2
+ (fluidplug-plugin->package fluidsynthpads-fluidplug-plugin))
--
2.45.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team.
2024-09-04 21:43 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
2024-09-04 21:43 ` [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
@ 2024-09-04 21:43 ` Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-09-04 21:43 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi
* etc/teams.scm (fluidplug): New team; add Giacomo to it.
Change-Id: I78af3e3ab865a9a740d69598c3149e7ad0270893
---
etc/teams.scm | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/etc/teams.scm b/etc/teams.scm
index 419365e147..270258a154 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -578,6 +578,12 @@ (define-team zig
"guix/build/zig-build-system.scm"
"guix/build-system/zig.scm")))
+(define-team fluidplug
+ (team 'fluidplug
+ #:name "FluidPlug"
+ #:description "FluidPlug LV2 plugins"
+ #:scope (list "gnu/packages/fluidplug.scm")))
+
\f
(define-member (person "Eric Bavier"
"bavier@posteo.net")
@@ -748,6 +754,10 @@ (define-member (person "André Batista"
"nandre@riseup.net")
mozilla)
+(define-member (person "Giacomo Leidi"
+ "goodoldpaul@autistici.org")
+ fluidplug)
+
\f
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
--
2.45.2
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] Add FluidPlug
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
` (3 preceding siblings ...)
2024-09-04 21:43 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-10-20 22:54 ` paul via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
5 siblings, 0 replies; 17+ messages in thread
From: paul via Guix-patches via @ 2024-10-20 22:54 UTC (permalink / raw)
To: 69593
Hi Guix , this is a friendly ping. I'm sending a patchset rebased on
current master.
Thank you for your work,
giacomo
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2.
2024-03-06 20:16 [bug#69593] Add FluidPlug paul via Guix-patches via
` (4 preceding siblings ...)
2024-10-20 22:54 ` [bug#69593] Add FluidPlug paul via Guix-patches via
@ 2024-10-20 22:54 ` Giacomo Leidi via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
5 siblings, 2 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-10-20 22:54 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm: New file;
* gnu/local.mk: Add it.
Change-Id: Iec61d692010f9d7635de2cf27c32e1356225ca09
---
gnu/local.mk | 1 +
gnu/packages/fluidplug.scm | 319 +++++++++++++++++++++++++++++++++++++
2 files changed, 320 insertions(+)
create mode 100644 gnu/packages/fluidplug.scm
diff --git a/gnu/local.mk b/gnu/local.mk
index 89a795bfbd..481cea0c84 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -286,6 +286,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/flashing-tools.scm \
%D%/packages/flex.scm \
%D%/packages/fltk.scm \
+ %D%/packages/fluidplug.scm \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
new file mode 100644
index 0000000000..b45d3a85b5
--- /dev/null
+++ b/gnu/packages/fluidplug.scm
@@ -0,0 +1,319 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages fluidplug)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module ((guix licenses)
+ #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix records)
+ #:use-module (guix utils)
+ #:use-module (gnu packages audio)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (srfi srfi-1)
+ #:export (fluidplug-plugin
+ fluidplug-plugin?
+ fluidplug-plugin-name
+ fluidplug-plugin-path
+ fluidplug-plugin-hash
+ fluidplug-plugin-license))
+
+(define-record-type* <fluidplug-plugin>
+ fluidplug-plugin make-fluidplug-plugin
+ fluidplug-plugin?
+ (name fluidplug-plugin-name) ;string
+ (hash fluidplug-plugin-hash) ;string
+ (path fluidplug-plugin-path) ;string
+ (license fluidplug-plugin-license ;license
+ (default license:cc-by-sa4.0)))
+
+(define (fluidplug-plugin->package-name record)
+ (string-append "fluidplug-"
+ (string-downcase
+ (string-replace-substring
+ (fluidplug-plugin-name record) "_" "-"))
+ "-lv2"))
+
+(define (fluidplug-plugin->origin record)
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://download.linuxaudio.org/"
+ "musical-instrument-libraries/sf2/"
+ (fluidplug-plugin-path record)))
+ (sha256
+ (base32 (fluidplug-plugin-hash record)))))
+
+(define (fluidplug-plugin->local-path record)
+ (string-append "./" (fluidplug-plugin-name record) ".lv2/"
+ (basename (fluidplug-plugin-path record))))
+
+(define airfont320-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AirFont320")
+ (path "airfont_a340u.tar.7z")
+ (hash "1x4xzm4khq823i4p18ydbkjza2nv3hzwyxp7vf3gzqs374jdcqbw")
+ (license license:gpl2)))
+
+(define avl-drumkits-perc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "AVL_Drumkits_Perc")
+ (path "AVL-Drumkits-1.1-SF2-splitted/AVL_Drumkits_Perc_1.1.tar.7z")
+ (hash "0l1zvzw9dg922wf9llcl9zlw5ybjmayg7yqacp253xcr2jz1hn7m")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4a-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4A")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4A-1.1.tar.7z")
+ (hash "0flzlg5m2r3df8dchydzg3xllcv7ignr7hx6qxzy51s6gzrlbzli")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-4b-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_4B")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_4B-1.1.tar.7z")
+ (hash "1z5q8z4k81xnbcv0gpc2xgrzqm9fg4n2yly1kaw82q7sm29vi0z9")
+ (license license:cc-by-sa3.0)))
+
+(define black-pearl-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Black_Pearl_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Black_Pearl_5-1.1.tar.7z")
+ (hash "0mg41wc912sfj2mydn86ychwk21l3ngbn7k3qsm6jgf1ipmsip9y")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-4-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_4")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_4-1.1.tar.7z")
+ (hash "0pcswg4hlyn8j6nghbwvxa71ibp6r0wxcbxjzxs4iim43vpxc659")
+ (license license:cc-by-sa3.0)))
+
+(define red-zeppelin-5-fluidplug-plugin
+ (fluidplug-plugin
+ (name "Red_Zeppelin_5")
+ (path "AVL-Drumkits-1.1-SF2-splitted/Red_Zeppelin_5-1.1.tar.7z")
+ (hash "18hhmi1d1i7gr2rp4wn28pnfwl825rmhmjnvxvvcwdmis6nad4gm")
+ (license license:cc-by-sa3.0)))
+
+(define fluidgm-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGM")
+ (path "fluidr3.tar.7z")
+ (hash "00ka1b2pxn0g2g0hm7kdg5w785pfx8f9585238d183wjdkc3a8m6")
+ (license license:expat)))
+
+(define fluidbass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBass")
+ (path "fluidr3-splitted/fluidr3gm_bass.sf2.tar.7z")
+ (hash "1zhixrxkwvmn6xkpy9f8zkrwxmaqwdcx0jz7zg8lc2amqkx9wqan")))
+
+(define fluidbrass-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidBrass")
+ (path "fluidr3-splitted/fluidr3gm_brass.sf2.tar.7z")
+ (hash "027l3q4q9011xzbzsrsp5nj3h05w9dj7d8b943xzck7q4sp9alkp")))
+
+(define fluidchromperc-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidChromPerc")
+ (path "fluidr3-splitted/fluidr3gm_chromaticpercussion.sf2.tar.7z")
+ (hash "1233fh36wlifrawh57v8vycxc0g4pbvy3qr9f596g9n7mm4h51f7")))
+
+(define fluiddrums-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidDrums")
+ (path "fluidr3-splitted/fluidr3gm_drums.sf2.tar.7z")
+ (hash "01pv3aj52pz8xy29acprwkb69jxhrn64kx7w29ch5bl091lccqgr")))
+
+(define fluidensemble-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEnsemble")
+ (path "fluidr3-splitted/fluidr3gm_ensemble.sf2.tar.7z")
+ (hash "0rswcgzapcjmwddh2hgicym27hqz3p43r2s8j7hy1s40hzk3nbax")))
+
+(define fluidethnic-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidEthnic")
+ (path "fluidr3-splitted/fluidr3gm_ethnic.sf2.tar.7z")
+ (hash "0z1z37wn6lw1n919bkpfirachg5wwddi7f0g4l9vimazv34ds1b1")))
+
+(define fluidguitars-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidGuitars")
+ (path "fluidr3-splitted/fluidr3gm_guitar.sf2.tar.7z")
+ (hash "1d5jxx4sgbyh9sqmfksggcsri9hal7mw83a6h1vqb9xf59gnmx1i")))
+
+(define fluidorgans-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidOrgans")
+ (path "fluidr3-splitted/fluidr3gm_organ.sf2.tar.7z")
+ (hash "12zlq28cmr2hsgn1319hidzcm8yifx6vsqsqk544z3qkhc8cg4fr")))
+
+(define fluidpercussion-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPercussion")
+ (path "fluidr3-splitted/fluidr3gm_percussive.sf2.tar.7z")
+ (hash "1gql0g1zk09n6r90mav47khdc406jhmg5iql6i2zjmg9l7yg65n3")))
+
+(define fluidpianos-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPianos")
+ (path "fluidr3-splitted/fluidr3gm_piano.sf2.tar.7z")
+ (hash "06a817xvx7qj8plr1vhpanbdr97cbmzky0pp6xhff916s5k0jg2r")))
+
+(define fluidpipes-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidPipes")
+ (path "fluidr3-splitted/fluidr3gm_pipe.sf2.tar.7z")
+ (hash "09wzvsabcif27687g71g4m75zz08zpwpm2dzwh8a7xsfi5qdynf2")))
+
+(define fluidreeds-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidReeds")
+ (path "fluidr3-splitted/fluidr3gm_reed.sf2.tar.7z")
+ (hash "1yb0whi67wz7ag6hcfdns69m1ic3fq6firvbb893ilnx8h17yjak")))
+
+(define fluidsoundfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSoundFX")
+ (path "fluidr3-splitted/fluidr3gm_soundeffects.sf2.tar.7z")
+ (hash "0sg8gca9735gy0pna63vgsfnabk54dl30n1lnhcf976n7y0npzfx")))
+
+(define fluidstrings-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidStrings")
+ (path "fluidr3-splitted/fluidr3gm_strings.sf2.tar.7z")
+ (hash "1nnxr62i3p3hhdpwlly62c4cvf7f3dzq818fmlnlxp25215h17bs")))
+
+(define fluidsynthfx-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthFX")
+ (path "fluidr3-splitted/fluidr3gm_syntheffects.sf2.tar.7z")
+ (hash "0rlq58v9m6wjk45kxmza54y8fkj1b8y1zg00r80nwyqz6rylgjh4")))
+
+(define fluidsynthleads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthLeads")
+ (path "fluidr3-splitted/fluidr3gm_synthlead.sf2.tar.7z")
+ (hash "0axi5dyqf8zh1gn82qq0jpzr0cgbsjn4xm0yrlqld4k6h9ggj475")))
+
+(define fluidsynthpads-fluidplug-plugin
+ (fluidplug-plugin
+ (name "FluidSynthPads")
+ (path "fluidr3-splitted/fluidr3gm_synthpad.sf2.tar.7z")
+ (hash "1q4pd6ymb08yc6rz68wlidjp5kp7pygc2aw45djw9wr8id6pnadi")))
+
+(define-public fluidplug-plugins
+ (list airfont320-fluidplug-plugin
+ avl-drumkits-perc-fluidplug-plugin
+ black-pearl-4a-fluidplug-plugin
+ black-pearl-4b-fluidplug-plugin
+ black-pearl-5-fluidplug-plugin
+ red-zeppelin-4-fluidplug-plugin
+ red-zeppelin-5-fluidplug-plugin
+ fluidgm-fluidplug-plugin
+ fluidbass-fluidplug-plugin
+ fluidbrass-fluidplug-plugin
+ fluidchromperc-fluidplug-plugin
+ fluiddrums-fluidplug-plugin
+ fluidensemble-fluidplug-plugin
+ fluidethnic-fluidplug-plugin
+ fluidguitars-fluidplug-plugin
+ fluidorgans-fluidplug-plugin
+ fluidpercussion-fluidplug-plugin
+ fluidpianos-fluidplug-plugin
+ fluidpipes-fluidplug-plugin
+ fluidreeds-fluidplug-plugin
+ fluidsoundfx-fluidplug-plugin
+ fluidstrings-fluidplug-plugin
+ fluidsynthfx-fluidplug-plugin
+ fluidsynthleads-fluidplug-plugin
+ fluidsynthpads-fluidplug-plugin))
+
+(define-public fluidplug-lv2
+ (let ((version "0.0.5")
+ (revision "0")
+ (commit "38d7d0d5259c89199be3cf56768edf0d41bfd881"))
+ (package
+ (name "fluidplug-lv2")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/falkTX/FluidPlug")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0k4wjcvpgf4nk4d5b40x5zckfgp22b4i3npcahqbr16hh21cjfjj"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; SoundFonts can't be downloaded at build time
+ ;; in Guix, so it is disabled.
+ (substitute* "Makefile"
+ (("wget") "# wget"))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ ;; There are no tests.
+ #:tests? #f
+ #:make-flags #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX=")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-plugin
+ (lambda _
+ (use-modules (srfi srfi-1))
+ (for-each
+ (lambda (p)
+ (define source (first p))
+ (define target (second p))
+ (symlink source target))
+ '(#$@(map
+ (lambda (p)
+ (list (fluidplug-plugin->origin p)
+ (fluidplug-plugin->local-path p)))
+ fluidplug-plugins)))))
+ (delete 'configure)
+ (add-before 'build 'setenv
+ (lambda _
+ (setenv "CC" "gcc"))))))
+ (native-inputs
+ (list lv2 gnu-make p7zip pkg-config))
+ (inputs (list fluidsynth))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "LV2_PATH")
+ (files '("lib/lv2")))))
+ (synopsis
+ "SoundFonts as LV2 plugins via FluidSynth")
+ (description
+ "@code{FluidPlug} provides SoundFonts as LV2 plugins via FluidSynth.")
+ (home-page "https://github.com/falkTX/FluidPlug")
+ (license
+ (delete-duplicates
+ (map fluidplug-plugin-license fluidplug-plugins))))))
base-commit: 5ab3c4c1e43ebb637551223791db0ea3519986e1
--
2.46.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins.
2024-10-20 22:54 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
@ 2024-10-20 22:54 ` Giacomo Leidi via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-10-20 22:54 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi, Giacomo Leidi
* gnu/packages/fluidplug.scm (fluidplug-plugin->package): New variable;
(fluidplug-airfont320-lv2): new variable;
(fluidplug-avl-drumkits-perc-lv2): new variable;
(fluidplug-black-pearl-4a-lv2): new variable;
(fluidplug-black-pearl-4b-lv2): new variable;
(fluidplug-black-pearl-5-lv2): new variable;
(fluidplug-red-zeppelin-4-lv2): new variable;
(fluidplug-red-zeppelin-5-lv2): new variable;
(fluidplug-fluidgm-lv2): new variable;
(fluidplug-fluidbass-lv2): new variable;
(fluidplug-fluidbrass-lv2): new variable;
(fluidplug-fluidchromperc-lv2): new variable;
(fluidplug-fluiddrums-lv2): new variable;
(fluidplug-fluidensemble-lv2): new variable;
(fluidplug-fluidethnic-lv2): new variable;
(fluidplug-fluidguitars-lv2): new variable;
(fluidplug-fluidorgans-lv2): new variable;
(fluidplug-fluidpercussion-lv2): new variable;
(fluidplug-fluidpianos-lv2): new variable;
(fluidplug-fluidpipes-lv2): new variable;
(fluidplug-fluidreeds-lv2): new variable;
(fluidplug-fluidsoundfx-lv2): new variable;
(fluidplug-fluidstrings-lv2): new variable;
(fluidplug-fluidsynthfx-lv2): new variable;
(fluidplug-fluidsynthleads-lv2): new variable;
(fluidplug-fluidsynthpads-lv2): new variable.
Change-Id: If67aa88f6dd1e7c889ea7e42c418e1157699312b
---
gnu/packages/fluidplug.scm | 126 +++++++++++++++++++++++++++++++++++++
1 file changed, 126 insertions(+)
diff --git a/gnu/packages/fluidplug.scm b/gnu/packages/fluidplug.scm
index b45d3a85b5..4838b09dcc 100644
--- a/gnu/packages/fluidplug.scm
+++ b/gnu/packages/fluidplug.scm
@@ -317,3 +317,129 @@ (define-public fluidplug-lv2
(license
(delete-duplicates
(map fluidplug-plugin-license fluidplug-plugins))))))
+
+(define (fluidplug-plugin->package record)
+ (package
+ (inherit fluidplug-lv2)
+ (name (fluidplug-plugin->package-name record))
+ (arguments
+ (substitute-keyword-arguments (package-arguments fluidplug-lv2)
+ ((#:make-flags make-flags)
+ #~(list (string-append "DESTDIR=" #$output)
+ "PREFIX="))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'unpack-plugin
+ (lambda _
+ (symlink #$(fluidplug-plugin->origin record)
+ #$(fluidplug-plugin->local-path record))))
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke `("make" ,@make-flags
+ #$(fluidplug-plugin-name record)))))
+ (replace 'install
+ (lambda _
+ (let* ((plugin-directory
+ (string-append #$(fluidplug-plugin-name record)
+ ".lv2"))
+ (lib (string-append #$output "/lib/lv2"))
+ (share/doc (string-append #$output "/share/doc"))
+ (plugin-lib (string-append lib "/" plugin-directory)))
+
+ ;; Install plugin
+ (for-each
+ (lambda (f)
+ (install-file f plugin-lib))
+ (find-files plugin-directory
+ "^.*\\.(sf2|so|ttl)$"))
+
+ ;; Install license
+ (for-each
+ (lambda (f)
+ (install-file f share/doc))
+ (find-files plugin-directory "(README|License\\.pdf)"))
+
+ ;; Install UI
+ (copy-recursively (string-append plugin-directory "/modgui")
+ (string-append plugin-lib "/modgui")))))))))
+ (description
+ (string-append (package-description fluidplug-lv2) "
+
+This package provides the @code{" (fluidplug-plugin-name record)
+"} LV2 plugin."))
+ (license (fluidplug-plugin-license record))))
+
+(define-public fluidplug-airfont320-lv2
+ (fluidplug-plugin->package airfont320-fluidplug-plugin))
+
+(define-public fluidplug-avl-drumkits-perc-lv2
+ (fluidplug-plugin->package avl-drumkits-perc-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4a-lv2
+ (fluidplug-plugin->package black-pearl-4a-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-4b-lv2
+ (fluidplug-plugin->package black-pearl-4b-fluidplug-plugin))
+
+(define-public fluidplug-black-pearl-5-lv2
+ (fluidplug-plugin->package black-pearl-5-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-4-lv2
+ (fluidplug-plugin->package red-zeppelin-4-fluidplug-plugin))
+
+(define-public fluidplug-red-zeppelin-5-lv2
+ (fluidplug-plugin->package red-zeppelin-5-fluidplug-plugin))
+
+(define-public fluidplug-fluidgm-lv2
+ (fluidplug-plugin->package fluidgm-fluidplug-plugin))
+
+(define-public fluidplug-fluidbass-lv2
+ (fluidplug-plugin->package fluidbass-fluidplug-plugin))
+
+(define-public fluidplug-fluidbrass-lv2
+ (fluidplug-plugin->package fluidbrass-fluidplug-plugin))
+
+(define-public fluidplug-fluidchromperc-lv2
+ (fluidplug-plugin->package fluidchromperc-fluidplug-plugin))
+
+(define-public fluidplug-fluiddrums-lv2
+ (fluidplug-plugin->package fluiddrums-fluidplug-plugin))
+
+(define-public fluidplug-fluidensemble-lv2
+ (fluidplug-plugin->package fluidensemble-fluidplug-plugin))
+
+(define-public fluidplug-fluidethnic-lv2
+ (fluidplug-plugin->package fluidethnic-fluidplug-plugin))
+
+(define-public fluidplug-fluidguitars-lv2
+ (fluidplug-plugin->package fluidguitars-fluidplug-plugin))
+
+(define-public fluidplug-fluidorgans-lv2
+ (fluidplug-plugin->package fluidorgans-fluidplug-plugin))
+
+(define-public fluidplug-fluidpercussion-lv2
+ (fluidplug-plugin->package fluidpercussion-fluidplug-plugin))
+
+(define-public fluidplug-fluidpianos-lv2
+ (fluidplug-plugin->package fluidpianos-fluidplug-plugin))
+
+(define-public fluidplug-fluidpipes-lv2
+ (fluidplug-plugin->package fluidpipes-fluidplug-plugin))
+
+(define-public fluidplug-fluidreeds-lv2
+ (fluidplug-plugin->package fluidreeds-fluidplug-plugin))
+
+(define-public fluidplug-fluidsoundfx-lv2
+ (fluidplug-plugin->package fluidsoundfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidstrings-lv2
+ (fluidplug-plugin->package fluidstrings-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthfx-lv2
+ (fluidplug-plugin->package fluidsynthfx-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthleads-lv2
+ (fluidplug-plugin->package fluidsynthleads-fluidplug-plugin))
+
+(define-public fluidplug-fluidsynthpads-lv2
+ (fluidplug-plugin->package fluidsynthpads-fluidplug-plugin))
--
2.46.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#69593] [PATCH v3 3/3] teams: Add FluidPlug team.
2024-10-20 22:54 ` [bug#69593] [PATCH v3 1/3] gnu: Add fluidplug-lv2 Giacomo Leidi via Guix-patches via
2024-10-20 22:54 ` [bug#69593] [PATCH v3 2/3] gnu: Add fluidplug plugins Giacomo Leidi via Guix-patches via
@ 2024-10-20 22:54 ` Giacomo Leidi via Guix-patches via
1 sibling, 0 replies; 17+ messages in thread
From: Giacomo Leidi via Guix-patches via @ 2024-10-20 22:54 UTC (permalink / raw)
To: 69593; +Cc: Giacomo Leidi
* etc/teams.scm (fluidplug): New team; add Giacomo to it.
Change-Id: I78af3e3ab865a9a740d69598c3149e7ad0270893
---
etc/teams.scm | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/etc/teams.scm b/etc/teams.scm
index 1fb87e0947..81d92ce829 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -580,6 +580,12 @@ (define-team zig
"guix/build/zig-build-system.scm"
"guix/build-system/zig.scm")))
+(define-team fluidplug
+ (team 'fluidplug
+ #:name "FluidPlug"
+ #:description "FluidPlug LV2 plugins"
+ #:scope (list "gnu/packages/fluidplug.scm")))
+
\f
(define-member (person "Eric Bavier"
"bavier@posteo.net")
@@ -750,6 +756,10 @@ (define-member (person "André Batista"
"nandre@riseup.net")
mozilla)
+(define-member (person "Giacomo Leidi"
+ "goodoldpaul@autistici.org")
+ fluidplug)
+
\f
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
--
2.46.0
^ permalink raw reply related [flat|nested] 17+ messages in thread