Closed TechnologyClassroom closed 2 months ago
It looks like a minor maintenance burden. Before considering this patch, I'd need to understand what's the concrete benefit for the users, the packagers, or the developers.
Quick review: the /javascript file is not served with the right MIME type, and it is not a correct HTML file. Galene does not depend on Expat, there's no need to link to Clark's licence.
The main benefit of adding LibreJS compliance to your project is that the JavaScript license information is in a machine-readable format showing people that use the LibreJS browser extension that all Galène instances use free software without manually reviewing and allowing each individual JavaScript file. Everyone else is unaffected by the changes. There would be no change for packagers. Developers would only need to notify me if any LibreJS related complaints are filed.
The file was not a traditional HTML file, but the minimal requirement of a JavaScript License Web Labels file. I tested with a basic html wrapper and it does work with LibreJS so I added this as another commit.
MIT was called the Expat license before MIT became commonly used and is what LibreJS expects.
MIT was called the Expat license before MIT became commonly used and is what LibreJS expects.
It was called the MIT licence, or the MIT/X11 licence. It predates Expat by many years.
While I'm not opposed to adding licensing information in machine-readable form, notwithstanding the additional maintenance burden, I'd like it to happen in a cross-application format, not in a format proprietary to a single browser extension. I am closing this PR for now, please reopen when LibreJS uses a well-defined, cross-vendor format.
There were not any other vendors checking JavaScript licenses on the open web at the time so LibreJS had to make their own format. There are still not any other JavaScript license checkers.
I am sure that LibreJS have good reasons to do things the way they do. I'm just not convinced that I'm willing to carry the added maintenance burden given that the format is specific to just one browser extension.
I did offer to maintain LibreJS patches.
This is a patch that adds LibreJS support to Galène. I followed section 3.1 of the LibreJS doc using the weblabels method. For all that are not using LibreJS, there is no change except for an additional link with JavaScript licensing information.
I was not really sure where to put the link in
galene.html
so I put it at the bottom of the settings menu.I also removed some stray spaces.
If any additional .js files are added, I can maintain the
javascript
file in the future.