Changeset - 3158f32e477d
[Not reviewed]
0 2 0
Bradley Kuhn (bkuhn) - 10 years ago 2014-03-16 20:21:17
bkuhn@ebb.org
Introductory discussion of GPLv2 for this section that introduces it.
2 files changed with 32 insertions and 1 deletions:
0 comments (0 inline, 0 general)
compliance-guide.tex
Show inline comments
 
% compliance-guide.tex                            -*- LaTeX -*-
 

	
 
\part{A Practical Guide to GPL Compliance}
 

	
 
\label{gpl-compliance-guide}
 
\begin{center}
 

	
 
{\parindent 0in
 
This part is: \\
 
\begin{tabbing}
 
Copyright \= \copyright{} 2014 \= \hspace{.2in} Bradley M. Kuhn. \\
 
Copyright \= \copyright{} 2008 \= \hspace{.2in} Software Freedom Law Center. \\
 
\end{tabbing}
 

	
 
\vspace{1in}
 

	
 
Authors of this part are: \\
 

	
 
Bradley M. Kuhn \\
 
Aaron Williamson \\
 
Karen M. Sandler \\
 

	
 
\vspace{3in}
 

	
 

	
 
The copyright holders of this part hereby grant the freedom to copy, modify,
 
convey, Adapt, and/or redistribute this work under the terms of the Creative
 
Commons Attribution Share Alike 4.0 International License.  A copy of that
 
license is available at
 
\verb=https://creativecommons.org/licenses/by-sa/4.0/legalcode=.  }
 

	
 
\end{center}
 

	
 
\bigskip
 

	
 
\chapter*{Executive Summary}
 

	
 
This is a guide to effective compliance with the GNU General Public
 
License (GPL) and related licenses. In accordance with the Software
 
Freedom Law Center's (SFLC's) philosophy of assisting the community with
 
GPL compliance cooperatively, this guide focuses on avoiding compliance
 
actions and minimizing the negative impact when enforcement actions occur.
 
It introduces and explains basic legal concepts related to the GPL and its
 
enforcement by copyright holders. It also outlines business practices and
 
methods that lead to better GPL compliance.  Finally, it recommends proper
 
post-violation responses to the concerns of copyright holders.
 

	
 
\chapter{Background}
 

	
 
Early GPL enforcement efforts began soon after the GPL was written by
 
Richard Stallman in 1989, and consisted of informal community efforts,
 
