all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Giacomo Leidi via Guix-patches via <guix-patches@gnu.org>
To: 69593@debbugs.gnu.org
Cc: Giacomo Leidi <goodoldpaul@autistici.org>,
	Giacomo Leidi <goodoldpaul@autistici.org>
Subject: [bug#69593] [PATCH 2/3] gnu: Add fluidplug plugins.
Date: Wed,  6 Mar 2024 21:20:45 +0100	[thread overview]
Message-ID: <49f7e067bf879d67cab4ea41af309b0e36e008ae.1709756446.git.goodoldpaul@autistici.org> (raw)
In-Reply-To: <3747d738067368c29d71f921d3f31452902858be.1709756446.git.goodoldpaul@autistici.org>

* 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





  reply	other threads:[~2024-03-06 20:48 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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-03-06 20:20   ` Giacomo Leidi via Guix-patches via [this message]
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
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
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49f7e067bf879d67cab4ea41af309b0e36e008ae.1709756446.git.goodoldpaul@autistici.org \
    --to=guix-patches@gnu.org \
    --cc=69593@debbugs.gnu.org \
    --cc=goodoldpaul@autistici.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.