Subject: [bug#38570] [PATCH 1/2] gnu: Add gx-plugins-lv2.

From: Alexandros Theodotou <[email-masked]>
Date: Thu, 12 Dec 2019 01:14:03 +0000

Hi,

I deleted many gx-* packages since upstream provides a meta-repository
for them. FWIW Arch does the same:
https://www.archlinux.org/packages/community/x86_64/gxplugins.lv2/

Thanks,
Alex
From 510c60742c56018d6b3d66dca034f4962cc2357f Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <[email-masked]>
Date: Wed, 11 Dec 2019 23:52:00 +0000
Subject: [PATCH 1/2] gnu: Add gx-plugins-lv2.

* gnu/packages/music.scm (gx-plugins-lv2): New variable.
* gnu/packages/music.scm (gx-guvnor-lv2): Remove variable.
* gnu/packages/music.scm (gx-vbass-preamp-lv2): Remove variable.
* gnu/packages/music.scm (gx-suppa-tone-bender-lv2): Remove variable.
* gnu/packages/music.scm (gx-saturator-lv2): Remove variable.
* gnu/packages/music.scm (gx-hyperion-lv2): Remove variable.
* gnu/packages/music.scm (gx-voodoo-fuzz-lv2): Remove variable.
* gnu/packages/music.scm (gx-super-fuzz-lv2): Remove variable.
* gnu/packages/music.scm (gx-vintage-fuzz-master-lv2): Remove variable.
* gnu/packages/music.scm (gx-slow-gear-lv2): Remove variable.
---
 gnu/packages/music.scm | 271 ++++++++++-------------------------------
 1 file changed, 67 insertions(+), 204 deletions(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 54f2638f57..ac32660454 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3152,74 +3152,10 @@ standard MIDI file with the csvmidi program.")
     (home-page "http://www.fourmilab.ch/webtools/midicsv/")
     (license license:public-domain)))
 
