* Maded changes based on feedback from novalis
This commit is contained in:
parent
6bf9d0f7b7
commit
b3dcd80f03
2 changed files with 108 additions and 91 deletions
|
@ -13,6 +13,8 @@
|
|||
Added typo fixes from Ammad.
|
||||
(section{GPL \S 7: ``Give Software Liberty of Give It Death!''}):
|
||||
Wrote section.
|
||||
(section{GPL \S 8: Excluding Unfreedonia}): Wrote section.
|
||||
Maded changes based on novalis' feedback.
|
||||
|
||||
2003-05-28 Bradley M. Kuhn <bkuhn@fsf.org>
|
||||
|
||||
|
|
|
@ -219,14 +219,15 @@ and the ability to build the binary applications from that source, the
|
|||
freedom cannot be properly exercised.
|
||||
|
||||
Programmers can take direct benefit from this freedom, and often do.
|
||||
However, this freedom is essential to users who are not programmers.
|
||||
Users must have the right to engage in a non-commercial environment of
|
||||
finding help with the software (as often happens on email lists and in
|
||||
users groups). This means they must have the freedom to recruit
|
||||
However, this freedom is also important to users who are not programmers.
|
||||
Users must have the right to exercise this freedom indirectly in both
|
||||
commercial and non-commercial settings. For example, users often seek
|
||||
non-commercial help with the software on email lists and in users groups.
|
||||
When they find such help, they must have the freedom to recruit
|
||||
programmers who might altruistically assist them to modify their software.
|
||||
|
||||
The commercial exercise of this freedom is also essential. Each user, or
|
||||
group of users, must have the right to hire anyone they wish in a
|
||||
The commercial exercise of this freedom is also essential for users. Each
|
||||
user, or group of users, must have the right to hire anyone they wish in a
|
||||
competitive free market to modify and change the software. This means
|
||||
that companies have a right to hire anyone they wish to modify their Free
|
||||
Software. Additionally, such companies may contract with other companies
|
||||
|
@ -259,6 +260,10 @@ distribution. For example, a distribution vendor may provide immediate
|
|||
security and upgrade distribution via a special network service. Such
|
||||
distribution is completely permitted for Free Software.
|
||||
|
||||
(Section~\ref{Business Models} of this tutorial talks in detail about
|
||||
various Free Software business models that take advantage of the freedom
|
||||
to share commercially.)
|
||||
|
||||
\subsection{The Freedom to Share Improvements}
|
||||
|
||||
The freedom to modify and improve is somewhat empty without the freedom to
|
||||
|
@ -282,19 +287,19 @@ right to modify and improve the software for the customer to correct any
|
|||
problems that are beyond mere user error.
|
||||
|
||||
Entities must also be permitted to make available modified versions of
|
||||
Free Software. Most Free Software programs have a so-called ``canonical
|
||||
version'' that is made available from the primary developers of the
|
||||
software. However, all who have the software have the ``freedom to fork''
|
||||
--- that is, make available non-trivial modified versions of the software
|
||||
on a permanent or semi-permanent basis. Such freedom is central to
|
||||
vibrant developer and user interaction.
|
||||
Free Software. Most Free Software programs have a ``standard version''
|
||||
that is made available from the primary developers of the software.
|
||||
However, all who have the software have the ``freedom to fork'' --- that
|
||||
is, make available non-trivial modified versions of the software on a
|
||||
permanent or semi-permanent basis. Such freedom is central to vibrant
|
||||
developer and user interaction.
|
||||
|
||||
Companies and individuals have the right to make true value-added versions
|
||||
of Free Software. They may use freedom to share improvements to
|
||||
distribute distinct versions of Free Software with different functionality
|
||||
and features. Furthermore, this freedom can be exercised to serve a
|
||||
disenfranchised subset of the user community. If the developers of the
|
||||
canonical version refuse to serve the needs of some of the software's
|
||||
standard version refuse to serve the needs of some of the software's
|
||||
users, other entities have the right to create long- or short-lived fork
|
||||
that serves that sub-community.
|
||||
|
||||
|
@ -308,32 +313,34 @@ addresses how software can be non-free in the first place.
|
|||
Software can be made proprietary only because it is governed by copyright
|
||||
law\footnote{This statement is a bit of an oversimplification. Patents
|
||||
and trade secrets can cover software and make it effectively non-free,
|
||||
and one can contract away their rights and freedoms regarding software.
|
||||
However, the primary control mechanism for software is copyright.}.
|
||||
Copyright law, with respect to software governs copying, modifying, and
|
||||
redistributing that software\footnote{Copyright law in general also
|
||||
governs ``public performance'' of copyrighted works. There is no
|
||||
generally agreed definition for public performance of software and
|
||||
version 2 of the GPL does not govern public performance.}. By law, the
|
||||
copyright holder (aka the author) of the work controls how others may copy,
|
||||
modify and/or distribute the work. For proprietary software, these
|
||||
controls are used to prohibit these activities. In addition, proprietary
|
||||
software distributors further impede modification in a practical sense by
|
||||
distributing only binary code and keeping the source code of the software
|
||||
secret.
|
||||
one can contract away their rights and freedoms regarding software, or
|
||||
source code can be practically obscured in binary-only distribution
|
||||
without reliance on any legal system. However, the primary control
|
||||
mechanism for software is copyright.}. Copyright law, with respect to
|
||||
software governs copying, modifying, and redistributing that
|
||||
software\footnote{Copyright law in general also governs ``public
|
||||
performance'' of copyrighted works. There is no generally agreed
|
||||
definition for public performance of software and version 2 of the GPL
|
||||
does not govern public performance.}. By law, the copyright holder (aka
|
||||
the author) of the work controls how others may copy, modify and/or
|
||||
distribute the work. For proprietary software, these controls are used to
|
||||
prohibit these activities. In addition, proprietary software distributors
|
||||
further impede modification in a practical sense by distributing only
|
||||
binary code and keeping the source code of the software secret.
|
||||
|
||||
Copyright law is a construction. In the USA, the Constitution permits,
|
||||
but does not require, the creation of copyright law as federal
|
||||
legislation. Software, since it is tangible expression of an idea, is
|
||||
legislation. Software, since it is an idea fixed in a tangible medium, is
|
||||
thus covered by the statues, and is copyrighted by default.
|
||||
|
||||
However, software, in its natural state without copyright, is Free
|
||||
Software. In an imaginary world, which has no copyright, the rules would
|
||||
be different. In this world, when you received a copy of a program's
|
||||
source code, there would be no default legal system to restrict you from
|
||||
sharing it with others, making modifications, or redistributing those
|
||||
modified versions\footnote{There could still exist legal systems, like our
|
||||
modern patent system, which could restrict the software in other ways.}.
|
||||
However, this legal construction is not necessarily natural. Software, in
|
||||
its natural state without copyright, is Free Software. In an imaginary
|
||||
world, which has no copyright, the rules would be different. In this
|
||||
world, when you received a copy of a program's source code, there would be
|
||||
no default legal system to restrict you from sharing it with others,
|
||||
making modifications, or redistributing those modified
|
||||
versions\footnote{There could still exist legal systems, like our modern
|
||||
patent system, which could restrict the software in other ways.}.
|
||||
|
||||
Software in the real world is copyrighted by default, and that default
|
||||
legal system does exist. However, it is possible to move software out of
|
||||
|
@ -347,7 +354,7 @@ copyright is in the ``public domain''.
|
|||
An author can create public domain software by disclaiming all copyright
|
||||
interest on the work. In the USA and other countries that have signed the
|
||||
Berne convention on copyright, software is copyrighted automatically by
|
||||
the author when (s)he ``fixes the software into a tangible medium''. In
|
||||
the author when she ``fixes the software into a tangible medium''. In
|
||||
the software world, this usually means typing the source code of the
|
||||
software into a file.
|
||||
|
||||
|
@ -366,7 +373,6 @@ expressed permission to take actions governed by copyright law.
|
|||
|
||||
By contrast, what the copyright holder has done is renounce her copyright
|
||||
controls on the work. The law gave her controls over the work, and she
|
||||
%should the ``she'' be a ``(s)he'' ?
|
||||
has chosen to waive those controls. Software in the public domain is
|
||||
absent copyright and absent a license. The software freedoms discussed in
|
||||
Section~\ref{Free Software Definition} are all granted because there is no
|
||||
|
@ -383,7 +389,7 @@ copyrighted. In most cases (particularly in that of FSF and the GNU
|
|||
Project), this was done due to very careful planning.
|
||||
|
||||
Software released into the public domain does grant freedom to those users
|
||||
who receive the canonical versions on which the original author disclaimed
|
||||
who receive the standard versions on which the original author disclaimed
|
||||
copyright. However, since the work is not copyrighted, any non-trivial
|
||||
modification made to the work is fully copyrightable.
|
||||
|
||||
|
@ -393,9 +399,9 @@ public domain as well. However, over time, some entities will choose to
|
|||
proprietarize their modified versions. The public domain body of software
|
||||
feeds the proprietary software. The public commons disappears, because
|
||||
fewer and fewer entities have an incentive to contribute back to the
|
||||
commons, since they know that any of their competitors can proprietarize
|
||||
their enhancements. Over time, almost no interesting work is left in the
|
||||
public domain, because nearly all new work is done by proprietarization.
|
||||
commons. They know that any of their competitors can proprietarize their
|
||||
enhancements. Over time, almost no interesting work is left in the public
|
||||
domain, because nearly all new work is done by proprietarization.
|
||||
|
||||
A legal mechanism is needed to redress this problem. FSF was in fact
|
||||
originally created primarily as a legal entity to defend software freedom,
|
||||
|
@ -473,7 +479,7 @@ The non-commercial users, however, were not concerned when these two
|
|||
fellows began collecting paychecks off of their GPL'ed work. They knew
|
||||
that because of the nature of the GPL that improvements that were
|
||||
distributed in the commercial environment could easily be folded back into
|
||||
the canonical version. Companies are not permitted to proprietarize
|
||||
the standard version. Companies are not permitted to proprietarize
|
||||
Samba, so the non-commercial users, and even other commercial users are
|
||||
safe in the knowledge that the software freedom ensured by GPL will remain
|
||||
protected.
|
||||
|
@ -482,7 +488,7 @@ Commercial developers also work in concert with non-commercial developers.
|
|||
Those two now-long-since graduated students continue to contribute to
|
||||
Samba altruistically, but also get work doing it. Priorities change when a
|
||||
client is in the mix, but all the code is contributed back to the
|
||||
canonical version. Meanwhile, many other individuals have gotten involved
|
||||
standard version. Meanwhile, many other individuals have gotten involved
|
||||
non-commercially as developers, because they want to ``cut their teeth on
|
||||
Free Software'' or because the problems interest them. When they get good
|
||||
at it, perhaps they will move on to another project or perhaps they will
|
||||
|
@ -566,9 +572,9 @@ remain free in just this sense.\footnote{This quotation is Copyright
|
|||
\end{quotation}
|
||||
|
||||
In essence, lawyers are paid to service the shared commons of legal
|
||||
infrastructure. Few defend themselves in court or write their own briefs
|
||||
(even though they are legally permitted to do so) because everyone would
|
||||
prefer to have an expert do that job.
|
||||
infrastructure. Few citizens defend themselves in court or write their
|
||||
own briefs (even though they are legally permitted to do so) because
|
||||
everyone would prefer to have an expert do that job.
|
||||
|
||||
The Free Software economy is a market that is ripe for experts. It
|
||||
functions similarly to other well established professional fields like the
|
||||
|
@ -663,9 +669,10 @@ 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
|
||||
software what its license is. The goal is to make sure users know their
|
||||
rights and freedoms under GPL and 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.
|
||||
|
||||
|
@ -688,36 +695,30 @@ on making a 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 the 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.
|
||||
For many, this is where the ``magic'' happens that defends software
|
||||
freedom along the distribution chain. \S 2 is the only place 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
|
||||
keeping copyright notices intact, 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
|
||||
seeks to ensure that those receiving modified versions know what path it
|
||||
took to them. For some users, it is important to know that they are using
|
||||
the standard 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
|
||||
|
@ -734,12 +735,12 @@ 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 redistribute 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.}.
|
||||
personal, unshared changes to software for personal use only should be
|
||||
protected and defended\footnote{FSF does maintain that there is an {\bf
|
||||
ethical} obligation to redistribute 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:
|
||||
|
@ -767,12 +768,12 @@ 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.
|
||||
program, she generates new copyrighted material --- fixing expressions of
|
||||
ideas into 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}$}
|
||||
|
@ -782,10 +783,10 @@ new whole derivative work.
|
|||
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
|
||||
work, remains the prerogative of the copyright holder of \worki{}.
|
||||
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
|
||||
|
@ -798,7 +799,7 @@ product --- would they give you permission to create and distribute
|
|||
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
|
||||
of GPL are upheld, 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.
|
||||
|
||||
|
@ -824,11 +825,11 @@ 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.
|
||||
extend to anyone who might, through the 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 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
|
||||
|
@ -1211,9 +1212,23 @@ Thus, \S 7 is rarely gives software death by stopping its distribution.
|
|||
Instead, it is inspiring patent holders to share their patents in the same
|
||||
freedom-defending way that they share their copyrighted works.
|
||||
|
||||
\section{GPL \S 8: Finding Freedonia}
|
||||
\section{GPL \S 8: Excluding Unfreedonia}
|
||||
\label{GPLs8}
|
||||
|
||||
\S 8 is rarely used by copyright holders. Its intention is that, if
|
||||
particular country, say Unfreedonia, grant particular patents or allow
|
||||
copyrighted interfaces (no country to our knowledge even permits those
|
||||
yet), that the GPL'ed software can continue in free and unabated
|
||||
distribution in the countries where such controls do not exist.
|
||||
|
||||
It is a partial ``out'' from \S 7. Without \S 8, if a copyright holder
|
||||
knew of a patent in a particular country licensed in a GPL-incompatible
|
||||
way, then she could not distribute under GPL, because the work would
|
||||
legitimately end up in the hands of citizens of Unfreedonia.
|
||||
|
||||
It is an inevitable but sad reality that some countries are freer than
|
||||
others. \S 8 exists to permit distribution on those countries that are
|
||||
free without otherwise negating parts of the license.
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\chapter{Odds, Ends, and Absolutely No Warranty}
|
||||
|
|
Loading…
Reference in a new issue