GNU bug report logs - #56140
Add optional-lite and distrho-ports

Previous Next

Package: guix-patches;

Reported by: Sughosha <Sughosha <at> proton.me>

Date: Wed, 22 Jun 2022 12:38:02 UTC

Severity: normal

Tags: patch

Done: Ricardo Wurmus <rekado <at> elephly.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 56140 in the body.
You can then email your comments to 56140 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Wed, 22 Jun 2022 12:38:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sughosha <Sughosha <at> proton.me>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Wed, 22 Jun 2022 12:38:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "guix-patches <at> gnu.org" <guix-patches <at> gnu.org>
Subject: [Patches] Add and update music packages
Date: Wed, 22 Jun 2022 12:36:58 +0000
[Message part 1 (text/plain, inline)]
Empty Message
[Message part 2 (text/html, inline)]
[0004-gnu-Add-fabla.patch (text/x-patch, attachment)]
[0002-gnu-Add-distrho-ports.patch (text/x-patch, attachment)]
[0001-gnu-Update-sorcer.patch (text/x-patch, attachment)]
[0003-gnu-Add-luppp.patch (text/x-patch, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 24 Jun 2022 08:55:02 GMT) Full text and rfc822 format available.

Message #8 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "56140 <at> debbugs.gnu.org" <56140 <at> debbugs.gnu.org>
Subject: Resending the patches with correcting mistakes.
Date: Fri, 24 Jun 2022 08:54:05 +0000
[Message part 1 (text/plain, inline)]
Sorry that I have not used full sentenses in change log. I came to know about it later. I am sending all the patches again.
[Message part 2 (text/html, inline)]
[patch1.patch (text/x-patch, attachment)]
[patch2.patch (text/x-patch, attachment)]
[patch3.patch (text/x-patch, attachment)]
[patch4.patch (text/x-patch, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Tue, 28 Jun 2022 07:46:02 GMT) Full text and rfc822 format available.

Message #11 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Alice BRENON <alice.brenon <at> ens-lyon.fr>
To: 56140 <at> debbugs.gnu.org
Subject: [Patches] Add and update music packages
Date: Tue, 28 Jun 2022 09:45:26 +0200
Hi !

Thanks for submitting this patch ! I'm in no position to provide
a definitive answer to accept or reject this but here are some immediate
things that could be improved.

- your description of Fabla doesn't add much information compared to
  the synopsis. What makes it special ? How is it different from the
  other similar tools ? (see
  https://guix.gnu.org/fr/manual/devel/en/html_node/Synopses-and-Descriptions.html#Synopses-and-Descriptions
  for inspiration)
- the other packages seem to have more extensive description, but they
  make very long lines, have you tried formatting your package using
  the `guix style` command ?
  (https://guix.gnu.org/fr/manual/devel/en/html_node/Formatting-Code.html#Formatting-Code)
- you seem to consistently use the "old" syntax for
  packages in native-inputs, as opposed to inputs, is there a good
  reason for that or have you maybe only found examples where the
  native-inputs haven't been modernized ? While it makes sense to
  rename `cmake-minimal` to `cmake` in the definition of
  `distrho-ports` (though I wonder `luppp` didn't require the same
  renaming and keeps the key "cmake-minimal" for `cmake-minimal`, all
  the others occurrences (`("pkg-config" ,pkg-config)`, `("lv2" ,lv2)`…)
  are totally unneeded for as far as I understand and could be
  simplified as `(list pkg-config lv2 mesa)`.

I'm also a bit curious as to why tests need to be explicitly
deactivated in `sorcer`, does running the default cmake command to test
the project result in a failure, not just a NOP ?

I hope some other people will take it over from there because I don't
have much more to contribute : )

Cheers,

Alice




Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Tue, 28 Jun 2022 08:31:02 GMT) Full text and rfc822 format available.

Message #14 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "56140 <at> debbugs.gnu.org" <56140 <at> debbugs.gnu.org>
Subject: [Patches] Add and update music packages
Date: Tue, 28 Jun 2022 08:30:42 +0000
[Message part 1 (text/plain, inline)]
Hi Alice,

First of all, thanks for reviewing my patches :)
> - your description of Fabla doesn't add much information compared to the synopsis. What makes it special ? How is it different from the other similar tools ? (see https://guix.gnu.org/fr/manual/devel/en/html_node/Synopses-and-Descriptions.html#Synopses-and-Descriptions for inspiration)
I will improve the descriptions.
> - the other packages seem to have more extensive description, but they make very long lines, have you tried formatting your package using the `guix style` command ? (https://guix.gnu.org/fr/manual/devel/en/html_node/Formatting-Code.html#Formatting-Code)
Sorry that I have forgot this step. I will do it.
> - you seem to consistently use the "old" syntax for packages in native-inputs, as opposed to inputs, is there a good reason for that or have you maybe only found examples where the native-inputs haven't been modernized ? While it makes sense to rename `cmake-minimal` to `cmake` in the definition of `distrho-ports` (though I wonder `luppp` didn't require the same renaming and keeps the key "cmake-minimal" for `cmake-minimal`, all the others occurrences (`("pkg-config" ,pkg config)`, `("lv2" ,lv2)`…) are totally unneeded for as far as I understand and could be simplified as `(list pkg-config lv2 mesa)`.
It's just that I practiced to use the old way for native-inputs. Many packages require to do so, for example `("glib:bin" ,glib "bin")` cannot be declared as somethig like `(list glib)` (as far as I know). It's just that mejority of the packages I defined had required such type of native-inputs, so I practiced it that way.
> I'm also a bit curious as to why tests need to be explicitly deactivated in `sorcer`, does running the default cmake command to test the project result in a failure, not just a NOP ?
`sorcer` was initially not packaged by me. It was failing to build, so I updated it to the most recent commit and removed the commands in the arguments which are no longer required in this commit. Disabling the tests is as it was before, as in the comment it says that tests are not defined in the git repository.

I will improve the patches, fixing mistakes, and then resend the patches.
Thank you.
[Message part 2 (text/html, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Tue, 28 Jun 2022 12:41:02 GMT) Full text and rfc822 format available.

Message #17 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Maxime Devos <maximedevos <at> telenet.be>
To: Sughosha <Sughosha <at> proton.me>, "56140 <at> debbugs.gnu.org"
 <56140 <at> debbugs.gnu.org>
Subject: Re: [bug#56140] [Patches] Add and update music packages
Date: Tue, 28 Jun 2022 14:40:04 +0200
[Message part 1 (text/plain, inline)]
Sughosha via Guix-patches via schreef op di 28-06-2022 om 08:30
[+0000]:
> glib:bin" ,glib "bin")` cannot be declared as somethig like `(list
> glib)` (as far as I know). 

You can do (list `(,glib "bin") hello other-package etc...) (untested).

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 01 Jul 2022 16:05:01 GMT) Full text and rfc822 format available.

Message #20 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "56140 <at> debbugs.gnu.org" <56140 <at> debbugs.gnu.org>
Subject: Re: [bug#56140] [Patches] Add and update music packages
Date: Fri, 01 Jul 2022 16:04:39 +0000
[Message part 1 (text/plain, inline)]
Fixed mistakes and improved.
[0001-gnu-sorcer-Update-to-1.1.3-6.cc7f6f5.patch (text/x-patch, attachment)]
[0002-gnu-Add-fabla.patch (text/x-patch, attachment)]
[0003-gnu-Add-luppp.patch (text/x-patch, attachment)]
[0004-gnu-Add-distrho-ports.patch (text/x-patch, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 01 Jul 2022 17:33:01 GMT) Full text and rfc822 format available.

Message #23 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: 56140 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> proton.me>, Alice BRENON <alice.brenon <at> ens-lyon.fr>
Subject: [Patches] Add and update music packages
Date: Fri, 01 Jul 2022 19:29:17 +0200
[Message part 1 (text/plain, inline)]
Hi,

I slightly modified the patches as discussed on IRC.

I’m not sure about what to do with the last patch of the series, the one
adding distrho-ports.  This package bundles a bunch of other libraries
and the license situation is not clear.  I just spot checked one or two
plugins and their licenses do not appear in the license field so I’d
prefer to have some more eyes on this and see if things can be unbundled
some more.

Below is my modified package definition.

-- 
Ricardo


[0001-gnu-Add-distrho-ports.patch (text/x-patch, inline)]
From be138ba5b9898654cf935f6828ae53a8211ff634 Mon Sep 17 00:00:00 2001
From: Sughosha <sughosha <at> proton.me>
Date: Fri, 1 Jul 2022 17:55:37 +0200
Subject: [PATCH] gnu: Add distrho-ports.

* gnu/packages/music.scm (distrho-ports): New variable.
---
 gnu/packages/music.scm | 63 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index cc9bae5612..297748e39e 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -6019,6 +6019,69 @@ (define-public mamba
 ones.")
    (license license:bsd-0)))
 
+(define-public distrho-ports
+  (package
+    (name "distrho-ports")
+    (version "0.2021-03-15")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/DISTRHO/DISTRHO-Ports")
+                    ;; This commit corresponds to tag 2021-03-15
+                    (commit "fe5bf2e87dd440ba98d3e8ac647b8518e2851f74")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0a0i5ajqww8zpgrgpr1n4r2418l2sakvdz9y7pjwnx8168kmlmpl"))))
+    (build-system meson-build-system)
+    (inputs
+     (list fftwf
+           alsa-lib
+           freetype
+           libx11
+           libxrender
+           libxext
+           libxcursor
+           mesa))
+    (native-inputs
+     (list pkg-config
+           cmake-minimal))
+    (home-page "https://github.com/DISTRHO/DISTRHO-Ports")
+    (synopsis "Audio plugins and LV2 ports")
+    (description
+     "This package contains LV2 ports of the following plugins:
+@itemize
+@item The Function,
+@item The Pilgrim,
+@item Dexed,
+@item dRowAudio plugins (Distortion, Distortion Shaper, Flanger, Reverb,
+  Tremolo),
+@item DrumSynth,
+@item EasySSP,
+@item EQinox,
+@item HiReSam,
+@item JuceOPL,
+@item KlangFalter,
+@item LUFS Meter,
+@item LUFS Meter (Multichannel),
+@item Luftikus,
+@item Obxd,
+@item PitchedDelay,
+@item ReFine,
+@item StereoSourceSeperation,
+@item Swanky Amp,
+@item TAL plugins (Dub-3, Filter, Filter-2, Noize Mak3r, Reverb, Reverb-II,
+  Reverb-III, Vocoder-II),
+@item Temper,
+@item Vex,
+@item Vitalium, and
+@item Wolpertinger.
+@end itemize
+")
+    ;; This package consists of several plugins.
+    ;; Different copyrights and licenses apply to different plugins.
+    (license (list license:gpl2 license:lgpl3))))
+
 (define-public dpf-plugins
   (package
     (name "dpf-plugins")
-- 
2.36.1


Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 01 Jul 2022 18:06:02 GMT) Full text and rfc822 format available.

Message #26 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Thorsten Wilms <t_w_ <at> freenet.de>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: Sughosha <sughosha <at> proton.me>, 56140 <at> debbugs.gnu.org,
 Alice BRENON <alice.brenon <at> ens-lyon.fr>
Subject: Re: [bug#56140] [Patches] Add and update music packages
Date: Fri, 1 Jul 2022 20:05:05 +0200
On Fri, 01 Jul 2022 19:29:17 +0200
Ricardo Wurmus <rekado <at> elephly.net> wrote:

> I’m not sure about what to do with the last patch of the series, the one
> adding distrho-ports.  This package bundles a bunch of other libraries
> and the license situation is not clear.  I just spot checked one or two
> plugins and their licenses do not appear in the license field so I’d
> prefer to have some more eyes on this and see if things can be unbundled
> some more.

When I had a go at packaging distrho-ports, I took notes about the
licensing situation and asked about it on the list. Issues include
total lack of licensing information, licensing info only upstream,
upstream unavailable due to DMCA takedwon.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49224

---
non-copyleft for drow (MIT). agpl3 for HiReSam.

Just no license info for arctican-function, artican-pilgrim and vex.

No license info found in the repo, but found by following the URL
given in each source/JucePluginCharacteristics.h:
- ports-legacy/HiReSam ->
https://github.com/klangfreund/SpectrumAnalyser: GPL2+ or Affero
GPL3
- ports-legacy/drowaudio-common ->
https://github.com/drowaudio/drowaudio: MIT. Plus LGPL2.1 for
included Soundtouch, which I found no mention of in DISTRHO-Ports
sources. Also mentions separate license for FFTReal, which I also
see no mention of in DISTRHO-Ports sources.
- ports-legacy/easySSP ->
https://github.com/automatl/audio-dsp-multi-visualize/: GPL3.
- ports-legacy/juce-opl -> https://bsutherland.github.io/JuceOPLVSTi/
-> https://github.com/bsutherland/JuceOPLVSTi: GPL2.
- ports/legacyluftikus ->
https://code.google.com/archive/p/lkjb-plugins/: GPL2.
- ports-legacy/pitchedDelay ->
https://code.google.com/archive/p/lkjb-dc12/: GPL2.
- ports-legacy/refine -> https://github.com/lkjbdsp/lkjb-plugins#ReFine:
MIT. Strangely, this repo also includes PitchedDelay and Luftikus,
presented elsewhere as GPL2.
- ports-legacy/stereosourceseparation ->
https://github.com/laixinyuan/StereoSourceSepartion: Repository
unavailable due to DMCA takedown. According to falkTX, this is due
Steinberg having something against distribution of the VST2 SDK,
which is not included in the DISTRHO-Ports version.
- ports-legacy/temper -> https://github.com/creativeintent/temper:
GPL3.
- ports-legacy/wolpertinger -> https://tumbetoene.tuxfamily.org/
-> https://tumbetoene.tuxfamily.org/index.php?entry=entry110926-112345
-> download readme: GPL2+.
---


-- 
Thorsten Wilms <t_w_ <at> freenet.de>




Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Thu, 15 Jun 2023 16:32:02 GMT) Full text and rfc822 format available.

Message #29 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: 56140 <at> debbugs.gnu.org
Cc: "rekado <at> elephly.net" <rekado <at> elephly.net>,
 "alice.brenon <at> ens-lyon.fr" <alice.brenon <at> ens-lyon.fr>
Subject: [Patch v2 0/2]: gnu: Add distrho-ports.
Date: Thu, 15 Jun 2023 16:30:52 +0000
In this series of patches I refactored license field in detail,
unbundled third party libraries and fixed fonts not being displayed.




Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Thu, 15 Jun 2023 16:33:02 GMT) Full text and rfc822 format available.

Message #32 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: 56140 <at> debbugs.gnu.org
Cc: "rekado <at> elephly.net" <rekado <at> elephly.net>,
 "alice.brenon <at> ens-lyon.fr" <alice.brenon <at> ens-lyon.fr>
Subject: [Patch v2 1/2]: gnu: Add optional-lite.
Date: Thu, 15 Jun 2023 16:32:28 +0000
* gnu/packages/music.scm (optional-lite): New variable.
---
 gnu/packages/cpp.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 365b15a..8f5d305 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2068,6 +2068,29 @@ (define-public bloomberg-bde
       (home-page "https://github.com/bloomberg/bde")
       (license license:asl2.0))))
 
+(define-public optional-lite
+  (package
+    (name "optional-lite")
+    (version "3.5.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/martinmoene/optional-lite")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                 "0jpsm94kp1504yk9s2km86zv8xrszz30qanmhz2ljmvsdblz2l47"))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/martinmoene/optional-lite")
+    (synopsis "Nullable object for C++98, C++11 and later")
+    (description
+     "optional lite is a single-file header-only library to represent optional
+(nullable) objects and pass them by value. The library aims to provide a
+C++17-like optional for use with C++98 and later. If available, std::optional
+is used.")
+    (license license:boost1.0)))
+
 (define-public gulrak-filesystem
   (package
     (name "gulrak-filesystem")
--
libgit2 1.5.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Thu, 15 Jun 2023 16:35:02 GMT) Full text and rfc822 format available.

Message #35 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: 56140 <at> debbugs.gnu.org
Cc: "rekado <at> elephly.net" <rekado <at> elephly.net>,
 "alice.brenon <at> ens-lyon.fr" <alice.brenon <at> ens-lyon.fr>
Subject: [Patch v2 2/2]: gnu: Add distrho-ports.
Date: Thu, 15 Jun 2023 16:34:05 +0000
* gnu/packages/music.scm (distrho-ports): New variable.
---
 gnu/packages/music.scm | 135 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 135 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2e7edda..fbd1e76 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -6344,6 +6344,141 @@ (define-public mamba
 ones.")
    (license license:bsd-0)))
 
