[PATCH] gnu: Add sherlock-lv2.

  • Done
  • quality assurance status badge
Details
2 participants
  • Alexandros Theodotou
  • Marius Bakke
Owner
unassigned
Submitted by
Alexandros Theodotou
Severity
normal
A
A
Alexandros Theodotou wrote on 8 Nov 2019 12:05
(name . Guix patches)(address . guix-patches@gnu.org)
57b24a50e1feeed51edf264b6bb97480@posteo.net
From 5207795bcce201e019c33bb0274e06a460cf6c3f Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Fri, 8 Nov 2019 10:59:52 +0000
Subject: [PATCH] gnu: Add sherlock-lv2.

* gnu/packages/music.scm: (sherlock-lv2): New variable.
---
gnu/packages/music.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index a30765e87f..95cc0ff93c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -24,6 +24,7 @@
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
;;; Copyright © 2019 raingloom <raingloom@protonmail.com>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
+;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -4699,3 +4700,36 @@ You can also get metadata about the playing track
such as the artist and title
for integration into status line generators or other command-line
tools.")
(home-page "https://github.com/altdesktop/playerctl")
(license license:lgpl3+)))
+
+(define-public sherlock-lv2
+ (package
+ (name "sherlock-lv2")
+ (version "0.20.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://git.open-music-kontrollers.ch/lv2/"
+ "sherlock.lv2/snapshot/sherlock.lv2-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "1c5xajpss9h8lbyx160bbzg8va50n2d74qwnxig9sf468rzmha1y"))))
+ (build-system meson-build-system)
+ (inputs
+ `(("glibc" ,glibc)
+ ("libx11" ,libx11)
+ ("mesa" ,mesa)
+ ("serd" ,serd)
+ ("sratom" ,sratom)))
+ (native-inputs
+ `(("flex" ,flex)
+ ("lv2" ,lv2)
+ ("sord" ,sord)
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Investigative LV2 plugin bundle")
+ (description "The Sherlock plugin bundle contains LV2 plugins for
+visualizing LV2 atom, MIDI and OSC events. They can be used for
monitoring and
+debugging of event signal flows inside plugin graphs.")
+ (home-page "https://open-music-kontrollers.ch/lv2/sherlock/")
+ (license license:artistic2.0)))
--
2.24.0
M
M
Marius Bakke wrote on 10 Nov 2019 22:31
87ftivl8pw.fsf@devup.no
Alexandros,

Thanks for these patches. I think your MUA might have mangled these
patches somehow, as many of them are "corrupt" according to git. Can
you try to resend these? I'll comment on the patches individually
meanwhile.

Alexandros Theodotou <alex@zrythm.org> writes:

Toggle quote (7 lines)
> From 5207795bcce201e019c33bb0274e06a460cf6c3f Mon Sep 17 00:00:00 2001
> From: Alexandros Theodotou <alex@zrythm.org>
> Date: Fri, 8 Nov 2019 10:59:52 +0000
> Subject: [PATCH] gnu: Add sherlock-lv2.
>
> * gnu/packages/music.scm: (sherlock-lv2): New variable.

[...]

Toggle quote (18 lines)
> +(define-public sherlock-lv2
> + (package
> + (name "sherlock-lv2")
> + (version "0.20.0")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (string-append
> + "https://git.open-music-kontrollers.ch/lv2/"
> + "sherlock.lv2/snapshot/sherlock.lv2-"
> + version ".tar.xz"))
> + (sha256
> + (base32
> + "1c5xajpss9h8lbyx160bbzg8va50n2d74qwnxig9sf468rzmha1y"))))
> + (build-system meson-build-system)
> + (inputs
> + `(("glibc" ,glibc)

I don't think this is needed?

Toggle quote (9 lines)
> + ("libx11" ,libx11)
> + ("mesa" ,mesa)
> + ("serd" ,serd)
> + ("sratom" ,sratom)))
> + (native-inputs
> + `(("flex" ,flex)
> + ("lv2" ,lv2)
> + ("sord" ,sord)

I don't know anything about LV2 and sord, are these inputs really only
used for the build process itself? :-)

Toggle quote (7 lines)
> + ("pkg-config" ,pkg-config)))
> + (synopsis "Investigative LV2 plugin bundle")
> + (description "The Sherlock plugin bundle contains LV2 plugins for
> +visualizing LV2 atom, MIDI and OSC events. They can be used for
> monitoring and
> +debugging of event signal flows inside plugin graphs.")

Two spaces after periods, as per 'guix lint'.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl3IgZsACgkQoqBt8qM6
VPq0ggf/TYthl+Lr7qU9+9CpDCgFVovxuj3U0V1oYFp+IeI3wONo2m8lhe5vNVuc
WpWLRITuxLI/tRBdD/QCL66t/SC0ceixdnwgOvi2SKiqef3vzvfoUcMwjvqrmN2O
8dNPOJ4eqqkcmS28TAvzWUPDC5bVIySBdpU0yriv7tgLeMEzptN/BEVpYUVeOS3C
iUoo7claM+edV9TQfDUihpXjschlFXKpq/upia1VhBLSvCc2trJJgjHji07QrFgn
x6IkICC2+GLy8j0Y1sFzUyiUytq5BU/VqlCzmEvgjxbL6pFe8VfiIQT+z5tb9z7x
7FKUaKrNjpWiUFShnj/LAmQe3YI1wg==
=ExMR
-----END PGP SIGNATURE-----

A
A
Alexandros Theodotou wrote on 11 Nov 2019 02:35
ebbd766ae66b16b1ff0a7132e94b7297b4296400.camel@zrythm.org
Hi Marius,

Toggle quote (4 lines)
> I think your MUA might have mangled these
> patches somehow, as many of them are "corrupt" according to git. Can
> you try to resend these? I'll comment on the patches individually
> meanwhile.
Sorry about that. I got Gnome evolution sorted out now so hopefully
it's better. send-mail doesn't work for me at the moment so I'll add
the patches as attachments.

Toggle quote (3 lines)
> > + `(("glibc" ,glibc)
>
> I don't think this is needed?
I guess it's not, I removed it.

Toggle quote (12 lines)
> > + ("libx11" ,libx11)
> > + ("mesa" ,mesa)
> > + ("serd" ,serd)
> > + ("sratom" ,sratom)))
> > + (native-inputs
> > + `(("flex" ,flex)
> > + ("lv2" ,lv2)
> > + ("sord" ,sord)
>
> I don't know anything about LV2 and sord, are these inputs really
> only
> used for the build process itself? :-)
Sord is an input for sratom (which is in the inputs above), but the
build fails if I remove this from the native-inputs.

For LV2, technically, it's only needed in the build process since it's
just a header file with specifications. Since this is an LV2 plugin, a
host that will be loading it will include LV2 itself and will have it
as an input, so the plugin doesn't really need it. It doesn't hurt to
add it as an input either, but I think having it as a build input is
more "correct". By the way, the Arch packagers do the same for most LV2
plugins.

Toggle quote (9 lines)
> > + ("pkg-config" ,pkg-config)))
> > + (synopsis "Investigative LV2 plugin bundle")
> > + (description "The Sherlock plugin bundle contains LV2 plugins
> > for
> > +visualizing LV2 atom, MIDI and OSC events. They can be used for
> > monitoring and
> > +debugging of event signal flows inside plugin graphs.")
>
> Two spaces after periods, as per 'guix lint'.
Fixed, thank you!
From 8bda974a93874bcf366ba78bdf3329f73245e90f Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <alex@zrythm.org>
Date: Fri, 8 Nov 2019 10:59:52 +0000
Subject: [PATCH] gnu: Add sherlock-lv2.

* gnu/packages/music.scm: (sherlock-lv2): New variable.
---
gnu/packages/music.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2f023685df..690434202e 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -4737,3 +4737,34 @@ for integration into status line generators or other command-line tools.")
effects. It contains a bitcrusher, delay, distortion, equalizer, compressor,
and reverb.")
(license license:gpl2+)))
+
+(define-public sherlock-lv2
+ (package
+ (name "sherlock-lv2")
+ (version "0.20.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://git.open-music-kontrollers.ch/lv2/"
+ "sherlock.lv2/snapshot/sherlock.lv2-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "1c5xajpss9h8lbyx160bbzg8va50n2d74qwnxig9sf468rzmha1y"))))
+ (build-system meson-build-system)
+ (inputs
+ `(("libx11" ,libx11)
+ ("mesa" ,mesa)
+ ("sratom" ,sratom)))
+ (native-inputs
+ `(("flex" ,flex)
+ ("lv2" ,lv2)
+ ("sord" ,sord)
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Investigative LV2 plugin bundle")
+ (description "The Sherlock plugin bundle contains LV2 plugins for
+visualizing LV2 atom, MIDI and OSC events. They can be used for monitoring
+and debugging of event signal flows inside plugin graphs.")
+ (home-page "https://open-music-kontrollers.ch/lv2/sherlock/")
+ (license license:artistic2.0)))
--
2.24.0
-----BEGIN PGP SIGNATURE-----

iQEzBAABCAAdFiEESBMjhK0999huJUuDAi6uQjE9cPMFAl3IuvwACgkQAi6uQjE9
cPMZHwgAj3t2pnBxF6Pvx7H7mQGO6oiQRyRncPttRq6NA6uUOV/YkdWz1+NcHJo4
RFt3jPVBQK7FQTdWNDGfL7efXPgxZ4cEpa3hMeqZJvr168PfZ0ZFjHIAdpsguE2X
hP/afY3Vpo3EoXAyGYvfAiNGzRI0dDhuxFDAp7IC1JH2tqW7M8h0rgCxJLP+Nj7m
zrMyMeKjqbSCBBLgy+T9vtBq35/v9S4qfd936B/4ioxVmcbNJUSj4p5W+9MsBW+H
KYTVveMHmoMZoO4PXshzbtLgR3IGbzy9ZvTdKFFvjK4gLFguKVmdbxOTKmg/JBYn
lmmazxlTQyo2/4nl/jlp3G9j7uPuew==
=4NTi
-----END PGP SIGNATURE-----


M
M
Marius Bakke wrote on 13 Nov 2019 23:23
87sgmriffz.fsf@devup.no
Alexandros Theodotou <alex@zrythm.org> writes:

Toggle quote (10 lines)
> Hi Marius,
>
>> I think your MUA might have mangled these
>> patches somehow, as many of them are "corrupt" according to git. Can
>> you try to resend these? I'll comment on the patches individually
>> meanwhile.
> Sorry about that. I got Gnome evolution sorted out now so hopefully
> it's better. send-mail doesn't work for me at the moment so I'll add
> the patches as attachments.

Thanks!

Toggle quote (15 lines)
>> > + ("libx11" ,libx11)
>> > + ("mesa" ,mesa)
>> > + ("serd" ,serd)
>> > + ("sratom" ,sratom)))
>> > + (native-inputs
>> > + `(("flex" ,flex)
>> > + ("lv2" ,lv2)
>> > + ("sord" ,sord)
>>
>> I don't know anything about LV2 and sord, are these inputs really
>> only
>> used for the build process itself? :-)
> Sord is an input for sratom (which is in the inputs above), but the
> build fails if I remove this from the native-inputs.

Right, I think I see the problem. sratom's pkg-config file has this
line:

Requires: lv2 serd-0 sord-0

Which means that these need to be available when build systems run
e.g. 'pkg-config --cflags sratom-0'. This is the most common use of
propagated-inputs in Guix.

I went ahead and propagated these from 'sratom', and removed the 'lv2'
and 'sord' inputs. Let me know if you think something is off!

Toggle quote (8 lines)
> For LV2, technically, it's only needed in the build process since it's
> just a header file with specifications. Since this is an LV2 plugin, a
> host that will be loading it will include LV2 itself and will have it
> as an input, so the plugin doesn't really need it. It doesn't hurt to
> add it as an input either, but I think having it as a build input is
> more "correct". By the way, the Arch packagers do the same for most LV2
> plugins.

Right. Header files are usually architecture-independent, so having
them as native-inputs should be safe.

Toggle quote (7 lines)
> From 8bda974a93874bcf366ba78bdf3329f73245e90f Mon Sep 17 00:00:00 2001
> From: Alexandros Theodotou <alex@zrythm.org>
> Date: Fri, 8 Nov 2019 10:59:52 +0000
> Subject: [PATCH] gnu: Add sherlock-lv2.
>
> * gnu/packages/music.scm: (sherlock-lv2): New variable.

Applied (with the dropped inputs), thanks!
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl3MglAACgkQoqBt8qM6
VPqDYAgAwyjVTkD3/S3ZXeVPMW+pCzuO+3Ewj7IRDwWhQHObR7iCs74wWKKlS/ng
O/xdXQ3E1Dtv0mvEj+CjVyTfuBIv9VI9L/NsfzGwwKj1ZnZijE4WuypbkVpAuinp
yTapOg5XlMNhcbWF0NrV2t2bbtd5Mliqxiv+dpaG+ed2m8evVJApisAOWqNKYID5
zqo8Rtgemt4PHv4KRvOs8MA6aBlst//joIK/Z5PLbgrGYpfnR1gZqY/hk6ahuXmN
Y6tTIxvrJjWls0ou3ZGJLkl9QdF/77WPeIDcu/D+TUWECz9Lue8YiHaZI1TYL2n1
NYm+2LUiwB5GG+n/QO2B5KooS+99zg==
=LNPu
-----END PGP SIGNATURE-----

Closed
?