* Wrote material on GPL Sections 1 and 2 * Spell checked * Flushed out outline a bit
This commit is contained in:
parent
5682a42c82
commit
163097cd2b
1 changed files with 253 additions and 12 deletions
265
gpl-lgpl.tex
265
gpl-lgpl.tex
|
@ -203,7 +203,7 @@ restricted.
|
|||
It was once rare that this freedom was restricted by even proprietary
|
||||
software; today it is not so rare. Most End User Licensing Agreements
|
||||
(EULAs) that cover most proprietary software restrict some types of use.
|
||||
For example, some versions of Microsoft's Frontpage software prohibit use
|
||||
For example, some versions of Microsoft's FrontPage software prohibit use
|
||||
of the software to create websites that generate negative publicity for
|
||||
Microsoft. Free Software has no such restrictions; everyone is free to
|
||||
use Free Software for any purpose whatsoever.
|
||||
|
@ -581,7 +581,7 @@ GPL\@. In this chapter, we consider the core terms: GPL \S\S 0--3. These
|
|||
are the sections of the GPL that fundamentally define the legal details of
|
||||
how software freedom is respected.
|
||||
|
||||
\section{GPL, \S 0: Freedom to Run}
|
||||
\section{GPL \S 0: Freedom to Run}
|
||||
|
||||
\S 0, the opening section of GPL, sets forth that the work is governed by
|
||||
copyright law. It specifically points out that it is the ``copyright
|
||||
|
@ -594,7 +594,7 @@ system under which it is governed. Specifically, it states:
|
|||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope.
|
||||
\end{quote}
|
||||
In essence, the license governs \emph{only} those activites and all other
|
||||
In essence, the license governs \emph{only} those activities and all other
|
||||
activities are unrestricted, provided that no other agreements trump GPL
|
||||
(which they cannot; see Sections~\ref{GPLs6} and~\ref{GPLs7}). This is
|
||||
very important, because the Free Software community heavily supports
|
||||
|
@ -615,7 +615,7 @@ novel for the purpose of learning how to be a better programmer.
|
|||
|
||||
\medskip
|
||||
|
||||
Thus, the GPL protects users fair and uregulated use rights precisely by
|
||||
Thus, the GPL protects users fair and unregulated use rights precisely by
|
||||
not attempting to cover them. Furthermore, the GPL ensures the freedom
|
||||
to run specifically by stating the following:
|
||||
\begin{quote}
|
||||
|
@ -625,15 +625,232 @@ Thus, users are explicitly given the freedom to run by \S 0.
|
|||
|
||||
\medskip
|
||||
|
||||
The bulk of \S 0 not mentioned here gives definitions for other terms used
|
||||
The bulk of \S 0 not yet discussed gives definitions for other terms used
|
||||
throughout. The only one worth discussing in detail is ``work based on
|
||||
the Program''. The reason this definition is particular interesting is
|
||||
that
|
||||
not for the definition itself, which is rather straightforward, but the
|
||||
because it clears up a common misconception about the GPL\@.
|
||||
|
||||
The GPL is often mistakenly criticized because it fails to give a
|
||||
definition of ``derivative work''. In fact, it would be incorrect and
|
||||
problematic if the GPL attempt to define this. A copyright license, in
|
||||
fact, has no control over what may or may not be a derivative work. This
|
||||
matter is left up to copyright law, not the licenses that utilize it.
|
||||
|
||||
\section{GPL, \S 1}
|
||||
It is certainly true that copyright law as a whole does not propose clear
|
||||
and straightforward guidelines for what is and is not a derivative
|
||||
software work under copyright law. However, no copyright license --- not
|
||||
even the GNU GPL -- can be blamed for this. Legislators and court
|
||||
opinions must give us guidance to decide the border cases.
|
||||
|
||||
\section{GPL, \S 2}
|
||||
\section{GPL \S 1: Verbatim Copying}
|
||||
|
||||
GPL \S 1 covers the matter of redistributing the source code of a program
|
||||
exactly as it was received. This section is quite straightforward.
|
||||
However, there are a few details worth noting here.
|
||||
|
||||
The phrase ``in any medium'' is important. This, for example, gives the
|
||||
freedom to publish a book that is the printed copy of the program's source
|
||||
code. It also allows for changes in the medium of distribution. Some
|
||||
vendors may ship Free Software on a CD, but others may place it right on
|
||||
the hard drive of a pre-installed computer. Any such redistribution media
|
||||
is allowed.
|
||||
|
||||
Preservation of copyright notice and license notifications are mentioned
|
||||
specifically in \S 1. These are in some ways the most important part of
|
||||
the redistribution, which is why they are mentioned by name. The GPL
|
||||
always strives to make it abundantly clear to anyone who receives the
|
||||
software what its license is. The goal is to leave no reason that someone
|
||||
would be surprised that the software she got was licensed under GPL\@.
|
||||
Thus throughout the GPL, there are specific reference to the importance of
|
||||
notifying others down the distribution chain that they have rights under
|
||||
GPL.
|
||||
|
||||
Also mentioned by name is the warranty disclaimer. Most people today do
|
||||
not believe that software comes with any warranty. Notwithstanding the
|
||||
proposed state-level UCITA bills (which have never obtained widespread
|
||||
adoption), there are little or no implied warranties with software.
|
||||
However, just to be on the safe side, GPL clearly disclaims them, and the
|
||||
GPL requires redistributors to keep the disclaimer very visible. (See
|
||||
Sections~\ref{GPLs11} and~\ref{GPLs12} of this tutorial for more on GPL's
|
||||
warranty disclaimers.)
|
||||
|
||||
Note finally that \S 1 begins to set forth the important defense of
|
||||
commercial freedom. \S 1 clearly states that in the case of verbatim
|
||||
copies, one may make money. Redistributors are fully permitted to charge
|
||||
for the redistribution of copies of Free Software. In addition, they may
|
||||
provide the warranty protection that the GPL disclaims as an additional
|
||||
service for a fee. (See Section~\ref{Business Models} for more discussion
|
||||
on making profit from Free Software redistribution.)
|
||||
|
||||
\section{GPL \S 2: Share and Share Alike}
|
||||
|
||||
Many consider \S 2 the heart and soul of the GPL\@. For many, this is
|
||||
where the ``magic'' happens that defends software freedom along the
|
||||
distribution chain. I certainly agree that if GPL has a soul, this is
|
||||
where it is. However, I argue that the heart is in fact contained in \SS
|
||||
4--5 (see Section~\ref{GPLs4} and~\ref{GPLs5} of this tutorial). But, for
|
||||
the moment, let us consider the soul.
|
||||
|
||||
\S 2 gives the only permission in the GPL that governs the modification
|
||||
controls of copyright law. If someone modifies a GPL'ed program, she is
|
||||
bound in the making those changes by \S 2. The goal here is to ensure
|
||||
that the body of GPL'ed software, as it continues and develops, remains
|
||||
Free as in freedom.
|
||||
|
||||
To achieve that goal, \S 2 first sets forth that the rights of
|
||||
redistribution modified versions are the same as those for verbatim
|
||||
copying, as presented in \S 1. Therefore, the details of charging,
|
||||
keeping copyright notices in tact, and other \S 1 provisions are in tact
|
||||
here as well. However, there are three additional requirements.
|
||||
|
||||
The first (\S 2(a)) requires that modified files carry ``prominent
|
||||
notices'' explaining what changes were made and the date of such changes.
|
||||
The goal here is not to put forward some specific way of marking changes,
|
||||
or controlling the process of how changes get made. Primarily, \S 2(a)
|
||||
seeks to ensure that those receiving modified versions what path it took
|
||||
to them. For some users, it is important to know that they are using the
|
||||
canonical version of program, because while there are many advantages to
|
||||
using a fork, there are a few disadvantages. Users should be informed the
|
||||
historical context of the software version they use, so that they can make
|
||||
proper support choices. Finally, \S 2(a) serves an academic purpose ---
|
||||
ensuring that future developers can use a diachronic approach to
|
||||
understand the software.
|
||||
|
||||
\medskip
|
||||
|
||||
The second requirement (\S 2(b)) contains the four short lines that embody
|
||||
the legal details of ``share and share alike''. These 46 words are
|
||||
considered by some to be the most worthy of careful scrutiny. It is worth
|
||||
the effort to carefully understand what each clause is saying, because \S
|
||||
2(b) can be a source of great confusion when not properly understood.
|
||||
|
||||
In considering \S 2(b), first note the qualifier: it only applies to
|
||||
derivative works that ``you distribute or publish''. Despite years of
|
||||
education efforts by FSF on this matter, many still believe that modifiers
|
||||
of GPL'ed software are required by the license to publish or otherwise
|
||||
share their changes. On the contrary, \S 2(b) {\bf does not apply if} the
|
||||
changes are never distributed. Indeed, the freedom to make private,
|
||||
personal changes to software that are not shared should be protected and
|
||||
defended\footnote{FSF does maintain that there is an {\bf ethical}
|
||||
obligation to redistributor changes that are generally useful, and often
|
||||
encourages companies and individuals to do so. However, there is a
|
||||
clear distinction between what one {\bf ought} to do and what one {\bf
|
||||
must} do.}.
|
||||
|
||||
Next, we again encounter the same matter that appears in \S 0, in the
|
||||
following text:
|
||||
\begin{quote}
|
||||
... that in whole or part contains or is derived from the Program or any
|
||||
part thereof,
|
||||
\end{quote}
|
||||
Again, the GPL relies here on what the copyright law says is a derivative
|
||||
work. If, under copyright law, the modified version ``contains or is
|
||||
derived from'' the GPL'ed software, then the requirements of \S 2(b)
|
||||
apply. The GPL invokes its control as a copyright license over the
|
||||
modification of the work in combination with its control over distribution
|
||||
of the work.
|
||||
|
||||
The final clause of \S 2(b) describes what the licensee must do if she is
|
||||
distributing or publishing a work that is deemed a derivative work under
|
||||
copyright law --- namely, the following:
|
||||
\begin{quote}
|
||||
[The work must] be licensed as a whole at no charge to all third parties
|
||||
under the terms of this License.
|
||||
\end{quote}
|
||||
That is probably the most tightly-packed phrase in all of the GPL\@.
|
||||
Consider each subpart carefully.
|
||||
|
||||
The work ``as a whole'' is what is to be licensed. This is an important
|
||||
point that \S 2 spends an entire paragraph explaining; thus this phrase is
|
||||
worthy of a lengthy discussion here. As a programmer modifies a software
|
||||
program, she generates new copyrighted material --- fixing ideas in the
|
||||
tangible medium of electronic file storage. That programmer is indeed the
|
||||
copyright holder of those new changes. However, those changes are part
|
||||
and parcel to the original worked distributed to the programmer under
|
||||
GPL\@. Thus, the license of the original work affects the license of the
|
||||
new whole derivative work.
|
||||
|
||||
% {\cal I}
|
||||
\newcommand{\gplusi}{$\mathcal{G\!\!+\!\!I}$}
|
||||
\newcommand{\worki}{$\mathcal{I}$}
|
||||
\newcommand{\workg}{$\mathcal{G}$}
|
||||
|
||||
It is certainly possible to take an existing independent work (called
|
||||
\worki{}) and combine it with a GPL'ed program (called \workg{}). The
|
||||
license of \worki{}, when it is distributed as a separate and independent
|
||||
work, remains the prerogative of the copyright holder of . However, when
|
||||
\worki{} is combined with \workg{}, it produces a new work that is the
|
||||
combination of the two (called \gplusi{}). The copyright of this
|
||||
derivative work, \gplusi{}, is jointly held by the original copyright
|
||||
holder of each of the two works.
|
||||
|
||||
In this case, \S 2 lays out the terms by which \gplusi{} may be
|
||||
distributed and copied. By default, under copyright law, the copyright
|
||||
holder of \worki{} would not have been permitted to distribute \gplusi{};
|
||||
copyright law forbids it without the expressed permission of the copyright
|
||||
holder of \workg{}. (Imagine, for a moment, if \workg{} were a Microsoft
|
||||
product --- would they give you permission to create and distribute
|
||||
\gplusi{} without paying them a hefty sum?) The license of \workg{}, the
|
||||
GPL, sets forth ahead of time options for the copyright holder of \worki{}
|
||||
who may want to create and distribute \gplusi{}. This pre-granted
|
||||
permission to create and distribute derivative works, provided the terms
|
||||
of GPL are uphold, goes far above and beyond the permissions that one
|
||||
would get with a typical work not covered by a copyleft license. Thus, to
|
||||
say that this restriction is any way unreasonable is simply ludicrous.
|
||||
|
||||
\medskip
|
||||
|
||||
The next phrase of note in \S 2(b) is ``licensed ... at no charge''. This
|
||||
is a source of great confusion to many. Not a month goes by that FSF does
|
||||
not receive an email that claims to point out ``a contradiction in GPL''
|
||||
because \S 2 says that redistributors cannot charge for modified versions
|
||||
of GPL'ed software, but \S 1 says that they can. The ``at no charge''
|
||||
means not that redistributors cannot charge for performing the acts
|
||||
governed by copyright law\footnote{Recall that you could by default charge
|
||||
for any acts not governed by copyright law, because the license controls
|
||||
are confined by copyright.}, but rather that they cannot charge a fee
|
||||
for the \emph{license itself}. In other words, redistributors of
|
||||
(modified and unmodified) GPL'ed works may charge any amount they choose
|
||||
for performing the modifications on contract or the act of transferring
|
||||
the copy to the customer, but they may not charge a separate licensing fee
|
||||
for the software.
|
||||
|
||||
\S 2(b) further states that the software must ``be licensed ... to all
|
||||
third parties''. This too has led to some confusions, and feeds the
|
||||
misconception mentioned earlier --- that all modified versions must made
|
||||
available to the public at large. However, the text here does not say
|
||||
that. Instead, it says that the licensing under terms of the GPL must
|
||||
extend to anyone who might, through the typical distribution chain,
|
||||
receive a copy of the software. Distribution to all third parties is not
|
||||
mandated here, but \S 2(b) does require redistributors to license the
|
||||
derivative works in a way that is extends FIXME to all third parties who may
|
||||
ultimately receive a copy of the software.
|
||||
|
||||
In summary, \S 2(b) says what terms under which the third parties must
|
||||
receive this no-charge license. Namely, they receive it ``under the terms
|
||||
of this License'', the GPL. When an entity \emph{chooses} to redistribute
|
||||
a derivative work of GPL'ed software, the license of that whole derivative
|
||||
work must be GPL and only GPL\@. In this manner, \S 2(b) dovetails nicely
|
||||
with \S 6 (as discussed in Section\~ref{GPLs6} of this tutorial).
|
||||
|
||||
\medskip
|
||||
|
||||
The final paragraph of \S 2 is worth special mention. It is possible and
|
||||
quite common to aggregate various software programs together on one
|
||||
distribution medium. Computer manufacturers do this when they ship a
|
||||
pre-installed hard drive, and GNU/Linux distribution vendors do this to
|
||||
give a one-stop CD or URL for a complete operating system with necessary
|
||||
applications. The GPL very clearly permits such ``mere aggregation'' with
|
||||
programs under any license. Despite what you hear from its critics, the
|
||||
GPL is nothing like a virus, not only because the GPL is good for you and
|
||||
a virus is bad for you, but also because simple contact with a GPL'ed
|
||||
code-base does not impact the license of other programs. Actual effort
|
||||
must be expended by a programmer to cause a work to fall under the terms
|
||||
of the GPL. Redistributors are always welcome to simply ship GPL'ed
|
||||
software alongside proprietary software or other unrelated Free Software,
|
||||
as long as the terms of GPL are adhered to for those packages that are
|
||||
truly GPL'ed.
|
||||
|
||||
\section{GPL, \S 3}
|
||||
|
||||
|
@ -641,6 +858,7 @@ that
|
|||
\chapter{Defending Freedom On Many Fronts}
|
||||
|
||||
\section{GPL, Section 4}
|
||||
\label{GPLs4}
|
||||
|
||||
\section{GPL, Section 5}
|
||||
\label{GPLs5}
|
||||
|
@ -654,9 +872,21 @@ that
|
|||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\chapter{Odds, Ends, and Absolutely No Warranty}
|
||||
|
||||
\section{GPL, \S 8}
|
||||
\label{GPLs8}
|
||||
|
||||
\section{GPL, \S 9}
|
||||
\label{GPLs9}
|
||||
|
||||
\section{GPL, \S 10}
|
||||
\label{GPLs10}
|
||||
|
||||
\section{GPL, \S 11}
|
||||
\label{GPLs11}
|
||||
|
||||
There was a case where the disclaimer of a contract was negated because it
|
||||
was not "conspicuous" to the person entering into the contract. Therefore,
|
||||
to make such language "conspicuous" people started bolding it. My question
|
||||
to make such language "conspicuous" people started placing it in bold or caps it. My question
|
||||
has always been, does that mean all the other parts of the document aren't
|
||||
important such that they too need to be "conspicuous."
|
||||
|
||||
|
@ -667,8 +897,18 @@ limitation of liability. The former gets rid of everything that can be
|
|||
gotten rid of, while the latter limits the liability of the actor for any
|
||||
warranties that cannot be disclaimed (such as personal injury, etc.).
|
||||
|
||||
\section{GPL, \S 12}
|
||||
\label{GPLs12}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\chapter{Business Models, Internal Use, and Compliance}
|
||||
\chapter{Integrating the GPL into Business Practices}
|
||||
|
||||
\section{Using Free Software In-House}
|
||||
|
||||
\section{Business Models}
|
||||
\label{Business Models}
|
||||
|
||||
\section{Ongoing Compliance}
|
||||
|
||||
\appendix
|
||||
|
||||
|
@ -1091,5 +1331,6 @@ General Public License instead of this License.
|
|||
|
||||
\end{document}
|
||||
|
||||
% LocalWords: proprietarize redistributors sublicense yyyy Gnomovision
|
||||
% LocalWords: Yoyodyne
|
||||
% LocalWords: proprietarize redistributors sublicense yyyy Gnomovision EULAs
|
||||
% LocalWords: Yoyodyne FrontPage improvers Berne copyrightable Stallman's GPLs
|
||||
% LocalWords: Lessig Lessig's UCITA pre
|
||||
|
|
Loading…
Reference in a new issue