+(define-public distrho-ports
+  (let ((commit "f2dbaded0a05732e3499fa374a586e5b32370da5")
+        (revision "0"))
+    (package
+      (name "distrho-ports")
+      (version (git-version "0.2021-03-15" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/DISTRHO/DISTRHO-Ports")
+                      ;; This commit corresponds to tag 2021-03-15
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1rrnqwask2qg05ynisk6bpj118cl7c3w53rqrfg5x3sx847rjjgc"))
+                (snippet
+                 '(with-directory-excursion "ports-juce6"
+                    ;; Delete third party libraries.
+                    (for-each delete-file-recursively
+                      (list "swankyamp/thirdparty"
+                            "vitalium/third_party"))
+                    ;; Exclude them from building.
+                    (substitute*
+                     (list "swankyamp/meson.build"
+                           "vitalium/meson.build")
+                      (("'third") "#'third"))
+                    ;; Use system provided "nlohmann/json.hpp".
+                    (with-directory-excursion "vitalium/source"
+                      (substitute*
+                       (list "common/line_generator.h"
+                             "common/load_save.h"
+                             "common/tuning.h"
+                             "common/wavetable/wavetable_component.h"
+                             "common/wavetable/wavetable_creator.h"
+                             "common/wavetable/wavetable_keyframe.h"
+                             "interface/editor_sections/save_section.h"
+                             "interface/look_and_feel/skin.h"
+                             "synthesis/producers/sample_source.h")
+                        (("json/json\\.h") "nlohmann/json.hpp")))))))
+      (build-system meson-build-system)
+      (arguments
+       (list #:tests? #f ;no test target
+             #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'patch-paths
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (with-directory-excursion "libs"
+                       (for-each
+                         (lambda (dir)
+                           (substitute*
+                            (string-append dir "/source/modules/juce_graphics"
+                                           "/native/juce_linux_Fonts.cpp")
+                             (("/usr/share/fonts")
+                              (search-input-directory inputs "/etc/fonts"))))
+                         (list "juce5" "juce6" "juce7"))))))))
+      (native-inputs
+       (list cmake-minimal
+             concurrentqueue
+             nlohmann-json
+             optional-lite
+             pkg-config))
+      (inputs
+       (list alsa-lib
+             fontconfig
+             freetype
+             fftwf
+             libx11
+             libxcursor
+             libxext
+             libxrender
+             mesa))
+      (home-page "https://github.com/DISTRHO/DISTRHO-Ports")
+      (synopsis "Audio plugins and LV2 ports")
+      (description
+       "This package contains LV2 ports of the following plugins:
+@itemize
+@item The Function,
+@item The Pilgrim,
+@item CHOW,
+@item Dexed,
+@item dRowAudio plugins (Distortion, Distortion Shaper, Flanger, Reverb,
+  Tremolo),
+@item DrumSynth,
+@item EasySSP,
+@item EQinox,
+@item HiReSam,
+@item JuceOPL,
+@item KlangFalter,
+@item LUFS Meter,
+@item Luftikus,
+@item Obxd,
+@item PitchedDelay,
+@item ReFine,
+@item StereoSourceSeperation,
+@item Swanky Amp,
+@item TAL plugins (Dub-3, Filter, Filter-2, Noize Mak3r, Reverb, Reverb-II,
+  Reverb-III, Vocoder-II),
+@item Temper,
+@item Vex,
+@item Vitalium, and
+@item Wolpertinger.
+@end itemize
+")
+      ;; Licenses for lv2-ttl-generator, The Function, The Pilgrim,
+      ;; juce-demo-host and juce-demo-plugin are not declared.
+      (license
+        (list license:asl2.0 ;for msfa
+              license:bsd-2 ;for mingw-std-threads and dsp-utility
+              ;; There is no mention of licenses for dRowAudio plugins,
+              ;; Luftikus, PitchedDelay and ReFine in this repository, but the
+              ;; upstream repositories released them under MIT:
+              ;; https://github.com/drowaudio/drowaudio;
+              ;; https://github.com/lkjbdsp/lkjb-plugins.
+              license:expat ;for FFTConvolver
+              (license:fsf-free ;for Temper
+                "file:///ports-juce5/temper/source/TemperDsp.hpp")
+              license:gpl2 ;for juce-plugin, LUFS Meter and Obxd
+              ;; There is no mention of license for Wolpertinger, but the
+              ;; upstream released it under GPLv2+:
+              ;; https://github.com/jkroll20/wolpertinger.
+              license:gpl2+ ;for HiReSam, TAL plugins and Vex
+              ;; There is no mention of license for EasySSP in this repository,
+              ;; but the upstream repository released it under GPLv3:
+              ;; https://github.com/automatl/audio-dsp-multi-visualize.
+              license:gpl3 ;for JUCE and CHOW
+              license:gpl3+ ;for Dexed, Swanky Amp, Vitalium and KlangFalter
+              license:lgpl2.0+ ;for DrumSynth, EQinox
+              license:lgpl3+
+              license:lgpl2.1+ ;for juce-opl
+              (license:non-copyleft ;kiss_fft
+                (string-append "file:///ports-juce5/stereosourceseparation"
+                               "/source/kiss_fft/kiss_fft.c"))
+              license:wtfpl2))))) ;for FFTReal
+
 (define-public dpf-plugins
   (package
     (name "dpf-plugins")
--
libgit2 1.5.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Thu, 15 Jun 2023 18:52:02 GMT) Full text and rfc822 format available.

Message #38 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Sughosha <Sughosha <at> proton.me>
Cc: 56140 <at> debbugs.gnu.org,
 "alice.brenon <at> ens-lyon.fr" <alice.brenon <at> ens-lyon.fr>
Subject: Re: [Patch v2 2/2]: gnu: Add distrho-ports.
Date: Thu, 15 Jun 2023 20:38:56 +0200
Hi Sughosha,

> * gnu/packages/music.scm (distrho-ports): New variable.

Thanks for the patch!
> +(define-public distrho-ports
> +  (let ((commit "f2dbaded0a05732e3499fa374a586e5b32370da5")
> +        (revision "0"))
> +    (package
> +      (name "distrho-ports")
> +      (version (git-version "0.2021-03-15" revision commit))
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                      (url "https://github.com/DISTRHO/DISTRHO-Ports")
> +                      ;; This commit corresponds to tag 2021-03-15

As far as I can tell the commit corresponding to the tag is actually
fe5bf2e87dd440ba98d3e8ac647b8518e2851f74.

> +                (snippet
> +                 '(with-directory-excursion "ports-juce6"
> +                    ;; Delete third party libraries.
> +                    (for-each delete-file-recursively
> +                      (list "swankyamp/thirdparty"
> +                            "vitalium/third_party"))
> +                    ;; Exclude them from building.
> +                    (substitute*
> +                     (list "swankyamp/meson.build"
> +                           "vitalium/meson.build")

It’s nitpicking, but we seem to prefer a quoted list for substitute*.

> +             #~(modify-phases %standard-phases
> +                 (add-after 'unpack 'patch-paths
> +                   (lambda* (#:key inputs #:allow-other-keys)
> +                     (with-directory-excursion "libs"
> +                       (for-each
> +                         (lambda (dir)
> +                           (substitute*
> +                            (string-append dir "/source/modules/juce_graphics"
> +                                           "/native/juce_linux_Fonts.cpp")
> +                             (("/usr/share/fonts")
> +                              (search-input-directory inputs "/etc/fonts"))))
> +                         (list "juce5" "juce6" "juce7"))))))))

I’d prefer something like this:

--8<---------------cut here---------------start------------->8---
#~(modify-phases %standard-phases
    (add-after 'unpack 'patch-paths
      (lambda* (#:key inputs #:allow-other-keys)
        (let ((fonts (search-input-directory inputs "/etc/fonts")))
          (with-directory-excursion "libs"
            (substitute* (find-files "." "juce_linux_Fonts.cpp$")
              (("/usr/share/fonts") fonts)))))))
--8<---------------cut here---------------end--------------->8---

More generally, I think we should not use for-each since we already have
a way to pass multiple files to substitute*.

> +      (native-inputs
> +       (list cmake-minimal
> +             concurrentqueue
> +             nlohmann-json
> +             optional-lite
> +             pkg-config))

Why are these libraries native inputs?
> +      ;; Licenses for lv2-ttl-generator, The Function, The Pilgrim,
> +      ;; juce-demo-host and juce-demo-plugin are not declared.

Then these are nonfree and should be removed.  You could report this to
the maintainers and include a link to the issue here, so we can follow
up in the future.

> +      (license
> +        (list license:asl2.0 ;for msfa
> +              license:bsd-2 ;for mingw-std-threads and dsp-utility
> +              ;; There is no mention of licenses for dRowAudio plugins,
> +              ;; Luftikus, PitchedDelay and ReFine in this repository, but the
> +              ;; upstream repositories released them under MIT:
> +              ;; https://github.com/drowaudio/drowaudio;
> +              ;; https://github.com/lkjbdsp/lkjb-plugins.
> +              license:expat ;for FFTConvolver
> +              (license:fsf-free ;for Temper
> +                "file:///ports-juce5/temper/source/TemperDsp.hpp")
> +              license:gpl2 ;for juce-plugin, LUFS Meter and Obxd
> +              ;; There is no mention of license for Wolpertinger, but the
> +              ;; upstream released it under GPLv2+:
> +              ;; https://github.com/jkroll20/wolpertinger.
> +              license:gpl2+ ;for HiReSam, TAL plugins and Vex
> +              ;; There is no mention of license for EasySSP in this repository,
> +              ;; but the upstream repository released it under GPLv3:
> +              ;; https://github.com/automatl/audio-dsp-multi-visualize.
> +              license:gpl3 ;for JUCE and CHOW

The release notes for 2021-03-15 say:

  CHOW has been removed from plugins to build and install

> +              license:gpl3+ ;for Dexed, Swanky Amp, Vitalium and KlangFalter
> +              license:lgpl2.0+ ;for DrumSynth, EQinox
> +              license:lgpl3+
> +              license:lgpl2.1+ ;for juce-opl
> +              (license:non-copyleft ;kiss_fft
> +                (string-append "file:///ports-juce5/stereosourceseparation"
> +                               "/source/kiss_fft/kiss_fft.c"))
> +              license:wtfpl2))))) ;for FFTReal

Phew, that’s a lot.  I haven’t validated any of them.  Someone should do
this before applying this patch.

-- 
Ricardo




Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 14:06:02 GMT) Full text and rfc822 format available.

