On 04/06/2012 08:54, [email protected] wrote:
> I noticed today that the homepage was updated, and it didn't seem to be 
> displaying right. I'm pretty sure it isn't libre code because LibreJS
> is  blocking the code.

The problem isn't that the code is non-free. All of the modules used on
this website should be GPL. The Drupal content management system used
here requires all modules available on their main website to be GPL'd.

The problem is that the CMS uses a javascript aggregator that combines
all the JS of all the modules into one file. At the time of this
writing, you can see it here:
http://trisquel.info/files/js/js_600ab93c70b6774dd76f340b8766ad94.js

The license of each JS file is typically inherited from the module's
license file. But this cannot be seen by LibreJS.

> I think whatever the issue is needs to be resolved, but I don't have
> any  knowledge of JS.
> 

Since the aggregation is an automated process, it would be unfeasible to
manually insert a license header into the aggregated JS file as you run
the risk of it being regenerated. It is also unfeasible to manually add
an appropriate license header to each individual JS file as any upstream
updates to the module will overwrite that. Even if the licenses were
added upstream, the aggregated file can get big with all the license
headers.

The solution, then, would be to write a new module that will allow the
administrator to manually assign a license to each JS file and have this
displayed on a separate page using the JavaScript Web Labels method. The
module will then generate the most compatible license from all the
available license. For example, if there are any non-free licenses then
the aggregated file's license will be non-free. Or if all the licenses
are GPL-compatible then the combination will also be GPL.

However, the number of people using LibreJS is small. The number of
Drupal companies/developers caring about JS freedom is even smaller.
Thus it is very unlikely that a coded or paid solution will come from
one of the bigger companies.

I doubt if quidam has the time to code up such a module. Perhaps we can
add this as a Trisquel task, "Free the Trisquel website javascript",
which will have the added benefit of allowing all other Drupal 6 sites
to also implement it (should they care). On a sidenote, Drupal 6 is old
so the solution would ideally have to be added to Drupal 7 too.

I believe there are a few people with Drupal development experience
here, me included, so perhaps we can pool our knowledge/time and get
this done?

-- 
Morne Alberts

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to