Wednesday, April 7, 2021

Shared Sphinx configurations

I did a series of changes in the whole documentation system. We are moving towards a new feature I’d call “Shared Sphinx configurations”. The idea was triggered by #4085 (A common Sphinx config for non-tech docs like cg, hg and sr), which was triggered by #4079 (Move Hosting Guide section from book to a separate doctree). The basic problem is that we have a lot of Sphinx conf.py files and most of them contain redundant information. And because things evolve over the years, they are quite a mess. For example the ticket role (used to render for example #4085) was pointing to a wrong URL in most doctrees. rstgen.sphinxconf.configure() or its child lino.sphinxcontrib.configure() now set reasonable default values for intersphinx_mapping and extlinks. It is now a bit less messy and works for me, but before writing documentation about it, it needs more work.

I removed a few redundant settings for which the default value is given by atelier: master_doc, source_suffix, primary_domain

Change license from BSD to AGPL

Yes, Lino goes back from BSD to AGPL. Current discussions are in #4081, but topic itself is old. See for example 20121123.

I decided this as the CEO of Rumma & Ko Ltd, who is the copyright holder. I previously checked with all active contributors whether they like the decision.

There are some inactive contributors. For example Joe, who contributed between June 2013 and October 2014. I remember that Joe told me once that he wouldn’t like Lino to switch to AGPL. But I doubt whether he is still interested in the question, and I don’t need to worry whether inactive contributors agree with my decision because the BSD gives me permission to change to AGPL. The opposite is less true, if I got that right, and it’s one of the important reasons for my decision: if, for whatever reason, some greedy giant would want to take Lino and turn it into non-free software, they would get only the versions published until today.

After having meditated all this for a few weeks, and after changing the licenses and copyright headers of lino, xl and book some days ago, I now did it for the remaining repositories:

One exception: eidreader remains BSD because it is a command-line tool.