often in public Usenet discussions.\footnote{One example is the public
 
  outcry over NeXT's attempt to make the Objective-C front-end to GCC
gpl-lgpl.tex
Show inline comments
...
 
@@ -754,96 +754,127 @@ Specifically, copyleft \textit{uses} the copyright holders' controls on
 
permission to modify the work to add a conditional requirement.  Namely,
 
downstream users may only have permission to modify  the work if they pass
 
along the same permissions on the modified version that came originally to
 
them.
 

	
 
These original program-specific proto-GPLs give an interesting window into
 
the central ideas and development of copyleft.  In particular, reviewing them
 
shows how the text of the GPL we know has evolved to address more of the
 
issues discussed earlier in \S~\ref{software-and-non-copyright}.
 

	
 
\section{The GNU General Public License, Version 1}
 

	
 
In January 1989, the FSF announced that the GPL had been converted into a
 
``subroutine'' that could be reused not just for all FSF-copyrighted
 
programs, but also by anyone else.  As the FSF claimed in its announcement of
 
the GPLv1\footnote{The announcement of GPLv1 was published in the
 
  \href{http://www.gnu.org/bulletins/bull6.html\#SEC8}{GNU'S Bulletin, vol 1,
 
    number 6 dated January 1989}.  (Thanks very much to Andy Tai for his
 
  \href{http://www.free-soft.org/gpl_history/}{consolidation of research on
 
    the history of the pre-v1 GPL's}.)}:
 
\begin{quotation}
 
To make it easier to copyleft programs, we have been improving on the
 
legalbol architecture of the General Public License to produce a new version
 
that serves as a general-purpose subroutine: it can apply to any program
 
without modification, no matter who is publishing it.
 
\end{quotation}
 

	
 
This, like many inventive ideas, seems somewhat obvious in retrospect.  But,
 
the FSF had some bright people and access to good lawyers when it started.
 
It took almost five years from the first copyleft licenses to get to a
 
generalized, reusable GPLv1.  In the context and mindset of the 1980s, this
 
is not surprising.  The idea of reusable licensing infrastructure was not
 
only uncommon, it was virtually nonexistent!  Even the early BSD licenses
 
were simply copied and rewritten slightly for each new use\footnote{It
 
  remains an interesting accident of history that the early BSD problematic
 
  ``advertising clause'' (discussion of which is somewhat beyond the scope of
 
  this tutorial) lives on into current day, simply because while the
 
  University of California at Berkeley gave unilateral permission to remove
 
  the clause from \textit{its} copyrighted works, others who adapted the BSD
 
  license with their own names in place of UC-Berkeley's never have.}.  The
 
GPLv1's innovation of reuable licensing infrastructure, an obvious fact
 
today, was indeed a novel invention for its day\footnote{We're all just
 
  grateful that the FSF also opposes business method patents, since the FSF's
 
  patent on a ``method for reusable licensing infrastructure'' would have
 
  not expired until 2006!}.
 

	
 
\section{The GNU General Public License, Version 2}
 

	
 
The GPLv2 was released two and a half years after GPLv1, and over the
 
following sixteen years, it became the standard for copyleft licensing until
 
the release of GPLv3 in 2007 (discussed in more detail in the next section).
 

	
 
While this tutorial does not discuss the terms of GPLv1 in detail, it is
 
worth noting below the three key changes that GPLv2 brought:
 

	
 
\begin{itemize}
 

	
 
\item Software patents and their danger are explicitly mentioned, inspiring
 
  (in part) the addition of GPLv2\S\S5--7.  (These sections are discussed in
 
  detail in \S~\ref{GPLv2s5}, \S~\ref{GPLv2s6} and \S~\ref{GPLv2s7} of this
 
  tutorial.)
 

	
 
\item GPLv2\S2's copyleft terms are expanded to more explicitly discuss the
 
  issue of combined works.  (GPLv2\S2 is discussed in detail in
 
  \S~\ref{GPLv2s2} in this tutorial).
 

	
 
\item GPLv2\S3 includes more detailed requirements, including the phrase
 
 ``the scripts used to control compilation and installation of the
 
  executable'', which is a central component of current GPLv2 enforcement
 
  .  (GPLv2\S3 is discussed in detail in
 
  \S~\ref{GPLv2s3} in this tutorial).
 
\end{itemize}
 

	
 
The next chapter discusses GPLv2 in full detail, and readers who wish to dive
 
into the section-by-section discussion of the GPL should jump ahead now to
 
that chapter.  However, the most interesting fact to note here is how GPLv2
 
was published with little fanfare and limited commentary.  This contrasts
 
greatly with the creation of GPLv3.
 

	
 
\section{The GNU General Public License, Version 3}
 

	
 
\section{The Innovation of Optional ``Or Any Later'' Version}
 

	
 
\section{Complexities of Two Simultaneously Popular Copylefts}
 

	
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\chapter{GPLv2: Running Software and Verbatim Copying}
 
\label{run-and-verbatim}
 

	
 

	
 
This chapter begins the deep discussion of the details of the terms of
 
GPLv2\@. In this chapter, we consider the first two sections: GPLv2 \S\S
 
0--2. These are the straightforward sections of the GPL that define the
 
simplest rights that the user receives.
 

	
 
\section{GPLv2 \S 0: Freedom to Run}
 
\label{GPLs0}
 

	
 
\S 0, the opening section of GPLv2, sets forth that the work is governed by
 
copyright law. It specifically points out that it is the ``copyright
 
holder'' who decides if a work is licensed under its terms and explains
 
how the copyright holder might indicate this fact.
 

	
 
A bit more subtly, \S 0 makes an inference that copyright law is the only
 
system under which it is governed. Specifically, it states:
 
\begin{quote}
 
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 activities, and all other
 
activities are unrestricted, provided that no other agreements trump GPLv2
 
(which they cannot; see Sections~\ref{GPLs6} and~\ref{GPLs7}). This is
 
very important, because the Free Software community heavily supports
 
users' rights to ``fair use'' and ``unregulated use'' of copyrighted
 
material. GPLv2 asserts through this clause that it supports users' rights
 
to fair and unregulated uses.
 

	
 
Fair use of copyrighted material is an established legal doctrine that
 
permits certain activities. Discussion of the various types of fair
 
use activity are beyond the scope of this tutorial. However, one
 
important example of fair use is the right to quote a very few lines
 
(less than seven or so) and reuse them as you would with or without
 
licensing restrictions.
 

	
 
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
 
nor determined by a court to be covered, but are common and enjoyed by
0 comments (0 inline, 0 general)