* Maded changes based on additional feedback from novalis
This commit is contained in:
parent
9a799821ef
commit
16f6215850
1 changed files with 56 additions and 61 deletions
117
gpl-lgpl.tex
117
gpl-lgpl.tex
|
@ -614,13 +614,15 @@ to fair and unregulated uses.
|
||||||
Fair use of copyrighted material is an established legal doctrine that
|
Fair use of copyrighted material is an established legal doctrine that
|
||||||
permits certain activities. Discussion of the various types of fair use
|
permits certain activities. Discussion of the various types of fair use
|
||||||
activity are beyond the scope of this tutorial. However, one important
|
activity are beyond the scope of this tutorial. However, one important
|
||||||
example of fair use is the right to reverse engineering software.
|
example of fair use is the right to quote a very few lines (less than
|
||||||
|
seven or so), and reuse them as you with without licensing restrictions.
|
||||||
|
|
||||||
Fair use is a doctrine established by the courts or by statute. By
|
Fair use is a doctrine established by the courts or by statute. By
|
||||||
contrast, unregulated uses are those that are not covered by the statue
|
contrast, unregulated uses are those that are not covered by the statue
|
||||||
nor determined by a court to be covered, but are common and enjoyed by
|
nor determined by a court to be covered, but are common and enjoyed by
|
||||||
many users. An example of unregulated use is reading a program like a
|
many users. An example of unregulated use is reading a printout of the
|
||||||
novel for the purpose of learning how to be a better programmer.
|
programs source code like an instruction book for the purpose of learning
|
||||||
|
how to be a better programmer.
|
||||||
|
|
||||||
\medskip
|
\medskip
|
||||||
|
|
||||||
|
@ -862,10 +864,11 @@ truly GPL'ed.
|
||||||
|
|
||||||
Software is a strange beast when compared to other copyrightable works.
|
Software is a strange beast when compared to other copyrightable works.
|
||||||
It is currently impossible to make a film or a book that can be truly
|
It is currently impossible to make a film or a book that can be truly
|
||||||
obscured. Ultimately, the full text of a novel must presented to the
|
obscured. Ultimately, the full text of a novel, even one written by
|
||||||
reader as words in some human-readable language so that they can enjoy the
|
Donald Barthelme, must presented to the reader as words in some
|
||||||
work. A film, even one directed by David Lynch, must be perceptible by
|
human-readable language so that they can enjoy the work. A film, even one
|
||||||
human eyes and ears to have any value.
|
directed by David Lynch, must be perceptible by human eyes and ears to
|
||||||
|
have any value.
|
||||||
|
|
||||||
Software is not so. While the source code, the human-readable
|
Software is not so. While the source code, the human-readable
|
||||||
representation of software is of keen interest to programmers, users and
|
representation of software is of keen interest to programmers, users and
|
||||||
|
@ -884,11 +887,11 @@ electronic file storage.
|
||||||
Therefore, for GPL'ed software to be useful, the GPL, since it governs the
|
Therefore, for GPL'ed software to be useful, the GPL, since it governs the
|
||||||
rules for creation of derivative works, must grant permission for the
|
rules for creation of derivative works, must grant permission for the
|
||||||
generation of binaries. Furthermore, notwithstanding the relative
|
generation of binaries. Furthermore, notwithstanding the relative
|
||||||
popularity of source-based GNU/Linux distributions like ``Gentoo'', users
|
popularity of source-based GNU/Linux distributions like Gentoo, users find
|
||||||
find it extremely convenient to receive distribution of binary software.
|
it extremely convenient to receive distribution of binary software. Such
|
||||||
Such distribution is the redistribution of derivative works of the
|
distribution is the redistribution of derivative works of the software's
|
||||||
software's source code. \S 3 addresses the matter of creation and
|
source code. \S 3 addresses the matter of creation and distribution of
|
||||||
distribution of binary versions.
|
binary versions.
|
||||||
|
|
||||||
Under \S 3, binary versions may be created and distributed under the terms
|
Under \S 3, binary versions may be created and distributed under the terms
|
||||||
of \S\S 1--2, so all the material previously discussed applies here.
|
of \S\S 1--2, so all the material previously discussed applies here.
|
||||||
|
@ -910,32 +913,32 @@ option for most distributors, because it means that the source-code
|
||||||
provision obligations are fully completed at the time of binary
|
provision obligations are fully completed at the time of binary
|
||||||
distribution (more on that later).
|
distribution (more on that later).
|
||||||
|
|
||||||
Under \S 3(a), the source code code provided must be the ``corresponding
|
Under \S 3(a), the source code provided must be the ``corresponding source
|
||||||
source code''. Here ``corresponding'' primarily means that the source
|
code''. Here ``corresponding'' primarily means that the source code
|
||||||
code provided must be that code used to produce the binaries being
|
provided must be that code used to produce the binaries being distributed.
|
||||||
distributed. That source code must also be ``complete''. A later
|
That source code must also be ``complete''. A later paragraph of \S 3
|
||||||
paragraph of \S 3 explains in detail what is meant by ``complete''. In
|
explains in detail what is meant by ``complete''. In essence, it is all
|
||||||
essence, it is all the material that a programmer of average skill would
|
the material that a programmer of average skill would need to actually use
|
||||||
need to actually use the source code to produce the binaries she has
|
the source code to produce the binaries she has received. Complete source
|
||||||
received. Complete source is required so that, if the licensee choses,
|
is required so that, if the licensee chooses, she should be able to
|
||||||
she should be able to exercise her freedoms to modify and redistribute
|
exercise her freedoms to modify and redistribute changes. Without the
|
||||||
changes. Without the complete source, it would not be possible to make
|
complete source, it would not be possible to make changes that were
|
||||||
changes that were actually directly derived from the version received.
|
actually directly derived from the version received.
|
||||||
|
|
||||||
Furthermore, \S 3 is defending against a tactic that has in fact been seen
|
Furthermore, \S 3 is defending against a tactic that has in fact been seen
|
||||||
in FSF's GPL enforcement. Under GPL, if you pay a high price for a copy
|
in FSF's GPL enforcement. Under GPL, if you pay a high price for a copy
|
||||||
of GPL'ed binaries (which comes with corresponding source, of course), you
|
of GPL'ed binaries (which comes with corresponding source, of course), you
|
||||||
have the freedom to redistribute that work at any fee you choose, or not
|
have the freedom to redistribute that work at any fee you choose, or not
|
||||||
at all. Sometimes, companies attempt to build a racket by producing very
|
at all. Sometimes, companies attempt a GPL-violating cozenage whereby
|
||||||
specialized binaries (perhaps for an obscure architecture), and then
|
they produce very specialized binaries (perhaps for an obscure
|
||||||
giving source code that does correspond, but not giving the
|
architecture), and then giving source code that does correspond, but not
|
||||||
``incantations'' and build plans they used to make that source compile
|
giving the ``incantations'' and build plans they used to make that source
|
||||||
into the specialized binaries. Therefore, \S 3 that the source code
|
compile into the specialized binaries. Therefore, \S 3 that the source
|
||||||
include ``meta-material'' like scripts, interface definitions, and other
|
code include ``meta-material'' like scripts, interface definitions, and
|
||||||
material that is used to ``control compilation and installation'' of the
|
other material that is used to ``control compilation and installation'' of
|
||||||
binaries. In this manner, those further down the distribution chain are
|
the binaries. In this manner, those further down the distribution chain
|
||||||
assured that they have the unabated freedom to build their own derivative
|
are assured that they have the unabated freedom to build their own
|
||||||
works from the sources provided.
|
derivative works from the sources provided.
|
||||||
|
|
||||||
FSF (as authors of GPL) realizes that software distribution comes in many
|
FSF (as authors of GPL) realizes that software distribution comes in many
|
||||||
forms. Embedded manufacturers, for example, have the freedom to put
|
forms. Embedded manufacturers, for example, have the freedom to put
|
||||||
|
@ -951,8 +954,8 @@ phrase covers a broad spectrum. At best, FSF can viably release a new GPL
|
||||||
every ten years or so. Thus, phrases like this must be adaptive to
|
every ten years or so. Thus, phrases like this must be adaptive to
|
||||||
changes in the technology. When GPL version 2 was first published in June
|
changes in the technology. When GPL version 2 was first published in June
|
||||||
1991, distribution on magnetic tape was still common, and CD was
|
1991, distribution on magnetic tape was still common, and CD was
|
||||||
relatively new. Today, CD is the default, and for larger systems DVD-ROM
|
relatively new. Today, CD is the default, and for larger systems DVD-R is
|
||||||
is gaining adoption. This language must adapt with changing technology.
|
gaining adoption. This language must adapt with changing technology.
|
||||||
|
|
||||||
Meanwhile, the binding created by the word ``customarily'' is key. Many
|
Meanwhile, the binding created by the word ``customarily'' is key. Many
|
||||||
incorrectly believe that distributing binary on CD and source on the
|
incorrectly believe that distributing binary on CD and source on the
|
||||||
|
@ -1017,13 +1020,14 @@ those who receive the software from her can exercise their freedoms under
|
||||||
GPL --- including the freedom to modify, rebuild, and redistribute the
|
GPL --- including the freedom to modify, rebuild, and redistribute the
|
||||||
source code.
|
source code.
|
||||||
|
|
||||||
This is where \S 3(c) comes into play. Ultimately, \S 3(b) is a big
|
\S 3(c) is created to save her some trouble, because by itself \S 3(b)
|
||||||
compromise. It separates the binary software from the key tool that
|
would unfairly favor large companies. compromise. \S 3(b) allows the
|
||||||
people can use to exercise their freedom. The GPL permits this separation
|
separation of the binary software from the key tool that people can use
|
||||||
because it is good for redistributors, and those users who turn out not to
|
to exercise their freedom. The GPL permits this separation because it is
|
||||||
need the source. However, to ensure equal rights for all software users,
|
good for redistributors, and those users who turn out not to need the
|
||||||
anyone along the distribution chain must have the right to get the source
|
source. However, to ensure equal rights for all software users, anyone
|
||||||
and exercise those freedoms that require it.
|
along the distribution chain must have the right to get the source and
|
||||||
|
exercise those freedoms that require it.
|
||||||
|
|
||||||
Meanwhile, \S 3(b)'s compromise primarily benefits companies who
|
Meanwhile, \S 3(b)'s compromise primarily benefits companies who
|
||||||
distribute binary software commercially. Without \S 3(c), that benefit
|
distribute binary software commercially. Without \S 3(c), that benefit
|
||||||
|
@ -1066,11 +1070,6 @@ field clear so that \S\S 0--3 can do their jobs.
|
||||||
\section{GPL \S 4: Termination on Violation}
|
\section{GPL \S 4: Termination on Violation}
|
||||||
\label{GPLs4}
|
\label{GPLs4}
|
||||||
|
|
||||||
\S 4--5 are, in my opinion, the heart of the GPL\@. \S\S 0--3 are
|
|
||||||
important in their efforts to set forth in clear legal language the
|
|
||||||
doctrine of copyleft. However, \S 4--5 are the glue that holds \S\S 0--3
|
|
||||||
together.
|
|
||||||
|
|
||||||
\S 4 is GPL's termination clause. Upon first examination, it seems
|
\S 4 is GPL's termination clause. Upon first examination, it seems
|
||||||
strange for a license that has the goal of defending users and programmers
|
strange for a license that has the goal of defending users and programmers
|
||||||
freedoms for perpetuity in an irrevocable way would have such a clause.
|
freedoms for perpetuity in an irrevocable way would have such a clause.
|
||||||
|
@ -1082,12 +1081,13 @@ rights for someone to copy, modify and redistribute the software under
|
||||||
terms of the GPL, they cannot later revoke that grant. Since the GPL has
|
terms of the GPL, they cannot later revoke that grant. Since the GPL has
|
||||||
no provision allowing the copyright holder to take such a prerogative, the
|
no provision allowing the copyright holder to take such a prerogative, the
|
||||||
license is granted as long as the copyright remains in effect\footnote{In
|
license is granted as long as the copyright remains in effect\footnote{In
|
||||||
the USA< due to unfortunate legislation, this is nearly perpetual, even
|
the USA, due to unfortunate legislation, the length of copyright is
|
||||||
though the Constitution forbids it.}. The copyright holder has the
|
nearly perpetual, even though the Constitution forbids perpetual
|
||||||
right to relicense the same work under different licenses (see
|
copyright.}. The copyright holder has the right to relicense the same
|
||||||
Section~\ref{Proprietary Relicensing} of this tutorial), or to stop
|
work under different licenses (see Section~\ref{Proprietary Relicensing}
|
||||||
distributing the GPL'ed version (assuming \S 3(b) was never used), but the
|
of this tutorial), or to stop distributing the GPL'ed version (assuming \S
|
||||||
she may not revoke the rights under GPL already granted.
|
3(b) was never used), but the she may not revoke the rights under GPL
|
||||||
|
already granted.
|
||||||
|
|
||||||
In fact, when an entity looses their right to copy, modify and distribute
|
In fact, when an entity looses their right to copy, modify and distribute
|
||||||
GPL'ed software, it is because of their \emph{own actions}, not that of
|
GPL'ed software, it is because of their \emph{own actions}, not that of
|
||||||
|
@ -1264,11 +1264,6 @@ copyright licenses.
|
||||||
\section{GPL \S 11: No Warranty}
|
\section{GPL \S 11: No Warranty}
|
||||||
\label{GPLs11}
|
\label{GPLs11}
|
||||||
|
|
||||||
With \S 11, the boilerplate language of all copyright licenses begins.
|
|
||||||
Sometimes, companies are concerned that there is no default warranty on
|
|
||||||
GPL'ed software. However, nearly all proprietary software licensing
|
|
||||||
agreements disclaim warranty as well.
|
|
||||||
|
|
||||||
All warranty disclaimer language tends to be shouted in all capital
|
All warranty disclaimer language tends to be shouted in all capital
|
||||||
letters. Apparently, there was once a case where the disclaimer language
|
letters. Apparently, there was once a case where the disclaimer language
|
||||||
of an agreement was negated because it was not ``conspicuous'' to one of
|
of an agreement was negated because it was not ``conspicuous'' to one of
|
||||||
|
@ -1277,7 +1272,7 @@ started placing it in bold or capitalizing the entire text. It now seems
|
||||||
to be voodoo tradition of warranty disclaimer writing.
|
to be voodoo tradition of warranty disclaimer writing.
|
||||||
|
|
||||||
Finally, one important point to remember when reading \S 11 is that \S 1
|
Finally, one important point to remember when reading \S 11 is that \S 1
|
||||||
permits the sale of warranty as an additional service, which \S 11
|
permits the sale of warranty as an additional service, which \S 11
|
||||||
affirms.
|
affirms.
|
||||||
|
|
||||||
\section{GPL, \S 12: Limitation of Liability}
|
\section{GPL, \S 12: Limitation of Liability}
|
||||||
|
@ -1401,7 +1396,7 @@ For those who go into the business of distributing or distributing
|
||||||
modified versions of GPL'ed software, the burden is a bit higher, but not
|
modified versions of GPL'ed software, the burden is a bit higher, but not
|
||||||
by much. The glib answer that is that it is always easy to comply with
|
by much. The glib answer that is that it is always easy to comply with
|
||||||
the GPL by releasing the whole product as Free Software. However,
|
the GPL by releasing the whole product as Free Software. However,
|
||||||
admittedly to the chagrin of FSF, many modern and complex software systems
|
admittedly to the dismay of FSF, many modern and complex software systems
|
||||||
are built using both proprietary and GPL'ed components that are not
|
are built using both proprietary and GPL'ed components that are not
|
||||||
legally derivative works of each other. Usually, in product development
|
legally derivative works of each other. Usually, in product development
|
||||||
with Free Software tools, sometimes it is easier simply to improve
|
with Free Software tools, sometimes it is easier simply to improve
|
||||||
|
@ -1412,7 +1407,7 @@ is a way to help build a better world while also making a profit.
|
||||||
|
|
||||||
Note that FSF does provide services to assist companies who need
|
Note that FSF does provide services to assist companies who need
|
||||||
assistance in complying with the GPL. You can contact FSF's GPL
|
assistance in complying with the GPL. You can contact FSF's GPL
|
||||||
Compliance Labs at <compliance@fsf.org>.
|
Compliance Labs at $<$compliance@fsf.org$>$.
|
||||||
|
|
||||||
\appendix
|
\appendix
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue