GPL for JS libraries (Was: Re: Redefining GPL?)
Chuck Swiger
chuck at codefab.com
Thu Nov 30 22:58:49 UTC 2006
On Nov 30, 2006, at 1:45 PM, Arnoud Engelfriet wrote:
> Chuck Swiger wrote:
>> There exists a vast amount of source code under the GPL. The normal
>> practice is to provide the text of the GPL in a separate file called
>> "LICENSE", and for each file consisting of source code to have a
>> copyright statement in a comment at the beginning of the file, and a
>> reference to the license status which says the code is under the GPL,
>> and to please read the "LICENSE" file.
>
> Right. The specific problem here is that the GPL insists that
> the license must be passed on *along with* the source code.
The precise language is "along with the Program", not "along with
each individual source code file", as in:
" 1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program."
...where the term "Program" includes "...any derivative work under
copyright law: that is to say, a work containing the Program or a
portion of it..." (from section 0).
> Putting a file called LICENSE in the tarball achieves that.
> Make the tarball available for download, and people get source
> along with the license.
>
> But when you make a .js file available for download, how do
> you pass the license on _along with_ that .js file?
>
> A literal reading suggests that you then do have to copy&paste
> the text into the file. This will often be impractical, so
> it might be considered reasonable to just hyperlink to the license.
The suggestions for using the GPL state that:
"To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found."
In the case of a .js file downloaded as a component of a web-based
application (ie, a set of HTML, .js, images, and other resources
which comprise the web site), a hyperlink to the full notice seems to
be fully in compliance with the method the GPL text recommends for
using the General Public License.
Further on, there is this:
"If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
[ ... ]
The hypothetical commands `show w' and `show c' should show the
appropriate
parts of the General Public License. Of course, the commands you use
may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program."
This implies that the web site might well provide a clickable link
upon entry to the site which references the GPL and from which the
user can follow to obtain the text of the General Public License, not
only as a comment within a .js file.
I also note that under section 2c, if the original version of the
software "does not normally print such an announcement", then "your
work based on the Program is not required to print an announcement."
--
-Chuck
More information about the License-discuss
mailing list