123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- % comprehensive-gpl-guide.tex -*- LaTeX -*-
- %
- % Toplevel file to build the entire book.
- \documentclass[10pt, letterpaper, openany, oneside]{book}
- % I'm somewhat convinced that this book would be better formatted using
- % the memoir class :
- % http://www.ctan.org/pkg/memoir
- % http://mirror.unl.edu/ctan/macros/latex/contrib/memoir/memman.pdf
- % For the moment, I've thrown in fancychap because I don't have time to
- % research memoir.
- % FIXME: Some overall formatting hacks that would really help:
- % * I have started using \hyperref[LABEL]{text} extensively, which seems
- % to work great in the PDF and HTML versions, but in the Postscript
- % version, the link lost entirely. I think we need an additional command
- % to replace \hyperref which takes an optional third argument that will
- % insert additional text only when generating print versions, such as:
- % \newhyperref[GPLv2s3]{the requirements for binary distribution under
- % GPLv2}{(see section~\ref*{GPLv2s3} for more information)}
- %
- % This is a careful balance, because it'd be all too easy to over-pepper
- % the printed version with back/forward references, but there are
- % probably times when this is useful.
- % * Similar issue: \href{} is well known not to carry the URLs in the print
- % versions. Adding a footnote with the URL for the print version is
- % probably right. (or maybe a References page?)
- % * The text is extremely inconsistent regarding formatting of code and
- % commands. The following varied different methods have been used:
- % + the \verb%..% inline form
- % + verbatim environment (i.e., \begin{verbatim}
- % + {\tt }
- % + \texttt{}
- % + the lstlisting environment (i.e., \begin{lstlisting}
- % These should be made consistent, using only two forms: one for line and
- % one for a long quoted section.
- % FIXME: s/GPL enforcers/COGEOs/g
- % (the term coined later but not used throughout) This can't be done
- % by rote, since it may not be appropriate everywhere and shouldn't be
- % used *before* it's coined in the early portions of
- % compliance-guide.tex (and it's probably difficult to coin it earlier
- % anyway). BTW, I admit COGEOs isn't the best acronym, but I started
- % with ``Community Enforcement Organizations'', which makes CEO, which
- % is worse. :) My other opting was COEO, which seemed too close to
- % CEO. Suggestions welcome.
- \usepackage{listings}
- \usepackage{enumerate}
- \usepackage{enumitem}
- \usepackage[Conny]{fncychap}
- \usepackage[dvips]{graphicx}
- \usepackage[verbose, twoside, dvips,
- paperwidth=8.5in, paperheight=11in,
- left=1in, right=1in, top=1.25in, bottom=.75in,
- ]{geometry}
- % Make sure hyperref is last in the package list. Order matters here, See:
- % http://tex.stackexchange.com/questions/77886/fncychap-and-hyperref-messes-up-page-references
- \usepackage{hyperref}
- \newcommand{\tutorialpartsplit}[2]{#2}
- %\input{no-numbers-on-table-of-contents}
- \providecommand{\hrefnofollow}[2]{\href{#1}{#2}}
- \hypersetup{pdfinfo={Title={Copyleft and the GNU General Public License: A Comprehensive Tutorial and Guide}}}
- \begin{document}
- \pagestyle{plain}
- \pagenumbering{roman}
- \frontmatter
- \begin{titlepage}
- \begin{center}
- {\Huge
- {\sc Copyleft and the \\
- GNU General Public License:
- \vspace{.25in}
- A Comprehensive Tutorial \\
- \vspace{.1in}
- and Guide
- }}
- \vfill
- {\parindent 0in
- \begin{tabbing}
- Copyright \= \copyright{} 2003--2005, 2008, 2014--2015, 2018 \hspace{1.mm} \= \kill
- Copyright \> \copyright{} 2018 \> Chestek Legal. \\
- Copyright \> \copyright{} 2003--2005, 2008, 2014--2015, 2018 \> Bradley M. Kuhn. \\
- Copyright \> \copyright{} 2014--2015 \> Anthony K. Sebro, Jr. \\
- Copyright \= \copyright{} 2014 \> Denver Gingerich. \\
- Copyright \= \copyright{} 2003--2007, 2014 \> Free Software Foundation, Inc. \\
- Copyright \> \copyright{} 2008, 2014 \> Software Freedom Law Center. \\
- \end{tabbing}
- \vspace{.3in}
- The copyright holders grant the freedom to copy, modify, convey,
- adapt, and/or redistribute this work (except
- Appendices~\ref{GPLv2-full-text}--\ref{AGPLv3-full-text}) under the terms of the Creative Commons
- Attribution Share Alike 4.0 International License. A copy of that license is
- available at \url{https://creativecommons.org/licenses/by-sa/4.0/legalcode}.
- Appendices~\ref{GPLv2-full-text}--\ref{AGPLv3-full-text} include copies of the texts of various licenses published
- by the FSF, and they are all licensed under the license, ``Everyone is permitted
- to copy and distribute verbatim copies of this license document, but changing
- it is not allowed.''. However, those who seek to make modified versions of
- those licenses should note the
- \href{https://www.gnu.org/licenses/gpl-faq.html#ModifyGPL}{explanation given in the GPL FAQ}.
- \vfill
- As a public, collaborative project, this Guide is primarily composed of the
- many contributions received via its
- \href{https://k.copyleft.org/guide/files/master/CONTRIBUTING.md}{public
- contribution process}. Please
- \href{https://k.copyleft.org/guide/changelog/master/}{review its
- Git logs} for full documentation of all contributions, and
- Appendix~\ref{third-party-citation-list}
- contains a list of third-party works from which some material herein was
- adapted.
- The most recent version is
- available online at \url{https://copyleft.org/guide/}. Patches
- are indeed welcome to this material. Sources can be found in the Git
- repository at \url{https://k.copyleft.org/guide/}.
- }
- \end{center}
- \end{titlepage}
- \tableofcontents
- \chapter{Preface}
- This tutorial is the culmination of nearly a decade of studying and writing
- about software freedom licensing and the GPL\@. Each part of this tutorial
- is a course unto itself, educating the reader on a myriad of topics from the
- deep details of the GPLv2 and GPLv3, common business models in the copyleft
- licensing area (both the friendly and unfriendly kind), best practices for
- compliance with the GPL, for engineers, managers, and lawyers, as well as
- real-world case studies of GPL enforcement matters.
- It is unlikely that all the information herein is necessary to learn all at
- once, and therefore this tutorial likely serves best as a reference book.
- The material herein has been used as the basis for numerous live tutorials
- and discussion groups since 2002, and the materials have been periodically
- updated. They likely stand on their own as excellent reference material.
- However, if you are reading these course materials without attending a live
- tutorial session, please note that this material is merely a summary of the
- highlights of the various CLE and other tutorial courses based on this
- material. Please be aware that during the actual courses, class discussion
- and presentation supplements this printed curriculum. Simply reading this
- material is \textbf{not equivalent} to attending a course.
- \mainmatter
- % FIXME: We need an Introduction. I think ideally it goes here, before Part
- % I. The introduction should cover initially:
- %
- %
- % * Why we cover the topics in the order that we do, in particular, why
- % we discuss all GPLv2 before mentioning GPLv3 (i.e., explain why we
- % take a diachronic approach to study of GPL).
- %
- % * It should briefly discuss Free Culture / Software Freedom stuff.
- % Maybe some early material currently living in gpl-lgpl.tex should move
- % to the introduction, maybe not. The goal is to prepare for the
- % moment when we can merge in material about CC-BY-SA.
- \input{gpl-lgpl}
- \input{compliance-guide}
- \input{enforcement-case-studies}
- \appendix
- \part{Appendices}
- \input{third-party-citations}
- \input{license-texts}
- \end{document}
|