Message #41 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v3 0/2] gnu: Add distrho-ports.
Date: Fri, 16 Jun 2023 14:05:03 +0000
Hi Ricardo,

Thanks for reviewing this patch. Following your suggestions made some
improvements.

> > +      (native-inputs
> > +       (list cmake-minimal
> > +             concurrentqueue
> > +             nlohmann-json
> > +             optional-lite
> > +             pkg-config))
> 
> Why are these libraries native inputs?

"concurrentqueue", "nlohmann-json" and "optional-lite" were bundled with
the source. I deleted their folders and added them as native-inputs.

> > +      ;; Licenses for lv2-ttl-generator, The Function, The Pilgrim,
> > +      ;; juce-demo-host and juce-demo-plugin are not declared.
> Then these are nonfree and should be removed.

I found license of lv2-ttl-generator in its upstream and removed plugins
with no license and not included in building.

I also last I improved license definition.

Sughosha (2):
  gnu: Add optional-lite.
  gnu: Add distrho-ports.

 gnu/packages/cpp.scm   |  23 ++++++
 gnu/packages/music.scm | 154 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 177 insertions(+)


base-commit: 8f0698dde351790e0bc9e905e4cd71902fd55d5f
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 14:07:02 GMT) Full text and rfc822 format available.

Message #44 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v3 1/2] gnu: Add optional-lite.
Date: Fri, 16 Jun 2023 14:06:10 +0000
* gnu/packages/music.scm (optional-lite): New variable.
---
 gnu/packages/cpp.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 365b15a3b9..8f5d305a26 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2068,6 +2068,29 @@ (define-public bloomberg-bde
       (home-page "https://github.com/bloomberg/bde")
       (license license:asl2.0))))
 
