[gnutls-help] Guile-Gnutls bindings to separate git repo?

Ludovic Courtès ludo at gnu.org
Sun Dec 25 21:39:59 CET 2022

Hi Simon,

Simon Josefsson <simon at josefsson.org> skribis:

> I share your frustration with complex dependencies.  Is your problem
> mainly that it is harder to build guile-gnutls, or is it the size of the
> added code, or the actual code?  Maybe a combination, but I'm not sure
> which is the main problem here.

It’s a combination.  One way to look at it is the barrier to entry: if
someone rather familiar with autotools, Gnulib, etc. is unable to
readily configure and build the code, then we have a problem it means it
may be intractable for someone who’s getting started with Guile.

Another way to look at it is the “infrastructure” complexity compared to
the actual code complexity.

> The main reason I added the dependencies was 1) to get 'make web-manual'
> to produce a manual during CI/CD, 2) to get a proven 'make release'
> infrastructure including the README-release file, 3) added
> git-version-gen to avoid manual work and to get CI/CD tarballs with good
> naming, 4) 'make syntax-check', 5) havelib, and maybe some other parts
> that I forgot.

I could live without #4 and #5; I’m not convinced it brings much to a
project like this one.

> When I look at what changed between these releases, I think the main
> complication is the new bootstrap infrastructure.  That is not critical
> for using gnulib, and in fact it is highly complex for what it should be
> doing: copying a couple of files and then run autoreconf.  I don't see
> what extra features it brings guile-gnutls.
> I have pushed a branch 'jas/drop-bootstrap' which reverts back to a
> simple ./bootstrap script but still uses gnulib-tool from the git
> submodule to import some files.  What do you think?
> https://gitlab.com/gnutls/guile/-/commit/ec362e8bdb7604295fc24f6f20aea5e5ecf78117

It looks much better this way, thanks!

> Maybe this strikes a better balance between reusing elements from gnulib
> but keeping complexity low.  CI/CD passes with no changes, suggesting
> that we really never relied on anything else from ./bootstrap.
> If you think using gnulib-tool is too costly as well, we can replace it
> with a couple of 'cp' commands, but I'm hoping this complexity reduction
> is sufficient.

Having to clone all of Gnulib just to pick a couple of files isn’t great
from a packaging perspective, but we can start this way.

> Would you like to make a 3.7.12 out of this?  I'm happy to do it if you
> prefer, but it would be nice to get your PGP key into distributors'
> trust anchors for guile-gnutls, and I don't know of any mechanism except
> having the person make a release.

By “trust anchor”, you mean informally the set of people who ever
release it, right?

I’d be happy to make a release, I’ve just been fairly busy making
releases lately.  :-)

Thanks for your feedback!


More information about the Gnutls-help mailing list