Subject: [bug#74864] [PATCH] gnu: Add adl-submit.py

From: Denis 'GNUtoo' Carikli <[email-masked]>
Date: Thu, 23 Jan 2025 05:33:02 +0100

> Hi,
Hi,

> Question of interest, why we need to pack just one script out of the
> whole project :-)?
The issue is that the whole project is a web application that is
deployed at https://www.agendadulibre.org/ (it's basically a 
calendar for French free software events).

And I'm only interested in packaging a client that connects to that web
application to submit events.

The use case is that I find adl-submit.py really useful as we heavily
depend on adl-submit.py in a French free software user group (Parinux)
that I'm part of, and so I thought that maybe other people than me might
also need it as well (other people from Parinux, people organizing Guix
events in France around Paris because they also publish on the Agenda
du libre, etc).

This website is really central in the free software community in France.

If you need more details on the use case, our workflow at Parinux is
the following: we start by creating a new page with a new event (like
the install Party for the next month) on our SPIP website, usually by
cloning another event (like the install party from the previous month).

We have a custom SPIP extension that generates an xml file that is
compatible with the adl-submit.py tool.

So once the event is published, someone (usually the person
that published the event but not always) downloads that XML and runs
adl-submit.py on her computer to send it to the Agenda du libre.

Then people from the Agenda du libre (it's moderated) accept our event
and it gets published there as well.

So basically we're not really interested in hosting our own Agenda du
libre, we're only interested in sending events its most famous instance.

And at least for us it is crucial because people have very little time
to do such publication, and the Agenda du libre is also kind of
central, and so not publishing there or publishing very late means that
way less people go to the event, which is problematic.

I think that the use cases are relevant here because as I understand
the packages we add to Guix are expected to be maintained somehow, so I
think it makes more sense to add packages that people actually use or
depend on.

Also note that while I heavily depend on this package, I don't know how
many other people do or may want to.

> I've checked the project on
> <https://framagit.org/agenda-libre/agenda-libre-ruby>, and looks like
> a full featured application where public/adl-submit.py is served by
> the web server.
This is actually the case indeed.

This also complicates things: contributions to adl-submit.py need to
fit into this file because that file is also served by the web
application. 

This is why I didn't translate adl-submit.py in English before sending
a patch to add it in Guix.

So for instance I can't simply send a patch to adl-submit that uses
gettext to translate it in English as well because such modification
would make adl-submit.py depend on additional files.

Though maybe once it is packaged in Guix, a patch could still be made
to optionally add internationalization, and once/if it is merged in
adl-submit.py, the Guix package could then be updated to use this
optional internationalization feature, making all that a bit more
useful and easier for people that don't understand French to understand
what all that is about.

Also note that the agendadulibre.org website also works fine in
English, through not everything is translated. This can be relevant for
international conferences that take place in France for instance
(assuming they choose to use the Agenda du libre, as not all
International conferences do that in France).

PS: for some reasons I didn't get your mail, I just replied by
    copy-pasting it from debbugs.

Denis.