+(define-public optional-lite
+  (package
+    (name "optional-lite")
+    (version "3.5.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/martinmoene/optional-lite")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                 "0jpsm94kp1504yk9s2km86zv8xrszz30qanmhz2ljmvsdblz2l47"))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/martinmoene/optional-lite")
+    (synopsis "Nullable object for C++98, C++11 and later")
+    (description
+     "optional lite is a single-file header-only library to represent optional
+(nullable) objects and pass them by value. The library aims to provide a
+C++17-like optional for use with C++98 and later. If available, std::optional
+is used.")
+    (license license:boost1.0)))
+
 (define-public gulrak-filesystem
   (package
     (name "gulrak-filesystem")
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 14:07:02 GMT) Full text and rfc822 format available.

Message #47 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v3 2/2] gnu: Add distrho-ports.
Date: Fri, 16 Jun 2023 14:06:40 +0000
* gnu/packages/music.scm (distrho-ports): New variable.
---
 gnu/packages/music.scm | 154 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 154 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2e7eddafb0..89b46bd627 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -6344,6 +6344,160 @@ (define-public mamba
 ones.")
    (license license:bsd-0)))
 
+(define-public distrho-ports
+  ;; From 2021-03-15 to this commit various important changes are made
+  ;; including improved directory structure and updated JUCE versions.
+  (let ((commit "f2dbaded0a05732e3499fa374a586e5b32370da5")
+        (revision "0"))
+    (package
+      (name "distrho-ports")
+      (version (git-version "2021-03-15" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/DISTRHO/DISTRHO-Ports")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1rrnqwask2qg05ynisk6bpj118cl7c3w53rqrfg5x3sx847rjjgc"))
+                (modules '((guix build utils)))
+                (snippet
+                 '(begin
+                    ;; Delete third party libraries, libraries without licenses
+                    ;; and unneeded libraries.
+                    (for-each delete-file-recursively
+                      (list "ports-juce5/arctican-function" ;no license
+                            "ports-juce5/arctican-pilgrim" ;no license
+                            "ports-juce5/drowaudio-tremolo" ;no license
+                            "ports-juce5/juce-demo-host" ;not used
+                            "ports-juce5/juce-demo-plugin" ;not used
+                            "ports-juce5/temper/source/faust" ;bundled
+                            "ports-juce6/chow" ;not used
+                            "ports-juce6/swankyamp/thirdparty" ;bundled
+                            "ports-juce6/vitalium/third_party")) ;bundled
+                    ;; Exclude them from building.
+                    (substitute* (find-files "." "meson.build$")
+                      (("'arctican") "#'arctican")
+                      (("'drowaudio-tremolo") "#'drowaudio-tremolo")
+                      (("'third") "#'third"))
+                    ;; Use system provided "nlohmann/json.hpp".
+                    (with-directory-excursion "ports-juce6/vitalium/source"
+                      (substitute*
+                       (list "common/line_generator.h"
+                             "common/load_save.h"
+                             "common/tuning.h"
+                             "common/wavetable/wavetable_component.h"
+                             "common/wavetable/wavetable_creator.h"
+                             "common/wavetable/wavetable_keyframe.h"
+                             "interface/editor_sections/save_section.h"
+                             "interface/look_and_feel/skin.h"
+                             "synthesis/producers/sample_source.h")
+                        (("json/json\\.h") "nlohmann/json.hpp")))))))
+      (build-system meson-build-system)
+      (arguments
+       (list #:tests? #f ;no test target
+             #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'patch-juce-fonts
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (for-each
+                       (lambda (file)
+                         (substitute* file
+                           (("/usr/share/fonts")
+                            (search-input-directory inputs "/etc/fonts"))))
+                       (find-files "libs" "juce_linux_Fonts.cpp$")))))))
+      (native-inputs
+       (list cmake-minimal
+             concurrentqueue
+             faust
+             nlohmann-json
+             optional-lite
+             pkg-config))
+      (inputs
+       (list alsa-lib
+             fontconfig
+             freetype
+             fftwf
+             libx11
+             libxcursor
+             libxext
+             libxrender
+             mesa))
+      (home-page "https://github.com/DISTRHO/DISTRHO-Ports")
+      (synopsis "Audio plugins and LV2 ports")
+      (description
+       "This package contains LV2 ports of the following plugins:
+@itemize
+@item Dexed,
+@item dRowAudio plugins (Distortion, Distortion Shaper, Flanger, Reverb,
+  Tremolo),
+@item DrumSynth,
+@item EasySSP,
+@item EQinox,
+@item HiReSam,
+@item JuceOPL,
+@item KlangFalter,
+@item LUFS Meter,
+@item Luftikus,
+@item Obxd,
+@item PitchedDelay,
+@item ReFine,
+@item StereoSourceSeperation,
+@item Swanky Amp,
+@item TAL plugins (Dub-3, Filter, Filter-2, Noize Mak3r, Reverb, Reverb-II,
+  Reverb-III, Vocoder-II),
+@item Temper,
+@item Vex,
+@item Vitalium, and
+@item Wolpertinger.
+@end itemize")
+      (license
+        (list license:asl2.0 ;used by Dexed
+              ;; mingw-std-threads and EasySSP (for dsp-utility) use FreeBSD.
+              license:bsd-2
+              ;; Licenses for dRowAudio is not found in this repository, but
+              ;; the upstream project is licensed under MIT:
+              ;; https://github.com/drowaudio/drowaudio.
+              ;; Luftikus, PitchedDelay and ReFine are ported from lkjb plugins
+              ;; which is licensed under MIT:
+              ;; https://github.com/lkjbdsp/lkjb-plugins.
+              license:expat
+              (license:fsf-free ;used by Temper
+                "file:///ports-juce5/temper/source/TemperDsp.hpp")
+              ;; juce-plugin, LUFS Meter, Obxd and TAL plugins use GPLv2.
+              license:gpl2
+              ;; License for Wolpertinger is not found in this repository, but
+              ;; the upstream project is licensed under GPLv2+:
+              ;; https://github.com/jkroll20/wolpertinger.
+              ;; dRowAudio plugins, juced, HiReSam and Vex use this license.
+              ;; Packages using files from JUCETICE project use this license.
+              license:gpl2+
+              ;; License for EasySSP is not found in this repository, but the
+              ;; upstream project is licensed under GPLv3:
+              ;; https://github.com/automatl/audio-dsp-multi-visualize.
+              license:gpl3 ;used by JUCE
+              ;; Dexed, Swanky Amp, Vitalium and KlangFalter use GPLv3+.
+              license:gpl3+
+              ;; License for lv2-ttl-generator is not found in this repository,
+              ;; but is a part of DPF-Plugins and is licensed under ISC:
+              ;; https://github.com/DISTRHO/DPF.
+              ;; JUCE uses this license for juce_audio_basics,
+              ;; juce_audio_devices, juce_blocks_basics, juce_core and
+              ;; juce_events.
+              license:isc
+              license:lgpl2.0+ ;used by DrumSynth and EQinox
+              license:lgpl2.1+ ;used by SoundTouch and juce-opl
+              ;; StereoSourceSeperation uses a non-copyleft license.
+              (license:non-copyleft
+                (string-append "file:///ports-juce5/stereosourceseparation"
+                               "/source/kiss_fft/kiss_fft.c"))
+              ;; dRowAudio uses a non-copyleft license for curl.
+              (license:non-copyleft
+                (string-append "file:///libs/drowaudio/source/dRowAudio"
+                               "/network/curl/include/curl/curl.h"))
+              license:wtfpl2))))) ;used by dRowAudio for FFTReal
+
 (define-public dpf-plugins
   (package
     (name "dpf-plugins")
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 15:03:02 GMT) Full text and rfc822 format available.

Message #50 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v4 0/2] gnu: Add distrho-ports.
Date: Fri, 16 Jun 2023 15:02:04 +0000
In this v4 series of patches, the only change from v3 is that added
native-search-paths to distrho-ports.

Sughosha (2):
  gnu: Add optional-lite.
  gnu: Add distrho-ports.

 gnu/packages/cpp.scm   |  23 ++++++
 gnu/packages/music.scm | 164 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 187 insertions(+)


base-commit: 8f0698dde351790e0bc9e905e4cd71902fd55d5f
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 15:04:02 GMT) Full text and rfc822 format available.