-(define-public gx-guvnor-lv2
-  (package
-    (name "gx-guvnor-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxGuvnor.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "1wa5070j40p7f0b3kr259pzm99xb6cf2badr2capayjvgayd6gnm"))))
-    (build-system gnu-build-system)
-    (arguments
-     `(;; The check target is used only to output a warning.
-       #:tests? #f
-       #:make-flags
-       (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'configure
-           (lambda _
-             (substitute* "Makefile"
-               (("INSTALL_DIR = .*") "INSTALL_DIR=/lib/lv2\n")
-               (("install : all") "install :"))
-             #t)))))
-    (inputs
-     `(("lv2" ,lv2)))
-    (home-page "https://github.com/brummer10/GxGuvnor.lv2")
-    (synopsis "Overdrive/distortion pedal simulation")
-    (description "This package provides the LV2 plugin \"GxGuvnor\", a
-simulation of an overdrive or distortion pedal for guitars.")
-    ;; The LICENSE file says GPLv3 but the license headers in the files say
-    ;; GPLv2 or later.  The whole project is released under GPLv3 or later
-    ;; according to https://github.com/brummer10/GxGuvnor.lv2/issues/1
-    (license license:gpl3+)))
-
-(define-public gx-vbass-preamp-lv2
-  (let ((commit "eb999b0ca0ef4da40a59e458a9ab6e7042b96c99")
-        (revision "2"))
-    (package (inherit gx-guvnor-lv2)
-      (name "gx-vbass-preamp-lv2")
-      (version (string-append "0-" revision "." (string-take commit 9)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/brummer10/GxVBassPreAmp.lv2")
-                      (commit commit)))
-                (sha256
-                 (base32
-                  "0firap073ldw4nrykkd7jvyyj0jbl1nslxyzjj4kswazp99x7d9h"))
-                (file-name (string-append name "-" version "-checkout"))))
-      (inputs
-       `(("lv2" ,lv2)
-         ("gtk+" ,gtk+-2)))
-      (native-inputs
-       `(("pkg-config" ,pkg-config)))
-      (home-page "https://github.com/brummer10/GxVBassPreAmp.lv2")
-      (synopsis "Simulation of the Vox Venue Bass 100 Pre Amp Section")
-      (description "This package provides the LV2 plugin \"GxVBassPreAmp\", a
-pre-amplifier simulation modelled after the 1984 Vox Venue Bass 100 Pre Amp
-Section."))))
-
 (define-public gx-overdriver-lv2
   (let ((commit "ed71801987449414bf3adaa0dbfac68e8775f1ce")
         (revision "1"))
-    (package (inherit gx-guvnor-lv2)
+    (package
       (name "gx-overdriver-lv2")
       (version (string-append "0-" revision "." (string-take commit 9)))
       (source (origin
@@ -3231,15 +3167,34 @@ Section."))))
                  (base32
                   "13j614jh525fbkby79nnzwj0z1ac0c9wclyn5pfqvkmx6a7j24r8"))
                 (file-name (string-append name "-" version "-checkout"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(;; The check target is used only to output a warning.
+         #:tests? #f
+         #:make-flags
+         (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
+         #:phases
+         (modify-phases %standard-phases
+           (replace 'configure
+             (lambda _
+               (substitute* "Makefile"
+                 (("INSTALL_DIR = .*") "INSTALL_DIR=/lib/lv2\n")
+                 (("install : all") "install :"))
+               #t)))))
+      (inputs
+       `(("lv2" ,lv2)))
       (home-page "https://github.com/brummer10/GxOverDriver.lv2")
       (synopsis "Overdrive effect with level and tone control")
       (description "This package provides the LV2 plugin \"GxOverDriver\", an
-overdrive effect."))))
+  overdrive effect.")
+      ;; The LICENSE file says GPLv3 but the license headers in the files say
+      ;; GPLv2 or later.  The whole project is released under GPLv3 or later
+      (license license:gpl3+))))
 
 (define-public gx-tone-mender-lv2
   (let ((commit "b6780b4a3e4782b3ed0e5882d6788f178aed138f")
         (revision "1"))
-    (package (inherit gx-guvnor-lv2)
+    (package (inherit gx-overdriver-lv2)
       (name "gx-tone-mender-lv2")
       (version (string-append "0-" revision "." (string-take commit 9)))
       (source (origin
@@ -3259,7 +3214,7 @@ clean boost effect with a 3-knob tonestack."))))
 (define-public gx-push-pull-lv2
   (let ((commit "7f76ae2068498643ac8671ee0930b13ee3fd8eb5")
         (revision "1"))
-    (package (inherit gx-guvnor-lv2)
+    (package (inherit gx-overdriver-lv2)
       (name "gx-push-pull-lv2")
       (version (string-append "0-" revision "." (string-take commit 9)))
       (source (origin
@@ -3276,145 +3231,10 @@ clean boost effect with a 3-knob tonestack."))))
       (description "This package provides the LV2 plugin \"GxPushPull\", a
 simulation of a push pull transistor fuzz effect with added high octave."))))
 
-(define-public gx-suppa-tone-bender-lv2
-  (package (inherit gx-guvnor-lv2)
-    (name "gx-suppa-tone-bender-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxSuppaToneBender.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "01x6bjmllkmvxfzc5xwdix7w021j26js71awv728cxsmkxgqw0zy"))))
-    (home-page "https://github.com/brummer10/GxSuppaToneBender.lv2")
-    (synopsis "Simulation of the Vox Suppa Tone Bender pedal")
-    (description "This package provides the LV2 plugin
-\"GxSuppaToneBender\", a simulation modelled after the Vox Suppa Tone Bender
-pedal.")))
-
-(define-public gx-saturator-lv2
-  (let ((commit "605330f432c94b6eb3f8203cbe472befae959532")
-        (revision "3"))
-    (package (inherit gx-vbass-preamp-lv2)
-      (name "gx-saturator-lv2")
-      (version (string-append "0-" revision "." (string-take commit 9)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/brummer10/GxSaturator.lv2")
-                      (commit commit)))
-                (sha256
-                 (base32
-                  "1w4nvh0rmxrv3s3hmh4fs74f3hc0jn31v00j769j7v68mqr7kawy"))
-                (file-name (string-append name "-" version "-checkout"))))
-      (home-page "https://github.com/brummer10/GxSaturator.lv2")
-      (synopsis "Saturation effect")
-      (description "This package provides the LV2 plugin \"GxSaturator\", a
-saturation effect."))))
-
-(define-public gx-hyperion-lv2
-  (package (inherit gx-guvnor-lv2)
-    (name "gx-hyperion-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxHyperion.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "1vx79s6s9if117y2g0ppdja2sv2wcny6xcfl3j1z4cipahnildxf"))))
-    (home-page "https://github.com/brummer10/GxHyperion.lv2")
-    (synopsis "Simulation of the Hyperion Fuzz pedal")
-    (description "This package provides the LV2 plugin \"GxHyperion\", a
-simulation of the Hyperion Fuzz pedal.")))
-
-(define-public gx-voodoo-fuzz-lv2
-  (package (inherit gx-guvnor-lv2)
-    (name "gx-voodoo-fuzz-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxVoodoFuzz.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "1v0scphivri1fk4hl20j13f92i48mnx1zsil4hgnadsmm4nsfw43"))))
-    (home-page "https://github.com/brummer10/GxVoodoFuzz.lv2")
-    (synopsis "Fuzz effect modelled after the Voodoo Lab SuperFuzz")
-    (description "This package provides the LV2 plugin \"GxVoodooFuzz\", a
-simulation modelled after the Voodoo Lab SuperFuzz pedal.  It's basically a
-Bosstone circuit, followed by the tone control of the FoxToneMachine in
-parallel with a DarkBooster, followed by a volume control.")))
-
-(define-public gx-super-fuzz-lv2
-  (package (inherit gx-guvnor-lv2)
-    (name "gx-super-fuzz-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxSuperFuzz.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "1jlljd9hlgfflbiizq47lv1xbbgjyx3v835mf24zmh1q5zsw4np4"))))
-    (home-page "https://github.com/brummer10/GxSuperFuzz.lv2")
-    (synopsis "Fuzz effect modelled after the UniVox SuperFuzz")
-    (description "This package provides the LV2 plugin \"GxSuperFuzz\", an
-analog simulation of the UniVox SuperFuzz pedal.  In this simulation the trim
-pot, which is usually in the housing, is exposed as a control parameter.  It
-adjusts the amount of harmonics.")))
-
-(define-public gx-vintage-fuzz-master-lv2
-  (package (inherit gx-guvnor-lv2)
-    (name "gx-vintage-fuzz-master-lv2")
-    (version "0.1")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/brummer10/GxVintageFuzzMaster.lv2.git")
-                    (commit (string-append "v" version))))
-              (file-name (string-append name "-" version "-checkout"))
-              (sha256
-               (base32
-                "02jb211z8rw2qr5r1z5mdxlqgiw6cbc319xpqplvn6k21c59mskv"))))
-    (home-page "https://github.com/brummer10/GxVintageFuzzMaster.lv2")
-    (synopsis "Fuzz effect simulation of the vintage Fuzz Master")
-    (description "This package provides the LV2 plugin
-\"GxVintageFuzzMaster\", a simulation of the vintage Fuzz Master pedal.")))
-
-(define-public gx-slow-gear-lv2
-  (let ((commit "5d37e775b0feef1d82feee94e2a7a2d7e57efe2d")
-        (revision "3"))
-    (package (inherit gx-vbass-preamp-lv2)
-      (name "gx-slow-gear-lv2")
-      (version (string-append "0-" revision "." (string-take commit 9)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/brummer10/GxSlowGear.lv2")
-                      (commit commit)))
-                (sha256
-                 (base32
-                  "141mz69zkhk3lm54bb6wgpnghb92zm1ig7fv07240cmhydqji1q1"))
-                (file-name (string-append name "-" version "-checkout"))))
-      (home-page "https://github.com/brummer10/GxSlowGear.lv2")
-      (synopsis "Slow gear audio effect")
-      (description "This package provides the LV2 plugin \"GxSlowGear\", a
-slow gear audio effect to produce volume swells."))))
-
 (define-public gx-switchless-wah-lv2
   (let ((commit "7b08691203314612999f0ce2328cdc1161cd6665")
         (revision "2"))
-    (package (inherit gx-guvnor-lv2)
+    (package (inherit gx-overdriver-lv2)
       (name "gx-switchless-wah-lv2")
       (version (string-append "0-" revision "." (string-take commit 9)))
       (source (origin
@@ -3431,6 +3251,49 @@ slow gear audio effect to produce volume swells."))))
       (description "This package provides the LV2 plugin \"GxSwitchlessWah\",
 a simulation of an analog Wah pedal with switchless activation."))))
 
+(define-public gx-plugins-lv2
+  (package
+    (name "gx-plugins-lv2")
+    (version "0.7")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/brummer10/gxplugins.lv2.git")
+               (commit (string-append "v" version))
+               (recursive? #t))) ; each plugin is a submodule
+        (file-name (git-file-name name version))
+        (sha256
+         (base32
+          "0jqdqnkg7pg9plcbxy49p7gcs1aj6h0xf7y9gndmjmkw5yjn2940"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no check target
+       #:make-flags
+       (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+             (string-append "INSTALL_DIR=/lib/lv2"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'set-CC-variable
+           (lambda _
+             (setenv "CC" "gcc") #t))
+         ;; no configure script
+         (delete 'configure))))
+    (inputs
+     `(("cairo" ,cairo)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("lv2" ,lv2)))
+    (home-page "https://github.com/brummer10/gxplugins.lv2")
+    (synopsis "Set of extra LV2 plugins from the Guitarix project")
+    (description
+     "GxPlugins.lv2 is a set of extra standalone LV2 plugins designed to
+compliment the Guitarix project.")
+    ;; The meta repository is licensed under GPLv3+ but some plugins are
+    ;; under the GPLv2+
+    (license (list license:gpl2+ license:gpl3+))))
+
 (define-public rkrlv2
   ;; This commit corresponds to the beta_3 tag
   (let ((commit "7edcb4e29a358623bfd57fa2c27e5da60adfcec3")
-- 
2.24.0