The periodicals are back and it is that part of the year when the most amazing things tend to take place. Definitely that does not cover anything that is even remotely academic in nature!
I concluded that my Google (personalized) home page was definitely more interesting and thought provoking than my computer graphics text book, when I came across a link (http://www.ifso.ie/documents/gplv3-launch-2006-01-16.html) to the following article, rather a transcript, by Ciaran O' Riordan of FSF Europe/IFSO.
I have edited out most of the HTML contents of the original article, while keeping the main body intact. Whatever follows after this sentence is covered by the copyright notice in italics.
Copyright 2006 Irish Free Software
Organisation. Verbatim copying and distribution of this
entire article is permitted in any medium, provided this notice
is preserved.[0h 00m 7s]
Peter Brown (Executive Directive, Free Software
Foundation):
Hello. Hello ladies and gentlemen, if you could take your seats. I'd like to welcome you
all to the first conference on GNU General Public License version 3.
I'd like to introduce you to FSF - Free Software Foundation - founder and president,
Richard Stallman.
Richard Stallman (Author of the GPL,
President of FSF):
Hello and welcome and I'm glad that you're interested in making the
GNU GPL version 3 as good as it can possibly be.
We've been using this license for a long time and we've discovered various points where it
was either confusing, or needed to be adapted, and meanwhile the world has sprung very
nasty threats on our community and on all software users. So we need to update the GPL.
We've known this actually for many years. We had some sessions about 4 years ago, working
on updating the GPL. But then things went on, and we decided this year we're going to sit
down and we're going to take a lot of time, and we're going to get it finished.
The biggest change we've made, is in the area of license compatibility. Helping to - well
partly - removing an inconvenience, an obstacle, that has prevented combining code from
various free software packages. There are some free software licenses that are compatible
with version two, and people can mix the code, for example that's under the X11 license,
people can copy that into GPL covered programs, and do. We've put in provisions to extend
the range of compatible licenses, there are additional licenses now that will be
compatible with the GPL, and it will be possible to copy the code or link it together in a
combined larger program. This, we think, will help our community.
Aside from that, the biggest changes I believe concern DRM. Digital Restrictions
Management threatens the freedom of every computer user. It's fundamentally based on
denying users the freedom to control the software that they operate. DRM is an example of
a malicious feature - a feature designed to hurt the user of the software, and therefore,
it's something for which there can never be toleration, and DRM is fundamentally based on
activities that cannot be done, with free software, that's it's goal: to make sure that
there are things that users cannot do with free software. That's the direct opposite of
our goal, which is to do everything with free software. Unfortunately some of that
software is circulating only underground in the US because it's been forbidden. With the
DMCA, the Digital Millennium Copyright Act.
[0h 03m 59s]
that imposed censorship of software in this country, and now Europe has a similar system.
Although it doesn't have to be as harsh but most countries have made it even harsher. So
this is free software whose development will have to go on underground. But what we can
do with the GNU GPL is to prevent our software from being perverted or corrupted so that
it doesn't really respect the user's freedom anymore. For instance, the Tivo is designed
so that if you modify the program and install it, it won't run. We have written
provisions designed to forbid that use of our software. We can't forbid people from
making such devices, nasty as it is, but we can, we believe, forbid them to use GPL
covered software in that corrupt way.
Other substantial changes relate to software patents. We've decided to put in an explicit
patent license grant, following the lead of many other free software licenses that have
come out over the last decade. We've also put in a very narrow kind of patent
retaliation, and that is that if Person A makes a modified version of a GPL covered
program and has a patent and says "if anyone else makes such a modified version and
runs it, I'll sue him" - well, if he does sue someone, then he loses the right to
make any further modifications. Which means he cannot maintain his program anymore, so
commercially speaking it's not viable for him to do that. So this is a way of dealing
with one particular danger that can occur when people make modified versions, and run
them. They don't have to release their modified version, but they mustn't try to stop
other people from writing similar modifications on their own.
[0h 06m 44s]
There are a bunch of other smaller changes, and Eben is going to be going through the
whole license, explaining them step by step. So I don't think I need to say anymore right
now. Have you noticed anything I didn't cover which I haven't?
There are a lot of changes in various places that are designed to say things in a way,
that is more independent of possible variations of different countries copyright. In
substance, these are almost insignificant, but they help the license do the same job more
effectively. Oh, and there is one error in the draft that's been posted. In the joke, in
the instructions at the end, a change was made that hadn't actually been cleared with me,
and I'm not actually planning any change there. But that won't affect any of the
substance of the license itself. So I will now turn things over to Eben Moglen.
[0h 08m 02s]
Eben Moglen (General Counsel of FSF,
Chairman of SFLC):
Thanks Richard. Good morning. I'm glad to see you all. It's been a little lonely, and a
little too secret, for the last several months, I like better the public practice of law,
and it's a pleasure now to be in a position to talk about the work we have been doing. I
started working with Richard thirteen years ago, and I hadn't been working with him, I
think, for more than a couple of months when we started talking about what would follow
GPL2. The last few months, we've worked together more closely on this license than in all
the previous years put together and it's been a wonderful experience. Now, I want to share
that work with you, at the beginning of an even better time, which is the larger and deeper
collaboration.
I'm going to spend the next hour and a half or so walking through the license, you will
note that we haven't given you pieces of paper to turn but at the close of these remarks,
everybody here and everybody else in the world who cares, through gplv3-dot-fsf-dot-o-r-g,
will be holding a copy of the first discussion draft.
As Richard has indicated, there are a few changes directed primarily at the preservation
of principles. And many changes directed at the improvement of usability, clarity,
compatibility, and the international reach of a movement which has gone, in the past
fifteen years, world wide.
I think that there's little that I could say that would attract anybody's interest at this
stage, and so I'll stop speaking my words and start speaking the words of the license.
[0h 10m 10s]
You see before you, the definitions in section 0 of the license, and I have highlighted
one phrase about which I want to speak a little bit more in-depth.
"To 'propagate' a work means doing anything with it that requires permission under
applicable copyright law, other than executing it on a computer or making private
modifications."
This strategy, of using a new term of art, "to propagate software", not
reflected in any particular copyright statute, reflects an overall drafting decision to
attempt to cut the language of the license loose from any particular system's copyright
law.
We now speak in terms that can be defined factually, in relation to the program, or in
relation to the full set of exploitation rights, or use rights, distribution rights, that
a particular territorial scheme of copyright may impose.
To propagate, then, is to take any action concerning the program which is not one of
those, namely the right of execution and the right of private tinkering and modification,
which we regard as fundamental and uncontrollable by law.
"The 'source code' for a work means the preferred form of the work for making
modifications to it. 'Object code' means any non-source version of a work."
Again, our goal is to make simpler, factual determination possible, with respect to
categories that may vary as systems of law are either more or less advanced in their
assimilation of their computer science knowledge.
I have highlighted here, in our definition of complete corresponding source code, another
phrase added to the license for the purpose of clarification.
You will note that the complete corresponding source code for a work in object code form,
includes:
"any shared libraries and dynamically linked sub-programs that the
work is designed to require"
We believe that this will lay the rest controversies which have occasionally arisen in
past years concerning the nature of our intentions and the role of dynamic linking as
opposed to static linking in the combining of code.
From our point of view this was always a question of fact: what had the licensor
intended. And we believe that the matter is now clear. As Richard has said, one of the
fundamental goals in the making of this license, is to indicate the nature of our
relationship in the attempt to restrict users rights in copyrighted works. For which
purpose, complete corresponding source code also includes:
"any encryption or authorisation codes necessary to install and/or execute the
source code of the work, perhaps modified by you, in the recommended or principal
context of use, such that its functioning in all circumstances is identical to that of
the work, except as altered by your modifications."
I would translate that for vernacular use, into "plays all the same movies".
[0h 14m 00s]
[laughter]
Our goal is to make clear that GPL'd software may not to be used to create forms in which
tinkered versions will not run or will not run for the same purposes and on the same data.
It is fine, as Richard says, with us for people to use our software for purposes that do
not attempt to turn the mechanisms of freedom against itself, but when the mechanisms of
freedom are used to create unfreedom it goes further than the GPL can possibly be expected
to follow and we will not go there.
On the screen at the moment, is our modified version of what came to be known in the past
15 years as "the system library exception". Dealing with the question: when
source code need not be provided for components of combined works including GPL software
because the components were already available as part of the operating system or operating
environment and the user could be expected to have either the source code or as much
access to the source code as the operating system or environment permitted.
That version of the exception, in GPL2, was both over- and under-inclusive in ways that
created difficulties. Certain behaviour, such as combining the GCC compiler or other
GPL'd applications, with the C libraries of proprietary operating systems, or operating
systems under GPL-incompatible licenses, had been challenged as violations of GPL where we
thought that they were reasonable and permissible uses of GPL'd works. Other modalities
which we considered evasions of GPL had been claimed to qualify under the system library
exception.
We have rewritten it in order to bring the rather tricky business of that exception to
within what we believe is in perceptible tolerance of all important cases in both
directions. Here and elsewhere we have had to accept some additional complexity in order
to achieve precision in the protection of freedom. We look forward to discussing all such
cases in the license with you over the next year. We have never elected for complexity
for it's own sake, but we want to state at the outset that sometimes, in order to do the
work we have to do, simplicity must give way to the protection of freedom. And in this
instance, that is clear.
[interrupted]
Chris, I should just say in the beginning that I've got a lot of ground to cover in this
initial presentation. We will be taking questions at the end and over the next two days.
I hope to be responsive to everyone but I want to roll through this as best I can right
now.
Basic permissions...
[A mobile phone rings. It's that of FSF's GPL compliance officer, David Turner]
Mr. Turner will now be resigning from the Free Software Foundation in the morning.
[laughter]
Richard Stallman:
If you have brought in a portable tracking and surveillance device, please switch it off
and of course if you really want it to stop it reporting your movements you should take
the batteries out.
The police have already tracked you here, and of course if they're interested in what
we're saying, they are welcome to attend and I believe some of them are here.
Eben Moglen:
[0h 18m 16s]
We have, as you will see, at the close of the first paragraph, taken a step which we
believed was always clear and is now explicit. That is that this license is meant to
acknowledge and encourage the development of fair use doctrine, we're glad there is still
some vestigial fair use doctrine in the United States, and we hope that there will be an
increase rather than a decrease in fair use doctrine around the world in years to come.
We thought this license made that clear but we wish to make that assurance doubly sure.
The highlighted passage reflects, as Richard told you, the one narrowly targeted form of
direct patent retaliation we have elected to include in this license.
We are not grand theorists of patent retaliation. We have been saying for 20 years, for
nearly 20 years, that patents would be a terrible problem threatening the very existence
of software freedom. I hope that it is clear to all now that we were right.
None the less, we believe that broad patent retaliation clauses in licenses promise more
to users than they can really deliver.
[0h 19m 39s]
Because the deterrent effect of denying the right to have and use and distribute free
software is not enough in and of itself to break most patent aggression schemes. Where we
have satisfied ourself that narrow targeted patent retaliation may have true deterrent
affect, we have however incorporated it into the license as part of a general attempt to
do everything we can about the patent problem. Here we believe that one narrow form of
retaliation may actually have meaningful effect, so this license gives unlimited
permission to privately modify and run the program provided that you do not bring suit for
patent infringement against anyone for making, using, or distributing, their works based
on the program. And as Richard has already told you, we believe the operative effect of
this clause would be to deny continued opportunity to maintain privately modified versions
on the part of any party who seeks to use its patent claims to prevent similar or
equivalent modifications from being made by others. In this very narrow field we think
retaliation may actually deter aggression and we wish therefore to include it.
Please note also the way in which the next paragraph makes use of our
copyright-culture-free notation scheme.
"Propagation of covered works is permitted without limitation provided it does not
enable parties other than you to make or receive copies. Propagation which does enable
them to do so is permitted, as 'distribution', under the conditions of sections 4-6
below."
So let us, just for a moment, attend to the question of non-US statutory copyright schemes
under the new license. If the copyright scheme relevant to a particular work, place, and
time, speaks for example in terms of "making available", "public
communication", "public display and performance" of software, then those
activities are "propagation" because they require permission.
The question now again is a factual question. Does each of those particular modes of
propagation enable others to make or receive copies? If so, then the license covers that
activity by a permission maintained in the distribution provisions. We are not dependent
on a local incorporation of a local statutory definition of "distribution". By
which change, we hope to bring to clarity another subject which was often hotly debated
under GPL2 and for which no definitive answer could be given.
We cannot, any more than any other license drafter can, achieve simultaneously coincident
compliance with every statute in the world. It can't be done. The statutes give
different lists, and those lists are differently exclusive. By delinking our terminology
from anybody's particular statutory terminology, we believe that it will be possible to
localise the license to particular circumstances and territorial copyright schemes without
changing the license text itself.
[0h 23m 30s]
As a free software license, as Richard has told you, this license intrinsically disfavours
technical attempts to restrict users freedom to copy, modify, and share copyrighted works.
Each of it's provisions shall be interpreted in light of this specific declaration of the
licensor's intent. We wish courts all over the world to understand that our intent is to
maximise freedom, not to restrict it, and that everything should be so understood when
effect is given to it's terms.
"Regardless of any other provision of this License, no permission is given to
distribute covered works that illegally invade users' privacy, nor for modes of
distribution that deny users that run covered works the full exercise of the legal
rights granted by this License."
Our goal here is to make clear that acts with our software that violate local law are not
permitted by the license. Thus allowing private enforcement for copyright infringement to
assist local regulatory enforcement of laws against spyware or user disablement.
We are not hear ruling any particular conduct to be in violation of the license, we are
only saying that what is forbidden by local regulatory or criminal law, is also not
permitted by an act of the licensor's intent.
Our hope is that in some cases this will assist copyright holders and licensors to see
that local laws against malware behaviour are fully enforced through use of private law as
well as public law sanctions.
"No covered work constitutes part of an effective technical protection measure"
That is to say, distribution of a covered work as part of a system to generate or access
certain data, constitutes general permission, at least, for development, distribution, and
use, under this license, of other software capable of accessing the same data.
In the United States, this language, we believe, has specific consequences with respect to
the Digital Millennium Copyrights Act. We wish to point out that no GPL'd program can be
regarded as a measure in circumvention of any other GPL'd program's access protection
schemes. We believe that this language will also provide some assistance in achieving
similar results under statutory enforcement schemes in pursuance of the EUCD and other
international regulation meant to assist disablement of users.
[0h 26m 38s]
Here again we are simply speaking to courts to explain how we understand the intent of
licensors. We have no power to change local law, but we do have power by giving
permission to make clear where our permissions should not be mis-read under local laws
that presume user disablement from mere technological existence.
The distribution sections, four to six, and I am here presenting four, the verbatim
copying section, have been modified only slightly, in this particular instance, only to
take account of the new license compatibility provisions in sections seven which I will be
working through in detail with you in a moment.
Note that we are not making any change in this license which affects any existing
distribution system by placing it outside the Pale of GPL. Nothing we announce today, in
this first discussion draft, breaks any legitimate freedom-respecting business model
currently in existence. No one must come today to the conclusion that she or he must
fight to remain in the community if what you had been doing was compliant with GPL version
2 and was not based upon disabling user's freedom in some DRM-ish way. No change that we
here announced would put you out of the Pale.
We have made changes to include more parties in the community, we have made changes that
exclude no legitimate member of our community.
[0h 28m 32s]
The fundamental copyleft provision of the GPL, which was in section 2(b) and is now in
section 5(b) is here before you. It has been modified in a few slight ways designed to
increase clarity. A reference to the absence of any license charge in GPLv2, was
sometimes misunderstood, sometimes deliberately misunderstood, to suggest some conflict
with the commmercial distribution of the software.
We have removed that phrase so as to avoid a trap for the unwary mind, and we have
clarified that the obligation to provide source code to those who have binary versions is
based, normatively, on their possession of a copy of the binary. Anyone who has a copy of
the binary is entitled to a copy of the source, no matter how they came by it.
We have slightly generalised the question of notices and when you must preserve notices
concerning copyright status, attribution, and absence of warranty.
In addition, because in GPL'd works, under our enhanced compatibility provision, portions
of the work may bear additional terms, either permissions or requirements, we add a
requirement that any additional terms on any portion of the work, be clearly stated in one
central place in the work, so that mechanical, as well as human means, of reviewing source
code can immediately and unambiguously locate all additional terms that may be borne by
any piece of a GPL'd work and to make clear which pieces those are.
We believe that such a scheme is administrable in the twenty-first century, as it would
not have been in 1991 because sophisticated automated source-code handling reviewing and
evaluation systems are already in wide use, and many members of this community, both
commercial and non-commercial, are working to improve such facilities all the time.
[0h 31m 14s]
We have made a few slight changes concerning the treatment of portions of a GPL'd work
which could stand on their own as separate works and which are subject to GPL'd terms, and
only to GPL'd terms, when despite their possible separate existence they are distributed
as part of a larger GPL'd whole.
These changes are solely for clarity, and to take account of our expanded compatibility
provision. We see no operative change in the nature of our language on this point and we
believe that, except with regard to expanded compatibility, no change, in fact, occurs.
I would call your attention here to a definition of aggregation, so as to avoid certain
discussions and confusions which we saw occurring over the last decade.
"A compilation of a covered work with other separate and independent works, which
are not by their nature extensions of the covered work, in or on a volume of a storage
or distribution medium, is called an 'aggregate' if the copyright resulting from the
compilation is not used to limit the legal rights of the compilation's users beyond what
the individual works permit."
And then, the phrase which became familiar in GPL version 2
"mere inclusion of a covered work in an aggregate does not cause this license to
apply."
This, we believe, will allow courts and parties seeking commercial certainty, to know for
sure, what aggregates are and to avoid certain edge cases which have arisen in the past
and caused confusion or doubt.
[0h 33m 20s]
We wish to make clear, with respect to the problem of binary distribution accompanied by
source, and which is now "non-source distribution", given our definitions of
object code and source code, that we expect source code to be available on durable,
physical media as an option. We have no intention to preclude continuing and expanded
reliance of electronic distribution of source code, but we wish to make clear that we
believe the obligation is to provide, at the users option, durable physical versions of
source code verified by the distributor to make the non-source version distributed.
Given the increasingly embedding of GPL'd code in end-user consumer products, we have made
one other slight change highlighted here.
The written offer for source code, valid for at least three years, was a sensible approach
to the term of offer of source when software distribution was only software distribution.
We now believe that it is reasonable to say that if you distribute a consumer product,
containing GPL'd software, that you should be prepared to offer source code for that
product for as long as you also offer either spare parts or other customer support, that
it is not acceptable to delay the date of other spare part or service beyond a date in
which you are also in a position to help people to exercise their rights as to the
software embedded in the devices.
We have taken one additional measure of clarification, designed to ease a restriction in
GPL version 2. If you:
"Distribute the Object Code by offering access to copy it from a designated place,
and offer equivalent access to copy the Corresponding Source in the same way through the
same place"
I am sorry to make meaning depend on a preposition, but the goal here is to prevent those
cases in which it appeared that the very same server needed to be the server distributing
the source code that was also distributing the non-source version of the work. A single
"portal", though which the user can gain access to both the server for the
source, and a server for the non-source, is sufficient, which will include pointing
upstream at an upstream source supplier, provided that the source available upstream is the
complete and corresponding source, and that it is guaranteed to be available for the
relevant period of time. But we did not want to give the impression that in an age of web
distribution and complex multi-layered, multi-meta distribution structures, that all
source always had to be located on the same physical server as the non-source version
being distributed.
[0h 36m 50s]
We have taken a step that we had hoped would be unnecessary, but time has proved that it
is necessary, to say that obfuscation of the source provided is not permitted.
It may not be distributed encrypted. It may not be distributed packed without the packing
tool, and etc. We regret that it was necessary to take that step, we should not have
needed to spend those words, but there have been a few bad actors out there and they
should receive no safe harbour in the license.
Now, I want to turn our attention to the question of enhanced compatibility. GPL version
2 was as strict a copyleft as a copyleft can be. It said you must distributed derivative
works and modified versions under this license. None the less, some additional terms
could be added even to the strict copyleft of GPL2. We called them exceptions. They were
additional permissions.
GPL version 3, in our first discussion draft, formalises that exceptions process, as well
as the imposition of certain kinds of additional requirements, on code, with the attempt
to permit mixing GPL'd code with code bearing additional permissions and requirements that
may come from other licenses.
The case of permissions is the simpler case, and our drafting starts there.
"When you release a work based on the Program, you may include your own terms
covering added parts for which you have, or can give, appropriate copyright permission,
as long as those terms clearly permit all the activities that this License permits, or
permit usage or relicensing under this License."
That, in effect, recapitulates the situation under GPL2, but does so explicitly.
"Your terms may be written separately or may be this License plus additional
written permission."
I wish to point out that we now make clear that we believe that permissions additional to
GPL should be in writing. I am not talking to any particular development project under
GPL when I say that we believe that unwritten permissions have caused a certain amount of
grief because people didn't know what the terms really were, and we think that's a
practice which is no longer desirable to renew.
"If you so license your own added parts, those parts may be used separately under
your terms, but the entire work remains under this License. Those who copy the work, or
works based on it, must preserve your terms just as they must preserve this License
[...] Aside from additional permissions, your terms may add limited kinds of additional
requirements on your added parts, [...]"
That is to say, if GPLv3 represented by our discussion draft, would permit sub-parts added
to GPL'd works to bear requirements beyond the requirements of the GPL in certain narrow
areas.
The three you see before you on the slide, concerning preservation of copyright and legal
notices, attributions, prohibitions of misrepresentation of origins, requirements of
markings: those will achieve compatibility with permissive licenses that contain various
kinds of advertising restrictions or notice clauses. The goal here is to secure total
compatibility with licenses which we had, previously, insignificant but none the less
preventive incompatibilities.
"b) They may state a disclaimer of warranty and liability in terms different from
those used in this License."
Our goal is precisely to permit code to acquire disclaimers which are based upon
territorial laws of warranty or of representation of fitness other than those
characteristic of the United States. We therefore believe that it will be possible for
code to bear appropriate national or territorial disclaimers without raising needs for
nationalised licenses or some additional scheme to permit amendments. All such licenses
will be compatible, and the additional requirements of warranty disclaimer will simply
additively apply to code as it moves around the world. And, c, additional requirements
may:
"prohibit or limit the use for publicity purposes of specified names of
contributors, and they may require that certain specified trademarks be used for
publicity purposes only in the ways that are fair use under trademark law except with
express permission."
These three terms put together will put to rest, we believe, incompatibilities with all
the generally permissive free software licenses with which GPL2 was incompatible for
reasons it was not our intention to see long term as barriers to the sharing of
collaboration of code and projects.
Two more classes of restrictions additional are also permitted, and these are classed as
more complex and require more discussion.
The requirements added to additional parts of the work may require
"that the work contain functioning facilities that allow users to immediately
obtain copies of its Complete Corresponding Source Code."
This is a generalisation of an experiment that we tried in the Affero GPL.
[0h 43m 13s]
It is the only step that we take, in this license, towards dealing with the question of
modified versions of software performing remote services. Our position is that if you
develop code under GPL, that performs remote services, you may include in your code, a
facility that allows the client side receiving such services to request immediate
transmission of the server-side code.
You can require, in your terms, that that facility not be removed. We have not added such
a term to GPL, we do not plan to add such a term to GPL. We merely say that the GPL will
be compatible with the imposition of those terms by so many developers as wish to do so,
and therefore those who wish to develop such code, and protect against others offering
similar remote services on the basis of modified versions may do so. GPL does not enforce
such a restriction, nor does it prohibit mixture of code bearing such a restriction, and
we believe that balance is appropriate given the division of opinion in the community and
the diversity of models of use of our code, commercial and non-commercial, at this time.
Part (e), which is phrased with some complexity, unfortunately, but it is necessary,
states again a position on a subject of great controversy on which we wish to secure
flexibility. Part (e) contains a two-part definition of what we consider defensive patent
retaliation, and we say that you may put defensive patent retaliation additional
requirements on your parts of a GPL'd work, if you wish to, and those parts will bear that
requirement but can be ad-mixed with other GPL'd code.
Again, we do not enforce those requirements, but we do not prohibit code bearing such
requirements to be mixed with GPL'd code. The definition we have offered is a
meta-language definition of defensive patent retaliation terms. We have worked it very
carefully, we have subjected it to formal verification process, and we believe that it
correctly describes all of the cases that it is our intention to include, and none of the
cases that it was our intention to exclude. I will say here about those conclusions that
the patent retaliation provisions of the ASL 2 and the patent retaliation provisions of
the Eclipse license, in our working of this example, meet this standard.
Accordingly, we believe that without further alteration, were this discussion draft to be
GPL3 it would have attained full compatibility with both ASL 2 and the Eclipse license,
which are presently separated from compatibility with GPL version 2 by their patent
retaliation terms and those alone.
[0h 46m 55s]
"No other additional conditions are permitted in your terms;"
...beyond additional permissions, and the requirements delineated in this exclusive list A
through E...
"therefore, no other conditions can be present on any work that uses this
License. This License does not attempt to enforce your terms, or assert that they are
valid or enforceable by you; it simply does not prohibit you from employing them."
Therefore no other conditions can be present on any work that uses this license. This
license does not attempt to enforce those additional terms, or assert they are valid or
enforceable, it simply does not prohibit one from employing them in ad-mixture with GPL'd
code.
This system of enhanced compatibility requires some administrative provisions in section
7.
When others modify the work, if they modify your parts of it, they may release such parts
of their version under this license without additional permissions by including notice to
that effect or by deleting notice that gives specific permissions in addition to this
license.
This implements a term which was found in many of the formalised GPL exceptions that were
built up over the last fifteen years including those authored or edited by the Free
Software Foundation itself.
Additional permissions placed on code from which you derive are explicitly optional, and
as you modify those parts, if you wish to remove the permissions, you can. It is clear,
however, that additional requirements such as those about remote services or those about
patent retaliation, cannot be removed when you modify the code from which you derive
whatever you make because nobody has the power to remove those requirements but the party
who placed them on its code in the first place.
[0h 48m 52s]
"Unless the work also permits distribution under a previous version of this
License, all the other terms included in the work under this section must be listed,
together, in a central list in the work."
As I said, we believe that this provision, requiring a single central list of all
additional terms, will facilitate automated compliance activity to ascertain easily and
quickly all the terms that apply to particular code within a larger GPL'd work. The first
part of that sentence is an example of a general drafting requirement.
We have many programs in the world that are presently circulating under a GPL2 "or
any later version" and will therefore be subject to the activity of the automatic
reversioning clause in GPL2. We have been sure in our drafting that no such program
ceases to be in compliance with GPL3 if it was in compliance with GPL2. A property of the
current discussion draft which we must preserve as we work on this license in the coming
year. It is not acceptable for us to wind up with a final draft in which GPL2 compliant
programs in current use and circulation are not able to make the version transition to
GPL3 by virtue of something that's already true of them which would suddenly make their
distribution, as currently undertaken, license violating.
Richard Stallman:
I'd like to add a few things to that. That's true about the parts of the license that
concern how things should be labelled, and so on, that is, bureaucratic requirements.
We're trying to make sure that no bureaucratic requirements that we add cause trouble for
the existing, or theoretically future, GPL "version 2 or later" programs.
In some cases we've made substantive changes in requirements such as in the exception for
certain libraries from the complete corresponding source code, and that substantive change
might, in fact, cause certain ways, well not the actual source code of GPL'd programs, but
certain ways of distributing them as executables might be left out.
It's the bureaucratic kinds of requirements which we're trying to make sure doesn't cause
any problem for them. Now, we've done our best, but we may have overlooked something, and
that's one of the specific kinds of things that we hope people will check.
If you see anything in there, with some kind of requirement for how to do things right,
might cause trouble for programs that are already out there, that are fine under GPL
version 2 and say "GPL version 2 or later". Please tell us about them, those,
we really need to fix, if there are any mistakes there.
Eben Moglen:
You see before you a slightly modified version of the termination clause. The verbal
change is slight but it's effect is somewhat more substantial.
"You may not propagate, modify or sublicense the Program except as expressly
provided under this License. Any attempt otherwise to propagate, modify or sublicense
the Program is void, and any copyright holder may terminate your rights under this
License at any time after having notified you of the violation by any reasonable means
within 60 days of any occurrence."
And then, as in GPL2:
"parties who have received copies, or rights, from you under this License will not
have their licenses terminated so long as they remain in full compliance."
The automatic termination provision of GPL version 2 was crucial to the enforcement of the
license in the state of affairs that prevailed for us in the 1990s. We had a very slim
compliance staff available, and we were, at the Free Software Foundation, the only party
in the world full-time recurrently engaged in enforcing the license.
Automatic termination meant that nothing depended on our notification and it allowed us to
work to get parties back into compliance by beginning from the proposition that they had
already lost their right to distribute by the act of violation.
[0h 54m 03s]
We live in a different world at present where far more people are far more surveillant of
the possibility of infringement of the license and where world-wide commercial and
non-commercial use of the software has burgeoned to the point at which automatic
termination, though still beneficial to compliance, raises too many other costs and
difficulties. Particularly for parties engaged in what we think of as whole-distribution
inadvertent violation situations, where unintentional violation of the license left the
party vulnerable to compliance activity including injunctions or damages claims from a
very large number of complainants.
The Free Software Foundation historically acted as an aggregater of claims under those
circumstances. We tried to contact all parties who might conceivably have claims so as to
be able to assure a party in non-compliance, that if they got into compliance and worked
matters out with us, that they could achieve peace in a practical way from everybody.
It is now a better system, for all parties, we believe, to move to a regime in which if
you cure a violation promptly and hear no complaint for 60 days after-cure, you know that
you have brought any theoretical liability to a conclusion.
The stress therefore is upon the deterrent effect of an opportunity for prompt cure
followed by a responsibility to deal with those parties who promptly notified you that you
were outside of compliance.
This, we believe, is a system which will not inhibit any of the ongoing compliance
activities of the foundation, or others around the world, who have begun also to act in
defence of freedom, and which will provide a much more effective environment for dealing
with the large number of claims potentially arising from a non-compliant
whole-distribution situation.
[0h 56m 15s]
This would not be a presentation about the GPL by me if emphasis was not placed on what
you see before you now. This license is
"9. Not a Contract.
You are not required to accept this License in order to receive a copy of the
Program."
We have not argued now, nor will we, nor can anyone argue, who reads the text of the
language, that the receipt of the code is some quid-pro-quo for the acceptance of some
terms. If you are existing in a legal system in which that wasn't what made it a
contract, then ...go with God, but arguments based on the contractual exchange of the code
for promises of compliance have nothing to do with us. We give permissions here and the
enforcement weight of our license lies in the fact that you have no permission to
propagate, that is, you have no permission to do what copyright law requires permission to
do, but through this license. That's our legal theory and we are sticking to it.
The reason that's our legal theory and are sticking to it remains the one we gave before.
There are 168 or 183 contract law schemes in the world and the more you depend upon them,
the more variability you will have. Berne is good, the harmonisation of copyright is
good, for us. Our rules will use a toolset that is as close to global standard as we can
get.
Richard Stallman:
[0h 58m 15s]
That doesn't mean that we are in favour of copyright law as a general matter.
[laughter]
We're not totally against copyright law, in a simple or blanket sense either, but we're
not defending the global copyright system that has mostly been imposed on the world merely
because we use it because it's there. And that has to be very clear.
We are not endorsing the Berne plus WTO system of copyright law as it stands as a good
thing, but it exists and whatever harm it may do in other areas, we're trying to do some
good with it when we can.
Eben Moglen:
Richard would also agree, I think, that the copyright law of 1897 was better than the
copyright law of 2006.
The automatic licensing of downstream users provision that you see before you is modified
solely to take account of expanded compatibility provisions.
What was a straight forward proposition under pure copyleft, that every downstream user
receives from every upstream modifier or other licensor an automatic license under GPL
requires a little additional rephrasing when terms both permissive and requirement based
may be added to sub-parts of the code.
Now, in section 11, we reach, as Richard told you in his opening, the next major area of
change under the license. These two paragraphs point in different directions and I want
to take them separately.
The first paragraph is simply a grant of patent claims that every distributor, licensor,
modifier makes in the act of propagation that allows others to receive copies.
"When you distribute a covered work, you grant a patent license to the recipient,
and to anyone that receives any version of the work, permitting, for any and all
versions of the covered work, all activities allowed or contemplated [...] This patent
license is non-exclusive, royalty-free and worldwide, and covers all patent claims you
control or have the right to sublicense, at the time you distribute the covered work or
in the future, that would be infringed or violated by the covered work or any reasonably
contemplated use of the covered work."
GPL version 2 depended on the implicit patent license in US patent law which is assumed to
burden any manufacturer who distributes any product practising its own claims. That
implicit patent license, in US law, had the protection of obscurity, and we appreciated
that. Unfortunately, we can no longer afford any obscurity with respect to patents and it
was a creature of US patent law, absent in most of the World's patent systems, and
actively disclaimed by some. It was therefore clear to us that a deliberate and explicit
grant of patent rights would be necessary in the license, and this is it.
[1h 01m 51s]
Those who have fun making patent licenses -- a sub-group of a sub-group of a sub-group in
this room -- may be able to improve on that one, and we certainly encourage the attempt.
The last sentence is a different kettle of fish altogether.
Here, we face a problem that we all, or at least those of us steeped in the patent problem
as it presently exists, know is there but which everybody has been reluctant to deal with
and we now serve notice that something must be done.
"If you distribute a covered work knowingly relying on a patent license, you must
act to shield downstream users against the possible patent infringement claims from
which your license protects you."
This is not about restrictions upon you put by that patent license. That remains covered
by the, used to be section 7, now section 12, that I'm about to show you. This is not
about what happens if your license contains terms incompatible with GPL, that's a separate
question. This question is: what to do to prevent patent distributors from in-succinctly
putting their customers or beneficiaries in a position of a danger from which they
themselves are exempt by non-sublicenseable licenses.
We recognise that for parties who have extensive portfolios that are extensively
cross-licensed, what we are saying here for the first time creates questions concerning
their cross-licenses in relation to their distribution.
We recognise also that to say that you must "act to shield" is not explicit
enough. We recognise that this is a very hard problem and though we have worked long at
it we have no unique solution to offer you, even as a beginning for conversation.
In this coming year, those of us within this group who care about this problem, who are
affected by the question, who have deep knowledge of this issue, who bear many patents as
a badge of ...well, whatever it is that bearing many patents is a badge of, will have to
work at it together, but we believe that the community must now face that question: how to
prevent people from being deliberately endangered by those who are not suffering with them
a common fate.
Note that the words are "if you knowingly rely on a patent license". We are not
speaking about what happens if you have many 10s of thousands of patents and cross-license
for many 100s of thousands more and have no idea whether a particular claim that you may
have cross-licensed might read on some code you might be distributing.
[1h 05m 12s]
And the question of what constitutes reliance on a license is also open for discussion but
the basic principal is one we believe we must now deal with, that parties should act with
recognition of the danger that patents pose to their customers, their colleagues, their
distributees, and that we should demand of people that they affirmatively act to do what
they can as part of a community to constrain the harm that patents are doing to that
community at large.
The Patrick Henry provision:
"12. Liberty or Death for the Program.
If conditions are imposed on you (whether by court order, agreement or otherwise)
that contradict the conditions of this License, they do not excuse you from the
conditions of this License."
We always thought that was pretty obvious and straight forward but it's implications
aren't quite so simple.
"If you cannot distribute the Program, or other covered work, so as to satisfy
simultaneously your obligations under this License and any other pertinent obligations,
then as a consequence you may not distribute it at all."
Again, we always thought that this was straight forward. We wish to point out, both in
that language and in the illustration, that an agreement which imposes obligations on you,
like a court order or other judgement, raises the problem which we used to call a section 7
problem and we shall now find ourselves calling a section 12 problem, ah, raises a section
12 problem because those condition because those conditions are imposed on you. Whether
you have self-imposed them or they have been externally imposed, it's the fact that you
have conflicting obligations that prevents you from distributing. It's not a punishment,
it's the observations of a fact. It's not good enough to say "I have to violate the
license", you just can't.
This has always been seen as being about the patent problem, and in some sense it is. It
wasn't the only way you could get into section 12 trouble, but it was the way which was
most commonly understood in the course of the last few years as the patent problem became
ever more severe.
[1h 07m 45s]
However, there were also cases in recent years where people seemed to want to use section
7 as a device of explosion -- an improvised explosive device if you please -- inside the
GPL. Some people seemed to have come to the conclusion that merely by yelling
"patent", or by offering a license incompatible with GPL, that they
could somehow prevent GPL'd distribution of works. We knew that that was bogus, and we
thought that it was important to make it clear in this license. If you impose conditions
on yourself, or if conditions are imposed on you, then this clause has effect. If you are
threatened, or if bloviation occurs in your neighbourhood, that has no effect, and we hope
it will continue to have no effect in the future.
Richard Stallman:
The need for this provision was underlined by a recent article talking about a GStreamer
plug-in which includes source code distributed under an X11 license, or so it says, but
then when you read further, you see that in fact, that's not the whole of the license,
there's a patent license involved also, and that in fact it's not free software at all.
And this was presented as a way of making things better for our community, so if you
believe that a non-free program can make things better for people, that it's a step
forward, as the author of the article I read did, then you might think what they did was
great. But if your goal is to defend user's freedom, to establish a community of freedom,
to spread the idea that freedom is important, then you cannot accept the idea that such a
thing is a positive step, it's a surrender, not an amelioration. And so, the liberty
"liberty or death" article of the GPL is just as important as it ever was.
[1h 10m 13]
Eben Moglen:
I have always thought of this as a "truth in labelling" provision, that code
labelled "GPL'd", and therefore free, had to be, in fact, what it said it was,
and that anybody who couldn't produce the freedom under which they were labelling the
software oughtn't to be able to apply the label, and if the only terms on which you could
distribute were by applying the label of freedom then you couldn't distribute at all.
But whether it is or is not about truth in labelling, it is, as Richard said, about
protecting liberty, and therefore I withdraw my dissent from the title.
Richard Stallman:
The reason I wouldn't call it "truth in labelling", is that it applies to people
who are redistributing software. If you could choose any label, and we only insisted
"well, don't call it GPL covered", that would be truth in labelling.
That supposedly X11 licensed program that isn't really, that's an example of dishonest
labelling, but since we say that modified versions of GPL-covered programs can only be
released under the GPL, we're not offering them the option to label it differently, so we
shouldn't describe this as "truth in labelling".
Eben Moglen:
Now you know how we have spent September, October, November, and December of 2005, though
it was noisier sometimes.
[laughter]
GPL version 2 contained in section 8 a provision concerning geographical limitation. In
1991, encryption regulation in the United States had not yet given away to reason and
there were many reasons to think, including the looming patent problem, that it might be
necessary to permit licensors of GPL'd code to rule certain parts of the Earth out while
still distributing under GPL in other places.
[1h 12m 15s]
There was some very limited use of section 8, but we believe that it is not necessary to
include in the license, and we have included it in the current discussion draft of version
3 as a section slated for removal. Unless, in the coming year's conversation, parties can
show reason for why it ought to remain in the license, we propose to remove it from GPL3.
We have not altered the revision clause of GPL, but I would like to remind you of it
because it bears closely on what will happen at the other end of the conversation we are
about to undertake. We have said in GPL2, as we say in the current draft of GPL3, that
FSF:
"may publish revised and/or new versions of the GNU General Public License from
time to time. Such new versions will be similar in spirit to the present version, but
may differ in detail to address new problems or concerns."
A statement in GPL2 which we believe the draft we submit for your consideration and
discussion today fully bears out.
[1h 13m 35s]
Under the effective provision following, it will be possible automatically to reversion
each "GPLv2 or any later version" program for any party who modifies or
redistributes the code after the effective date of GPL3.
Some projects have chosen to distribute code under GPLv2 only, and those projects will
make a direct and deliberate decision whether or not to relicense their code under GPL
version 3.
We have no power over those projects decision making though we hope that by making a
better license, they will be convinced that it is wise to change versions.
There are many projects that are "GPLv2 only", though there are comparatively
few of significance in current commercial and non-commercial widespread use, but for those
developers, some present here and some not present here today we are after all in the
position of offering a license.
For all the code, the vast bulk of GPL'd code, which was released under "version 2 or
any later version", what we do in the course of our conversation leading to adoption
in the license will involve automatic reversioning. Decentralised, in every hand which
redistributes, or modifies and redistributes, code.
I remind you of this in order to remind you that most of the version transition at the
other end of our process will be smooth, quick, and automatic. And some projects, in
which some developers here, and many developers elsewhere around the world participate,
will make a relicensing decision of a kind more traditionally associated with how
copyright licenses are changed.
We will interact with every such developer who cares to come into the process to discuss
his, her, or its needs and desires for the license. And we wish them the best in making
their decision, but we are not attempting to coerce any decision by any such project.
They reserve choice, waiting to see what the future held, and we will simply go about the
business of making the best license that we can.
[1h 16m 19s]
Richard Stallman:
I do want to say, though, that projects that do that, that distribute only under a certain
version of the GPL, should take steps to make sure they're really in a position to
consider moving to the next version. If they don't do that, they're likely to be stuck,
and that would be rather unfortunate.
Eben Moglen:
The warranty exclusions that were in GPL2 have not been changed saving one way: I took
them out of all uppercase.
[laughter]
I've wanted to do that for a very long time. I've wanted to do that for a very long time
because no lawyer on Earth knows what they aren't in mixed case and everybody seems to
think that everybody else knows and that he's the only one that doesn't know and he was
absent that day in law school.
Sometimes, you just gotta do what you gotta do. Of course, it's also the case that most
lawyers in the world don't live in the United States, or even in the United States and the
UK, and they don't know about the mill wheel that broke and the shaft that wasn't
delivered, and they didn't understand what we were talking about anyway and we have tried
to address that problem in a different way, but at least we're no longer shouting.
Richard Stallman:
Is it really true that most lawyers don't live in the US? I thought we had far more
lawyers per capita.
Eben Moglen:
Richard has met so many lawyers in the United States that it hasn't actually sunk in yet
that even that is only a small part of all the lawyers there are.
[1h 18m 05s]
We have added one last statement to the collection of statements about warranty. There
were no ABS braking systems containing embedded free software in 1991, nobody was running
railroad trains or flying airplanes with guidance systems with embedded GPL software in
them and the question of use of freely modifiable software in safety critical applications
was not then on our minds.
It is now necessary, I fear, to disclaim one additional matter with respect to liability,
and we assume that those who do provide free software under GPL in safety critical systems
will exercise their right to add a warranty for a fee as provided for by the license, but
as-received, GPL software is not warranted to perform correctly in conditions where
correct performance is necessary to save lives.
[end of slides, giving conclusion]
That's a quick run through of the text of this license. You may think to yourself "it
should have been shorter". "how could it have taken 28 slides?"
The answer is, protecting freedom is hard work. We know, we've been doing it a long time,
and it's not as simple as it looks at the beginning. We share with you the wish that the
license were shorter, and we've got a year to figure out how to do it. But I will tell
you this: that the requirement that you know what the consequences are of what you do and
that you can verify, as best humanly possible, that the unintended consequences won't wear
away what you had in mind have worn very heavily on us.
We've spent hours marching up and down and waving chalk and arms and bellowing in order to
keep bad things from happening with consequences that somebody hadn't foreseen.
I look forward to a lot of conversations with a lot of people who have a shorter GPL3 in
their back pockets and want me to read how neatly they got it to fit on the back of a
matchbook.
I look forward to it in much the same way that those patent office examiners look forward
to the next perpetual motion machine that wanders in. I don't want to declare that it
can't be true, there's no second law of thermodynamics that says this is the shortest
possible GPL3, but I fear that doing it short and sweet, though many people will be
itching to try, as early as lunchtime, is tougher than it looks.
[1h 20m 58s]
We look forward to hearing that we can do what we have done in fewer words, or even that
something we have done could be done more simply and just as safely, but safety first has
to be our goal, and we believe that the complexity incident to the license is the
complexity necessary to achieve safety.
Richard Stallman:
By the way, I don't think we were using any chalk. We were using computers to write
things down.
Eben Moglen:
Yes, I was using the chalk after you went home at night. Sometimes I had ...chew it.
Richard Stallman:
Did you eat it?
Eben Moglen:
You see how it is. There was chalk involved, he just wasn't around for it.
Yeh, it was curing my indigestion actually.
Some rumour necessarily flew while we were working. Secrecy was not our goal for it's own
sake. I'm glad that we got here without leaks. We needed quiet to hear ourselves think.
But it wasn't to exclude anybody. It isn't that the hard work's been done and now it's
over and there's nothing to be done but clean up the cupcake crumbs.
We've got a lot of work to do. The work we have to do is the work of collaborating. It's
"many eyes make bugs shallow", it's "new ideas bring new opportunities, new
applications, and new promises". This is free software we are making.
We wanted to start the conversation in the right place. To pitch the conversation on
ground we knew was safe and informative to avoid unnecessary disputes about matters that
we didn't think in the end would be realistic to put in the license and to be flexible
where flexibility would be desirable from the outset.
We weren't trying to be argued into flexibility, we were trying to engineer flexibility in
where it could safely be used from the beginning. We believe that by enhancing the
licenses compatibility with other licenses, from the outset, in this draft, we eliminate
the need for contestation over the One Right Way where there is no one right way.
[1h 23m 15s]
And we believe that by not promising more in certain areas than a license-giving mission
can deliver, as for example by not resting too much hope on patent retaliation to cure the
patent mess, that we avoid breaking our fundamental promise to users that the license
offers them a freedom which is real. Not nominal, not merely a promise, but something on
which the system in which were are all a part can really deliver for them.
We hope that everyone will approach the forthcoming conversation in the same spirit. We
don't need to foreclose options where compatibility will do. We don't need to insist on
unique answers where freedom doesn't require a uniqueness of outcome. We are still in the
business of giving permission, not in the business of constraining outcomes.
No one on Earth, not Richard, not me, not any of you in this audience could have foreseen
accurately in 1991 all of the ways in that free software would be in use in 2006, nor all
the business models, research projects, firms, aggregations, distributions, live CDs and
all the rest that were coming about.
The flexibility of the license made it possible to do what was done, and the strength of
copyleft kept it from all winding up in some one guy's pocket.
We need to preserve both those characteristics for the next few years. It is just as
important to remain flexible because everything that can be done with computers is being
done with free software and more things can be done all the time and it is just as
important to make sure that freedom doesn't wind up in anybody's sack, because the sacks
are still there, the hunters are still hunting, the idea that every device on earth ought
to run all the same thing and "i ought to own it" is still an idea in far too
many brains. And freedom still means what it meant before: the right to use, the right to
copy, the right to modify, and the right to share.
[1h 25m 45s]
We think that we have put the conversation where it ought to start. We think that we're
getting off on the right foot, we think we've put the issues out where we can see them,
but we are sure that there are issues we haven't seen. So the process that begins after
this conference is a process of illiciting comments, and making issues, and finding the
arguments, and resolving the issues with opinions based on reasons.
I'll talk, this afternoon, in more detail about the process itself and how all of us, in
committees, out of committees, on websites, in our follow-up international conferences,
can participate in those activities. Making comments, finding issues, evolving arguments,
and assessing reasons given for outcomes. But right now, what I want to say is I'm really
glad it's all about to be your problem.
[laughter]
There's been a lot of trying to make it your problem while we weren't telling you what we
were up to. There's been a lot of figuring out how to make a process and how to make a
discussion draft that would maximise your power to contribute.
I take that seriously, as I know Richard does, as the fulfilment of the commitment in GPL2
that the licenses to come would obey the same spirit. That word, "spirit",
appears once in the license and about the spirit of the license and I think it's
appropriate to close this presentation by reminding ourselves of what that spirit is.
It's the spirit of tinkering. It's the spirit of hacking. It's the spirit of making the
unexpected invention out of the materials lying around to hand.
"You mean you can make a resonating antenna for wifi from a potato crisp tin?"
Yes.
"You mean you can make freedom from a copyright condition that's not a
contract?" Yes.
[1h 28m 09s]
What we have is an achievement that we all made over a decade and a half. What we do now
is to keep it safe, to make it bigger, to add more people with more expertise -- and I
don't know how Richard feels about it, but I will say right now at the outset -- so we
make it possible for the Alte Cockers to retire and somebody else to do this next time
around.
With that, I want to close the formal part of the presentation. I know there will be more
questions than I can take, but I'd like to take a few.
Richard Stallman:
I'd like to say a couple of words first. When I give a short speech I tend to forget some
points. I'd like to apologise to people for the difficulties occasioned by holding this
event in the United States. I'm sure for some of you here this caused a certain amount of
nastiness, and for others a fair amount of inconvenience. Some people refused to even try
to come.
Someone said that the nasty treatment he expected wouldn't end with going to the US
consulate. Some people tried to come here and couldn't. One was not allowed onto the
plane. Something was inadequate about his passport, he was told by the airline.
Others got no response from the US consulates, even though fees were paid to expedite
their visas.
We looked at the possibility of holding the event elsewhere, or of holding parallel
events, seeing if we could arrange communication between them. It didn't seem to be
possible and ultimately, we decided to hold it here, and that means all we can do is
apologise.
[The question and answers session is begun]
Eben Moglen:
Who wants the honour of throwing the first tomato.
[laughter]
[1h 30m 26s]
...