On 9/15/21 12:57 PM, Maxime Devos wrote: > Hi, > > I've been porting parts of the client libraries of GNUnet to Guile (*) and > changing a few things. It now has sufficient functionality for a v0.1 > POC release (**), but I have a few questions to ask before I announce it.
Nice. > (*) See ‘4. Relation to gnunet-guile’ for differences with > <https://git.gnunet.org/gnunet-guile2.git/> and > <https://git.savannah.gnu.org/cgit/guix/gnunet.git/>;. > (**) It can talk with the NSE service. > > 1. Name > > I've been calling the port ‘Scheme-GNUnet’. Would this be acceptable, > or do I have to remove GNUnet from the name? See https://git.gnunet.org/: usually we'd call it gnunet-scheme. At least that'd be consistent with the cocoa, go, nim, java and python bindings / integrations... > 2. Infrastructure > > As it is library for interacting with GNUnet services, I thought > the pre-existing [email protected], [email protected] and > [email protected] mailing lists might be appropriate. Can I direct > people help-gnunet@ for help about Scheme-GNUnet and gnunet-developers@ > for sending patches for Scheme-GNUnet? And can I send release > announcements > at info-gnunet@? Yes, alas I might need to manually approve info-gnunet@ (ditto for messages from non-subscribers), so they might arrive with some delay. > 3. Copyright assignment > > I noticed most source code of GNUnet, with some exceptions, only lists > ‘GNUnet e.V.’ under the copyright notices. Would it be possible for > contributors to Scheme-GNUnet to (if they want to) assign the copyright > to GNUnet e.V.? And would this be desirable? Yes, that would be desirable (also for your contributions), as that could allow GNUnet e.V. to re-license/dual-license if ever required. Note that the process is very simple (one signature), can be done under a pseudonym (if you contribute under a pseudonym), and you also get to keep the copyright! See https://gnunet.org/en/copyright.html for details. As a rule of thumb, if you want write-access to git.gnunet.org, you must sign the copyright agreement (technically what we do is not an _assignment_ but _sharing_ of the copyright). > 4. Relation to gnunet-guile (not a question). > > Some may be wondering why I didn't use the > <https://git.savannah.gnu.org/cgit/guix/gnunet.git/> or > <https://git.gnunet.org/gnunet-guile2.git> Guile bindings instead of writing > my own <https://notabug.org/maximed/scheme-gnunet>;. The answer is that: > > (1) I didn't write Guile->C bindings, I ported parts of GNUnet from C to > Guile > (2) A few parts of the Guile bindings are reused in the Guile port > (3) there were some crashes with the Guile bindings (things like > NULL-pointer exceptions) > (4) I couldn't figure out the issue > (5) I would like to use GNUnet from within guile-fibers, but didn't succeed > in letting the C event loop cooperate with guile-fibers' scheduling > (6) I find Scheme easier to hack on than C. I think that's a fine (and maybe generally preferable) approach rather than doing bindings. I'd just not do the crypto itself directly in Guile, that's likely neither performant nor safe. The real question is, does your work render the bindings obsolete? > For the interested, I have included a copy of the manual. Very nice ;-). Happy hacking! -Christian
signature.asc
Description: OpenPGP digital signature