Message #53 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v4 1/2] gnu: Add optional-lite.
Date: Fri, 16 Jun 2023 15:02:45 +0000
* gnu/packages/music.scm (optional-lite): New variable.
---
 gnu/packages/cpp.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 365b15a3b9..8f5d305a26 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2068,6 +2068,29 @@ (define-public bloomberg-bde
       (home-page "https://github.com/bloomberg/bde")
       (license license:asl2.0))))
 
+(define-public optional-lite
+  (package
+    (name "optional-lite")
+    (version "3.5.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/martinmoene/optional-lite")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                 "0jpsm94kp1504yk9s2km86zv8xrszz30qanmhz2ljmvsdblz2l47"))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/martinmoene/optional-lite")
+    (synopsis "Nullable object for C++98, C++11 and later")
+    (description
+     "optional lite is a single-file header-only library to represent optional
+(nullable) objects and pass them by value. The library aims to provide a
+C++17-like optional for use with C++98 and later. If available, std::optional
+is used.")
+    (license license:boost1.0)))
+
 (define-public gulrak-filesystem
   (package
     (name "gulrak-filesystem")
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Fri, 16 Jun 2023 15:05:01 GMT) Full text and rfc822 format available.

Message #56 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <Sughosha <at> proton.me>
To: "rekado <at> elephly.net" <rekado <at> elephly.net>
Cc: 56140 <at> debbugs.gnu.org
Subject: [PATCH v4 2/2] gnu: Add distrho-ports.
Date: Fri, 16 Jun 2023 15:04:10 +0000
* gnu/packages/music.scm (distrho-ports): New variable.
---
 gnu/packages/music.scm | 164 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 164 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2e7eddafb0..a21a16cfc7 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -6344,6 +6344,170 @@ (define-public mamba
 ones.")
    (license license:bsd-0)))
 
+(define-public distrho-ports
+  ;; From 2021-03-15 to this commit various important changes are made
+  ;; including improved directory structure and updated JUCE versions.
+  (let ((commit "f2dbaded0a05732e3499fa374a586e5b32370da5")
+        (revision "0"))
+    (package
+      (name "distrho-ports")
+      (version (git-version "2021-03-15" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/DISTRHO/DISTRHO-Ports")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1rrnqwask2qg05ynisk6bpj118cl7c3w53rqrfg5x3sx847rjjgc"))
+                (modules '((guix build utils)))
+                (snippet
+                 '(begin
+                    ;; Delete third party libraries, libraries without licenses
+                    ;; and unneeded libraries.
+                    (for-each delete-file-recursively
+                      (list "ports-juce5/arctican-function" ;no license
+                            "ports-juce5/arctican-pilgrim" ;no license
+                            "ports-juce5/drowaudio-tremolo" ;no license
+                            "ports-juce5/juce-demo-host" ;not used
+                            "ports-juce5/juce-demo-plugin" ;not used
+                            "ports-juce5/temper/source/faust" ;bundled
+                            "ports-juce6/chow" ;not used
+                            "ports-juce6/swankyamp/thirdparty" ;bundled
+                            "ports-juce6/vitalium/third_party")) ;bundled
+                    ;; Exclude them from building.
+                    (substitute* (find-files "." "meson.build$")
+                      (("'arctican") "#'arctican")
+                      (("'drowaudio-tremolo") "#'drowaudio-tremolo")
+                      (("'third") "#'third"))
+                    ;; Use system provided "nlohmann/json.hpp".
+                    (with-directory-excursion "ports-juce6/vitalium/source"
+                      (substitute*
+                       (list "common/line_generator.h"
+                             "common/load_save.h"
+                             "common/tuning.h"
+                             "common/wavetable/wavetable_component.h"
+                             "common/wavetable/wavetable_creator.h"
+                             "common/wavetable/wavetable_keyframe.h"
+                             "interface/editor_sections/save_section.h"
+                             "interface/look_and_feel/skin.h"
+                             "synthesis/producers/sample_source.h")
+                        (("json/json\\.h") "nlohmann/json.hpp")))))))
+      (build-system meson-build-system)
+      (arguments
+       (list #:tests? #f ;no test target
+             #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'patch-juce-fonts
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (for-each
+                       (lambda (file)
+                         (substitute* file
+                           (("/usr/share/fonts")
+                            (search-input-directory inputs "/etc/fonts"))))
+                       (find-files "libs" "juce_linux_Fonts.cpp$")))))))
+      (native-inputs
+       (list cmake-minimal
+             concurrentqueue
+             faust
+             nlohmann-json
+             optional-lite
+             pkg-config))
+      (inputs
+       (list alsa-lib
+             fontconfig
+             freetype
+             fftwf
+             libx11
+             libxcursor
+             libxext
+             libxrender
+             mesa))
+      (native-search-paths
+       (list (search-path-specification
+              (variable "LV2_PATH")
+              (files '("lib/lv2")))
+             (search-path-specification
+              (variable "VST2_PATH")
+              (files '("lib/vst")))
+             (search-path-specification
+              (variable "VST3_PATH")
+              (files '("lib/vst3")))))
+      (home-page "https://github.com/DISTRHO/DISTRHO-Ports")
+      (synopsis "Audio plugins and LV2 ports")
+      (description
+       "This package contains LV2 ports of the following plugins:
+@itemize
+@item Dexed,
+@item dRowAudio plugins (Distortion, Distortion Shaper, Flanger, Reverb,
+  Tremolo),
+@item DrumSynth,
+@item EasySSP,
+@item EQinox,
+@item HiReSam,
+@item JuceOPL,
+@item KlangFalter,
+@item LUFS Meter,
+@item Luftikus,
+@item Obxd,
+@item PitchedDelay,
+@item ReFine,
+@item StereoSourceSeperation,
+@item Swanky Amp,
+@item TAL plugins (Dub-3, Filter, Filter-2, Noize Mak3r, Reverb, Reverb-II,
+  Reverb-III, Vocoder-II),
+@item Temper,
+@item Vex,
+@item Vitalium, and
+@item Wolpertinger.
+@end itemize")
+      (license
+        (list license:asl2.0 ;used by Dexed
+              ;; mingw-std-threads and EasySSP (for dsp-utility) use FreeBSD.
+              license:bsd-2
+              ;; Licenses for dRowAudio is not found in this repository, but
+              ;; the upstream project is licensed under MIT:
+              ;; https://github.com/drowaudio/drowaudio.
+              ;; Luftikus, PitchedDelay and ReFine are ported from lkjb plugins
+              ;; which is licensed under MIT:
+              ;; https://github.com/lkjbdsp/lkjb-plugins.
+              license:expat
+              (license:fsf-free ;used by Temper
+                "file:///ports-juce5/temper/source/TemperDsp.hpp")
+              ;; juce-plugin, LUFS Meter, Obxd and TAL plugins use GPLv2.
+              license:gpl2
+              ;; License for Wolpertinger is not found in this repository, but
+              ;; the upstream project is licensed under GPLv2+:
+              ;; https://github.com/jkroll20/wolpertinger.
+              ;; dRowAudio plugins, juced, HiReSam and Vex use this license.
+              ;; Packages using files from JUCETICE project use this license.
+              license:gpl2+
+              ;; License for EasySSP is not found in this repository, but the
+              ;; upstream project is licensed under GPLv3:
+              ;; https://github.com/automatl/audio-dsp-multi-visualize.
+              license:gpl3 ;used by JUCE
+              ;; Dexed, Swanky Amp, Vitalium and KlangFalter use GPLv3+.
+              license:gpl3+
+              ;; License for lv2-ttl-generator is not found in this repository,
+              ;; but is a part of DPF-Plugins and is licensed under ISC:
+              ;; https://github.com/DISTRHO/DPF.
+              ;; JUCE uses this license for juce_audio_basics,
+              ;; juce_audio_devices, juce_blocks_basics, juce_core and
+              ;; juce_events.
+              license:isc
+              license:lgpl2.0+ ;used by DrumSynth and EQinox
+              license:lgpl2.1+ ;used by SoundTouch and juce-opl
+              ;; StereoSourceSeperation uses a non-copyleft license.
+              (license:non-copyleft
+                (string-append "file:///ports-juce5/stereosourceseparation"
+                               "/source/kiss_fft/kiss_fft.c"))
+              ;; dRowAudio uses a non-copyleft license for curl.
+              (license:non-copyleft
+                (string-append "file:///libs/drowaudio/source/dRowAudio"
+                               "/network/curl/include/curl/curl.h"))
+              license:wtfpl2))))) ;used by dRowAudio for FFTReal
+
 (define-public dpf-plugins
   (package
     (name "dpf-plugins")
-- 
2.40.1





Information forwarded to guix-patches <at> gnu.org:
bug#56140; Package guix-patches. (Sat, 02 Sep 2023 01:13:02 GMT) Full text and rfc822 format available.

Message #59 received at 56140 <at> debbugs.gnu.org (full text, mbox):

From: Vagrant Cascadian <vagrant <at> debian.org>
To: Sughosha <Sughosha <at> proton.me>, rekado <at> elephly.net
Cc: 56140 <at> debbugs.gnu.org, control <at> debbugs.gnu.org
Subject: Re: [bug#56140] Add optional-lite and distrho-ports
Date: Fri, 01 Sep 2023 18:11:37 -0700
[Message part 1 (text/plain, inline)]
retitle 56140 Add optional-lite and distrho-ports
thanks

On 2023-06-16, Sughosha wrote:
> In this v4 series of patches, the only change from v3 is that added
> native-search-paths to distrho-ports.
>
> Sughosha (2):
>   gnu: Add optional-lite.
>   gnu: Add distrho-ports.

These are the only changes from this bug that have not been applied,
updated the description to match.


live well,
  vagrant
[signature.asc (application/pgp-signature, inline)]

Changed bug title to 'Add optional-lite and distrho-ports' from '[Patches] Add and update music packages' Request was from Vagrant Cascadian <vagrant <at> debian.org> to control <at> debbugs.gnu.org. (Sat, 02 Sep 2023 01:13:02 GMT) Full text and rfc822 format available.

Reply sent to Ricardo Wurmus <rekado <at> elephly.net>:
You have taken responsibility. (Sat, 02 Sep 2023 08:43:02 GMT) Full text and rfc822 format available.

Notification sent to Sughosha <Sughosha <at> proton.me>:
bug acknowledged by developer. (Sat, 02 Sep 2023 08:43:02 GMT) Full text and rfc822 format available.

Message #66 received at 56140-done <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: 56140-done <at> debbugs.gnu.org
Subject: Add optional-lite and distrho-ports
Date: Sat, 02 Sep 2023 10:40:20 +0200
Hi Sughosha,

I’ve applied the latest version of your patches with a few minor
changes:

- some indentation changes
- changed the build phase to do without for-each.

Thank you for your patience!

-- 
Ricardo




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 30 Sep 2023 11:24:15 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 223 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.