GPLv3 logo

Transcript of Richard Stallman at the 5th international GPLv3 conference; 21st November 2006

See our GPLv3 project page for information on how to participate. And you may be interested in our list of transcripts on GPLv3 and free software licences.

The following is a transcript of Richard Stallman's presentation made at the fifth international GPLv3 conference, organised by FSIJ and AIST in Tokyo, Japan. From the same event, there is also a transcript Ciaran O'Riordan's talk.

Transcription of this presentation was undertaken by Ciarán O'Riordan. Please support work such as this by donating to FSFE, joining the Fellowship of FSFE, and by encouraging others to do so.

The speech was made in English. See also:

Presentation sections

  1. Why does the licence need updating?
  2. About versions 1 and 2
  3. Internationalisation
  4. Licence compatibility
  5. Preventing tivoisation
  6. Tivoisation and Treacherous Computing
  7. General comments on Treacherous Computing
  8. Software patents
  9. The Novell and Microsoft example
  10. Internet distribution instead of mail order
  11. Licence termination
  12. Narrow patent retaliation
  13. Undermining the DMCA and EUCD

The presentation

(go to menu) [Section: Why does the licence need updating?]

Welcome to our event. Since you've already heard from Niibe all the basic things that I would usually talk about in my speeches, I'm going to start right in on GPL version three.

GPL version two was developed in 1991. The community was very different then. It was much smaller. There were probably hundreds of Free Software packages instead of tens of thousands. And there was no free operating system.

As a result, the amount of pressure that people who were effectively our adversaries and wanted to cheat were placing on us and placing on our licences was much less. Since that time, Free Software has become far more popular with tens of millions of users.

There are two basically free operating systems: GNU/Linux and BSD. Unfortunately, nearly all the versions that people use include non-Free Software, but basically they are free systems.

And there are now many companies that are looking for loopholes, trying to defeat the goal of the GNU GPL which is to ensure all users freedom. The reason I wrote the GNU GPL was to make sure that when I release a program as Free Software, all of you get the four freedoms.

So the point is, I wont be satisfied if only the users who get the program from me have freedom. I want to make sure that no matter how the program reaches you, whether it has been changed or not, all of you get freedom. The basic idea of the GNU GPL is to establish the four freedoms as inalienable rights, that is, rights that nobody can lose, except through wrong doing. You can't sell them. We're not going to have any selling yourself into slavery in our community of freedom.

(go to menu) [Section: About versions 1 and 2]

Back in 1991, we had seen two ways of trying to make software non-free. One was to release only a binary and not let users have the source code. And the other was to place restrictive licence conditions on it. These had been seen in the 1980s, so even the earliest GNU licences were designed to prevent that kind of abuse. They required distribution of source code and they say you can't add any other licence terms. You must pass on the program, including any changes of yours, under the exact same licence under which you got it.

[Time: 237 secs]

Around 1990, I found out about the danger of software patents. So in GPL version 2, we developed the section that we called "liberty or death for the program", although informally, because in GPL version 2 the sections don't have titles. This said that if you agree to any sort of patent licence that would limit the rights that your users would get, then you couldn't distribute the program at all.

Now, what's the logic here? The idea is that patent holders would try to corrupt individual distributors of Free Software, trying to get them to sign specific deals to pay for permission to do so, and therefore we faced the danger that patent holders would divide our community and that this would make our community weak.

In a country that is stupid enough to allow software patents, which I'm sad to say includes your country [Japan] and includes my country [USA], there's nothing we can do to prevent the danger that patent holders will use their patents to destroy Free Software, to drive it underground.

But, there's an even worse thing they might be able to do, and that is make the software effectively non-free. If they could create a situation where individual users or individual distributors pay for permission, the software is effectively non-free. The decision I made was that we would try to prevent that danger. That danger is worse for two reasons. First, because a proprietary program which takes away a users' freedom is worse than no program at all. And second because that offers the patent holder a way to make money and would be more tempting than merely to cause destruction.

So, Section 7 of GPL version 2 was designed to prevent that. And that was the main change in GPL version 2. However, today we've seen several more kinds of threats, as well as other issues that call for changes. The basic idea of GPL version 3 is unchanged: to protect the four freedoms for all users, but the details have to adapt to today's circumstances.

This means that the changes in GPL version 3 do not have any common theme. They're all addressed to details, to specifics. Some very important, some secondary, but every change is in some specific detail because there's no change in the spirit.

So let me go through the most important of these changes.

(go to menu) [Section: Internationalisation]

One of them is better internationalisation. I developed the earlier versions of the GPL working with a lawyer, but this lawyer was not an expert on the laws of other countries. We simply based our inputs on knowing that copyright law is mostly similar around the World. However, now we've made a large effort to consult lawyers from various different countries, to make sure that we will get similar results in all countries. To make this happen, we have eliminated certain words such as "distribute", from the GPL version 3. It turns out that various countries have different definitions for the word "distribute". So we have tried to avoid that word. We coined a couple of new terms, in order to express ourselves better.

For instance, there's the term "propagate" which loosely means copying, but we've given it a precise definition that is meant to buffer it against variations in copyright law between countries. Another term called "convey" which loosely means distributing copies, but again, we've defined it in a way buffers it against international variations. So the bulk of the GPL gives conditions for propagating and conveying the program.

(go to menu) [Section: Licence compatibility]

Another area of change has to do with compatibility with other licences. Back in the early 90s, there were only a few different Free Software licences, and the ones people generally used were either the GNU GPL, or simple permissive licences like the X11 licence and the original BSD licence. The X11 licence was compatible with the GPL. You could merge code with the GPL version 1 or 2 with code under the X11 licence. The original BSD licence is incompatible because of the obnoxious advertising clause, but in the 90s we convinced the University of California to relicense all of BSD under the revised BSD licence, which gets rid of the advertising clause, and that is compatible with GPL version 2.

By the way, you should never use the term "BSD-style licensing" because of the ambiguity. The difference between these two licences is quite important. One is compatible with the GPL and the other is not. It's very important to call people's attention to the difference between those two licences. However, starting in 1999 I believe, with Mozilla, many other Free Software licences have been developed, most of which are not compatible with the GPL. GPL version 3 is designed to be compatible with two important licences: the Apache licence and the Eclipse licence. It will be possible to merge code under those licences into GPL3 covered software once the GPL version 3 is really out.

[Time: 752 secs]

And while we were at it, we decided to formalise and clearly explain what it means to give additional permission as a special exception. That's a practice that we have been doing for many years. The simple library that comes with GCC that does very low level tasks, supporting certain language constructs, has a special exception on it saying basically that you can link it into almost anything. But there was some confusion about what it means to have such an exception so we decided to spell it out, to make it clear that when you give additional permission, people can remove that additional permission, because really what you have done is you have made two separate statements: (A) you can distribute this under the GPL, and (B) I also give you permission for this and that. It follows that anyone who is redistributing that software or distributing modified versions can pass it along under the GPL or he can reconfirm the other permission, or he can do both. So, if the other permission just says you can do one little extra thing, it makes no sense by itself. That would be useless. So basically, you've got to keep the GPL, but you either keep the added provision or not. So in GPL version 3 this is spelled out.

We also explain that there are a few kinds of additional requirements that can appear on code that gets included or merged into the GPL covered program. Now, some of these are not new. There are essential trivial requirements in the X11 licence and the revised BSD licence, and because they're trivial, our interpretation is that there is no conflict with the GPL, but we decided to make that completely explicit. But in addition, there are some substantive requirements that are not in the GPL that we will now allow to be added. This is how we achieve compatibility with the Apache licence and the Eclipse licence. After all, the reason they are incompatible with GPL version 2 is that they have requirements that are not in GPL version 2. Those requirements are not part of GPL version 3 either, but GPL version 3 explicitly says that you are allowed to add those kinds of requirements. That is how GPLv3 will be compatible with those licences, because it specifically permits a limited set of additional requirements which include the requirements in those licences.

[Time: 986 secs]

While we were doing this we decided to try to put an end to a misuse of the GPL. You may occasionally see a program which says "This program is released under the GNU GPL but you're not allowed to use it commercially", or some other attempt to add another requirement. That's actually self-contradictory and its meaning is ambiguous, so nobody can be sure what will happen if a judge looks at that. After all, GPL version 2 says you can release a modified version under GPL version 2. So if you take this program with its inconsistent licence and you release a modified version, what licence are you supposed to use? You could argue for two different possibilities.

We can't stop people making their software under licences that are more restrictive than the GPL, we can't stop them from releasing non-Free Software, but we can try to prevent them from doing so in a misleading and self-contradictory way, after all, when the program says GPL version 2 but you can't use it commercially, that's not really released under GPL version 2, and it's not Free Software, and if you tried to combine that with code that really is released under GPL version 2, you would be violating GPL2. Because this inconsistent licence starts out by saying "GPL version 2", people are very likely to be mislead. They may think it's available under GPL version 2, they may think they're allowed to combine these modules. We want to get rid of this confusing practice. And therefore we've stated that if you see a problem that states GPL version 3 as its licence, but has additional requirements not explicitly permitted in section 7 then you're entitled to remove them. We hope that this will convince the people that want to use more restrictive licences that they should do it in an unambiguous way. That is, they should take the text, edit it, and make their own licence, which might be free or might not, depending on the details, but at least it won't be the GNU GPL, so people won't get confused.

[Time: 1169 secs]

(go to menu) [Section: Preventing tivoisation]

Another major change is a response to a new method of trying to deprive the users of freedom. In broad terms we refer to this as tivoisation. It's the practice of designing hardware so that a modified version cannot function properly. Now, I do not mean by this the fact that when you modify it you might break it. Of course that's true. But of course you also might modify it carefully and avoid making a mistake and then you have not broken the program, you would expect it to function. But tivoised machines will not allow any modified version to function correctly even if you have done your modification properly.

For instance, the Tivo itself is the prototype of tivoisation. The Tivo contains a small GNU/Linux operating system, thus, several programs under the GNU GPL. And, as far as I know, the Tivo company does obey GPL version 2. They provide the users with source code and the users can then modify it and compile it and then install it in the Tivo. That's where the trouble begins because the Tivo will not run modified versions, the Tivo contains hardware designed to detect that the software has been changed and shuts down. So, regardless of the details of your modification, your modified version will not run in your Tivo.

(go to menu) [Section: Tivoisation and Treacherous Computing]

This is the basic method of tivoisation but there are more subtle methods which involve Treacherous Computing. Treacherous Computing is the term we use to describe a practice of designing people's computers so that the users can't control them. In fact, the perpetrators of this scheme don't want you to have real computers. What is a computer, after all? A computer is a universal programmable machine, one that can be programmed to carry out any computation, but those machines are designed so that there are computations you can't make them do. They're designed not to be real computers. Specifically, they are designed so that data or websites can be set up to communicate only with particular software and set up to make it impossible for any other program to communicate with that data or those websites.

[Time: 1403 secs]

One of the ways this works is through remote attestation. The idea is that a website will be able to check what software is running on your computer, and if you have changed anything, the website will refuse to talk to your computer. In other words, you can make modified software, you can install it on your computer, but, that modified software is forbidden even to try to communicate with the website in the same way that the other version would do.

Microsoft has been working on a scheme for years, which might be part of Windows Vista, which involves encrypting files in such a way that only a particular program can possibly decrypt them. Even if you know the algorithm, the hardware is supposed to make it impossible for you to write another program that will decrypt those files.

Thus, once again, you might be allowed in theory to modify the program, but in practice you would have no chance in making a modified version that can even try to operate on the same data as the version you got.

These are all ways of effectively making our software non-free. GPL version 3 is designed to block them all. The requirement is that users must be able to get whatever is necessary so that they can authorise their modified versions to function in the same machine such that they can succeed in operating on the same data, and talking to the same networks.

[Time: 1550 secs]

In the current discussion draft this is done by defining those materials as part of the corresponding source, however, we've decided to move that into section 6 which authorises distribution of binaries. And instead of calling those materials part of the source, we'll simply state that making them available is a condition for permission to distribute the binaries.

(go to menu) [Section: General comments on Treacherous Computing]

Treacherous Computing is an instance of a very dangerous phenomenon, namely a conspiracy of companies to restrict the public - to restrict the public's access to technology. Such conspiracies ought to be a crime. The executives of those companies should be tried, and if convicted, sent to prison for conspiring to restrict the public's access to technology. However, that sort of policy would have required leaders that believe in government of the people, by the people, for the people. What we have today is government of the people, by the flunkies, for the corporations.

Far from trying to protect us from such conspiracies, our governments today show how undemocratic they are by supporting the companies against us, supporting the conspiracies against us. Laws that prohibit circumvention of these conspiracies essentially deputise the conspiracies as police men, giving them power over the citizens. Every government that supports such a law shows that it is on the side of publishers, on the side of Hollywood, on the side of the record companies, against its own citizens. It has become an arm of occupation.

Nonetheless, we are going to fight against tivoisation and Treacherous Computing with all of our abilities.

(go to menu) [Section: Software patents]

Another threat to Free Software is from software patents. GPL2's section 7, which is now section 12, deals with one of these threats: the threat of a distributor signing a contract that gives it the patent licence for the software but in a limited way.

A few years ago, I realised that there were other ways software patents might be used to make software non-free, so we're designing GPL version 3 to block them too. For instance, one issue is, what if the developer of the software has a patent on it, or rather, has a patent on some particular computational technique used in the program. I made a terrible mistake when I said "has a patent on the program", that's not how patents work. I know better, and yet I still made this mistake. There's no such thing as a patent on a program, software patents don't work that way. Every software patent is a monopoly on a certain kind of technical functionality or method. A program violates the patent if anywhere inside the program it implements that method or that functionality. The result is that one program can infringe any number of patents at the same time.

[See note hereafter] Two years ago, a thorough study found that the kernel Linux infringed 283 different software patents, and that's just in the US. Of course, by now the number is probably different and might be higher.

NOTE from Richard Stallman: I made a mistake when I said Linux infringes 283 software patents. In fact, Ravicher's study found 283 US software patents that look like they might prohibit part of the code of Linux. Whether those patents are actually valid, nobody knows.

Linux is one of many large programs in the GNU/Linux system. Many other programs, free or not, are also large, and large programs generally combine thousands of ideas.

I expect that a similar study of any large program, free or non-free, whether written by me or by Microsoft or anyone else, would similarly find hundreds of patents that threaten to prohibit it. In other words, with software patents, every developer of large programs faces many threats. The solution is: don't allow software patents.


[Time: 1885 secs]

That is the only example of this kind of study, as far as I know. But probably any large program infringes hundreds of different patents at once. What if a distributor of the program has a patent on some computation inside the program and distributes the program to others, and when they try to redistribute, the patent holder says "We're going to sue you for patent infringement if you try". We didn't think this was an issue because in the US, when that company distributes the software under the GPL, they're telling people "We have no objections if you do what the GPL says you can do" and so if they tried to sue those same people for patent infringement later, they would lose.

However, we found out that this is not true all around the World. So GPL version 3 carries an explicit patent licence which is following the lead of the Mozilla Public License. I think that was the first one which contained an explicit patent licence. Basically, all this says is that none of the people who distributed the program on it's path to reaching you can turn around and sue you for patent infringement on the patents that covered the code that passed through their hands.

This is not as broad as it could possibly be, but it seems right because it's pretty much the same as the implicit patent licence that US law gives people.

(go to menu) [Section: The Novell and Microsoft example]

However, there's another way of using software patents to threaten the users which we have just seen an example of. That is, the Novell-Microsoft deal. What has happened is, Microsoft has not given Novell a patent licence, and thus, section 7 of GPL version 2 does not come into play. Instead, Microsoft offered a patent licence that is rather limited to Novell's customers alone.

It turns out that perhaps it's a good thing that Microsoft did this now, because we discovered that the text we had written for GPL version 3 would not have blocked this, but it's not too late and we're going to make sure that when GPL version 3 really comes out it will block such deals. We were already concerned about possibilities like this, namely, the possibility that a distributor might receive a patent licence which did not explicitly impose limits on downstream recipients but simply failed to protect them.

What if one company pays Microsoft for a patent licence where Microsoft says "Alright, we won't sue you, but we're just not making any promises about your customers if they redistribute it". We had already written a downstream shielding provision into GPL version 3 saying that if you convey the program, and you are benefitting from a patent licence that is not available, that does not extend to the downstream users, then you have to do something to shield them.

This is, it turns out, inadequate in two ways. First of all, "shielding them" is vague. We're replacing that with a specific list of methods, and second, once again it assumes that the distributor has received a patent licence, so the Microsoft/Novell deal cunningly does not give Novell the patent licence, only Novell's customers.

Well, now that we have seen this possibility, we're not going to have trouble drafting the language that will block it off. We're going to say not just that if you receive the patent licence, but if you have arranged any sort of patent licensing that is prejudicial among the downstream recipients, that that's not allowed. That you have to make sure that the downstream recipients fully get the freedoms that they're supposed to have. The precise words, we haven't figured out yet. That's what Eben Moglen is working on now.

[Time: 2249 secs - end of part I]

(go to menu) [Section: Internet distribution instead of mail order]

So these are the major changes. Some minor changes are also important. For instance, we've decided to permit distributing binaries and making the source code available only on the network. GPL version 2 says if you distribute a binary without source code, you have to offer the source code by mail order. This was a specific decision which I made because in 1991, most people's network connections were too slow for it to be feasible to download large amounts of source code over the 'net. I believed at the time, and I still believe that at that time, to allow someone to distribute binaries, and then to make the source code available only on the 'net would have made a large number of users completely unable, in practice, to get the source code.

However, now there are services where you can pay a fairly small amount of money to them, and they will download a CD-ROM's worth of material and mail it to you anywhere in the World. As a result, I've concluded that we can make this change.

(go to menu) [Section: Licence termination]

Another important minor change has to do with termination when someone violates the licence. A GNU/Linux distribution today involves thousands of programs, and anyone who accidentally violates the licence, for instance, puts the wrong source code up, has, under GPL version 2, terminated his licences for everything. At that point, he has to go to all the copyright holders, and ask for permission to start distributing again, but that's basically impossible. You could never find all those developers, especially those who contributed fifteen years ago.

What we've decided to do is that if you stop your violation, then any given copyright holder has 60 days from that point to complain. This is a kind of statute of limitations. As long as you're continuing to violate the licence, any copyright holder is entitled to notify you you're violating the licence and once he notifies you he has the right to terminate the licence. But, if you stop violating, then the copyright holders have only 60 more days to notify you, and if they don't notify you and sixty days go by with no violations, then you're safe.

This means that if you accidentally violate the licence and you fix it, probably nobody's going to complain to you and 60 days will go by and you'll be ok. Or if a few copyright holders complain to you, then you just have to negotiate with them, and say "Look, it was an accident, I fixed it already and you see I'm trying to do the right thing, and will you please give me my distribution rights back", and they'll almost certainly say yes.

We're considering a further change in this direction that would say that a violation can cure itself if you're a first time violator and you correct your practices and a certain period of time goes by. We have to be careful in this though, because it's very important for GPL enforcement that the developer be able to get a preliminary injunction to stop distribution. So we're carefully studying the conditions for doing so in various countries, and if we can put in such a cure feature in a way that does not harm GPL enforcement then we will probably do so.

[Time: 308 secs, part II]

(go to menu) [Section: Narrow patent retaliation]

Another small change is a limited kind of patent retaliation. We're concerned with the use of software patents in yet another situation. There is a common practice where you get a GPL covered program and you modify it to do exactly what you want, and then you run it. And you might, say, run it privately in this way and anyone can do this, it's legitimate. But we're concerned with the danger that the company which does this might have a patent on some of the techniques that they put into their modifications, and then they might threaten others with patent law suits if they try to make similar modifications. So we put in a carefully designed provision that stops such a company from making further modifications to their software if they do this, which would mean that it would become unmaintainable, and thus it becomes a very risky business practice.

(go to menu) [Section: Undermining the DMCA and EUCD]

There's one other change that's worth mentioning, I think. That is section 3. Section 3 is designed to counter-attack against the laws where the government supports the conspiracies to restrict the public. This contains one part which is designed to address the Digital Millennium Copyright Act in the US, and another part which is aimed at the European Union Copyright Directive. These two laws do effectively the same thing, but they are written in different ways, and you have to take them on in different ways. The method that will work for the US doesn't work for Europe, and likewise isn't an inconvenience there, and the method that works for the EU Copyright Directive won't work for the US DMCA. If there's something we can do to extend this to some other countries, we'll be glad to do it, as long as we can be sure it doesn't cause trouble. We don't want to cause trouble over there [Richard points] while we help over here.

So, at this point, I guess I will ask for questions.

[Time: 578 secs]

(go to menu)
Q1: I have two questions. What are the differences between the definition of open-source software and the definition of Free Software, in your words?

Richard Stallman: Well, first of all, the principal difference between the Free Software movement and the open source activity is that open source is a development model and Free Software is a social movement. The term "open source" was coined to avoid ever mentioning ethical issues. Specifically the ethical issues which are the centre of the Free Software movement. We are fighting for freedom for ourselves and for you. We are campaigning for social solidarity. Freedom and social solidarity are our goals. Those are the goals of our social movement. Proprietary software is evil because it attacks freedom and social solidarity. When a program is proprietary, that means that the social system of its distribution and use is unethical. Proprietary software development harms society, it attacks society. It's a social problem. Our goal is to correct, to eliminate that social problem. We make all our software free because that's the only ethically legitimate way to release software and we aim to replace proprietary software with Free Software because proprietary software mistreats its users.

All of that is what the supporters of open source don't want to say. They don't even want to raise the issue, so they developed a way of talking about our software without mentioning the ethical deeper levels of the issue. That's why they talk about a development model.

They say that allowing users to change and redistribute software creates the possibility of using a certain development model and they say that this development model makes for more powerful and reliable software. Maybe they're right, but I think that's a secondary issue compared with our freedom and our social solidarity.

So if I am offered a choice between a proprietary program which is powerful and reliable and a free program which is not, I choose the free program because that I can do in freedom. I'd rather make some practical sacrifices to reject oppression.

But suppose you want both? Suppose you want freedom and solidarity, and you want powerful reliable software? How can you get it? You can't get that starting with the powerful, reliable, proprietary program because there is no way you can liberate that program. The only way you can get that, your ideal goal, is to start from the free program, technically inadequate as it may be, because you do have the option of improving it. That is the only path that can possibly ever get you to your ideal situation. Insist on freedom and make the program better.

Because of these basic philosophical differences, you will see different responses from open source supporters and Free Software activists in some situations. People have been able to overlook the difference because when it comes to working together on a Free Software project, it doesn't really matter what a person's philosophical beliefs are if he wants to contribute. For instance, in developing Free Software, when people ask to participate, we don't ask them whether you support Free Software or open source, or maybe neither. We don't need to ask them, we just say "Oh, you're welcome to participate, thank you for your work". People regardless of their views can join in the same Free Software project.

[Time: 900 secs, part II]

But consider, for instance, the proposal for "open source DRM". Because open source doesn't concern itself with the users freedom, open source supporters see no contradiction in supporting the use of their development model to make DRM software. So they say, if you let people redistribute and change the DRM software, you could make more powerful and reliable DRM software. Of course, it's intended to be used with tivoisation, so for the end user it will not be Free Software. The end user will not have freedom because the whole point of Digital Restrictions Management is to take away the users' freedom. Here, the philosophical difference really matters. If what you want is powerful reliable software, you might think that powerful, reliable DRM is a good thing. If what you want is to have freedom and to help everyone else have freedom, DRM is a bad thing and tivoisation is an attack on your freedom. And so we want all DRM software to be unreliable because we want it to be cracked. If someone is trying to restrict all of us, we don't want him to do a good job. Only fools would help him do a good job of subjugating us all.

GPL version 3 does not prohibit DRM as such. One of the basic principles of Free Software, part of freedom number 1, is that you should be free to change the software to do whatever you wish, and freedom 3 says you are free to distribute your modified version. GPL version 3 respects these principles. You will be allowed under GPL version 3, just as you are allowed under GPL version 2, to modify a free program by adding DRM restrictions and then distributing that to the public. However, you should also be free, when you receive that - that is a different "you" who is the user who receives that program - is supposed to be free to modify it again by turning off the restrictions.

In GPL version 3, we don't say that Sony can't put in DRM. What we do, is make sure you are free to take out the DRM.

You had a second question.

[Time: 1118 secs, part II]

Q1b: I'm concerned about the transition period from version 2 to version 3. You said that the MS/Novell deal will break version 3, but as far as I know, Linux will use version 2.

Richard Stallman: Linux is just one of many programs that uses the GPL.

Q1c: From the customers point of view. They will receive components that will use different copyright.

Richard Stallman: That's right. That's true already. Remember, the GNU/Linux system has programs with many different incompatible licences.

All GNU/Linux systems at this point include Mozilla, they all include TeX. Both of those programs have licences that are incompatible with GPL version 2 and with GPL version 3. Well, actually, Mozilla is also under one of the GNU licences, so that's not a good example, sorry. But Apache, every system includes Apache, and that has a licence which is incompatible with GPL version 2. It will be compatible with GPL version 3, but today it's incompatible. But this isn't a problem because these are different programs.

Q1d: So, you are saying, you don't see any specific problem at this moment?

Richard Stallman: There's no such thing as a transition period because we can't assume there there will be a time when everybody has moved to GPL version 3, maybe some projects will never move. But there's no difficulty in having some programs in the system under GPL2 and other programs under GPL3.

(go to menu)
Q2: Since the GPL is based on copyright law, how is it affected by recent actions by Creative Commons or Disney's attempts to extend copyright?

Richard Stallman: Creative Commons just develops copyright licences. Nothing that Creative Commons does has any effect on what the GNU GPL means. Some of the Creative Commons licences are usable for certain purposes, and some of them are so restrictive that they should never be used for anything, like the developing countries licence, and some of the sampling licences. They're bad. That's why I no longer support Creative Commons, but nonetheless, they're just developing a bunch of copyright licences. Lots of other people have written copyright licences too, and those don't change copyright law.

However, extending the length of time of copyright is very bad, but it also doesn't interfere with the meaning of any Free Software licence.

(go to menu)
Q3: When using GPL version 3, should we still write a copyright notice?

Richard Stallman: Yes, when you release Free Software, it's normally copyrighted, and therefore you should put a copyright notice on it, and then underneath the copyright notice you put a licence notice which says "You are permitted to use this material under the following licence". That's true for GPL version 2, and it's true for GPL version 3, and it's true for all the other Free Software licences.

(go to menu)
Q4: [Question asked in Japanese]

Richard Stallman: Eh, no. Basically, software patents obtained by children does not seem likely to be a large part of the danger of software patents. So I suspect it's a minor detail.

Q4b: No, no, no. [in Japanese]

Richard Stallman: Well, when the FSF asks for a copyright assignment, we ask if the developer is a minor, and if so we ask for the parents to sign their approval on it. But other developers, they should take some precautions about this, but we can't do it for them and we can't make them do it. However, I suspect it will not be a big problem unless Microsoft starts hunting them and bribing their parents.

Which I suppose it might try to do.

(go to menu)
Q5: I would like to hear more about the cure clause of GPL version 3.

Richard Stallman: Well, we don't have one yet, it's just a proposal we're thinking about, and if we can make it work, we might do it.

[Time: 1592 secs, part II]

Q5b: Actually I would like to hear about its reasoning, because it seems it might open a loophole...

Richard Stallman: No, you've misunderstood. What this means is, if you were distributing the software wrong, and thus violating the GPL but you know it and you stop, and you've never done it before, then after a certain time you would regain your right to distribute the program properly. But since this would only apply to the first violation, say with any given program, the hope is that we could design it so that you wouldn't be able to use this maliciously, but we're just investigating the idea. It may or it may not turn out to be workable. If we can't make it work in a way that doesn't create dangers, we won't do it.

Q5c: Actually, what I wanted to ask is where it came from, where did the idea for this clause come from?

Richard Stallman: I don't know where it came from. Perhaps some of the companies that are participating in some of our discussion groups suggested it, I don't remember. I don't think I ever knew precisely where, and if I did know, I forgot it because I didn't care.

[Time: 1702 secs, part II]

(go to menu)
Q6: If I wanted to violate the GPLv3, with this clause, I could start a company that violated it, and then terminate the company and start another one, and so forth.

Richard Stallman: I see. That's an interesting point. Well, it's conceivable that one could do that anyway. It's sort of hard to enforce against someone doing that. We have to find a way to enforce it against the person who started all these companies because in an ordinary enforcement action, you would enforce it against the entity that is doing the distribution. If that entity disappears and a new one starts up, it might be hard. But if they were all being done by one company, you could probably sue that company. We would say to the judge "look, it's really them, they're the ones who are really starting A company, and B, and C, and D". So we would get an injunction against the master, not the tentacles.

But again, we would simply have to make sure that for any kind of automatic cure, that it's smart enough, that it notices that this one company is doing all these different things.

(go to menu)
Q7: I'd like to know more about this term "use freely". In patent terminology, to use something freely means that as long as you pay the licence fees, then you can use it.

Richard Stallman: That's not Free Software. In any case, when I informally use terminology like "to use something freely", I am not referring to any country's patent law, and specifically, being free to do something means you don't have to pay for permission to do it. When we describe the four freedoms, when we say that freedom zero is the freedom to run the program as you wish, part of that is: you're not required to pay anyone for permission to run that program as you wish.

And, freedom 2 is the freedom to distribute copies of the program. That means you don't have to pay for permission to do so, you don't have to pay for each copy or negotiate with anybody. You're simply free outright to go and do it.

If there's a program that you're allowed to run only if you pay somebody, that's not Free Software. Therefore, the GNU GPL aims to make sure that nobody can create such a situation. If somebody can create a situation where people feel they must pay in order to be allowed to run a GPL covered program, then that is a flaw, a failing in the GPL and we are doing our best to make sure that can't happen.

(go to menu)
Q8: This social movement touches on many different disciplines and areas. Apart from software, do you see other movements with a similar spirit?

Richard Stallman: Well, the ideas of Free Software, I believe, extend to other kinds of works of authorship that serve functional practical purposes such as, for instance, recipes - which are, for the most part, free.

And, educational works such as text books and manuals, they should also be free. And reference works, like dictionaries and encyclopedias, so Wikipedia is an example of a free reference work, and there are several others, showing that we are making good progress in extending the idea of freedom to these other useful works.

More broadly, farmers in many countries are opposed to patents on crops, which deny them the freedom to copy their plants. This restriction is unjust in the same way that proprietary software is unjust. However, we should be careful not to try to simplify life down to just one issue. There are many ethical issues in life which are different, they are not isomorphic, they are not analogous. I don't believe that all the important ethical issues in life can be modelled on the Free Software movement.

At a very broad level, the biggest political battle today is democracy vs. the corporate masters of the World. Thus, free trade treaties are designed to transfer power from governments that can be democratic to businesses that never try to be democratic and therefore, free trade treaties are dangerous. I believe they should be abolished.

This does not mean I'm against international trade. International trade is beneficial for all the reasons that neo-liberal economists tell us, but they don't mention the price which we pay in loss of democracy. So I say that international trade is a useful thing to encourage to the extent we can do so and still preserving the strength of democracy. That means that today's free trade treaties have gone too far because they turn democracy into an empty shell.

Today, companies find it so easy to move their operations from one country to another that they make these countries compete to bow down to business which means that no country can really exercise democracy anymore. If the people in a country say "We want you to regulate business", perhaps to protect the environment, perhaps to protect public health, perhaps to protect the general standard of living, the politicians of the country respond "We don't dare do this because all the businesses will move some place else". Whatever methods of encouraging international trade we use, have to be designed so that they do not produce this result.

This is a very broad kind of struggle, and since the 90s, Free Software can be seen as being a part of the struggle, even though when we began the movement, that was before the age of these free trade treaties and the larger context into which our movement fits today didn't exist then.

Because fundamentally, this isn't about democracy vs. business. Fundamentally this is about making sure everyone's freedom and social solidarity is respected. It just happens that this fits into today's movement against business-dominated globalisation.

Interestingly, Free Software itself is globalisation. Many free programs have developers in several continents and are used in all the countries of the World, or pretty close. Free Software represents the globalisation of human knowledge and human cooperation. When people say they are against globalisation, they are simplifying things a bit. The issue there is not globalisation in an abstract sense, it's one specific kind of globalisation, namely the globalisation of business power.

Businesses should never have power, that conflicts with democracy, so business power is an injustice and if you globalise something that is bad, it becomes a bigger evil. But cooperation and developing and disseminating human knowledge is good. If you globalise something good, it becomes a bigger good, and that's what the Free Software movement does.

[Time: 2403 secs, part II ends]

(go to menu)
Q9: You mentioned that v3 will be compatible with Apache and Eclipse licences. Do you know any open source licences that will still be incompatible...

Richard Stallman: We're not working on open source, we're not interested in open source. By the way, some open source licences are not Free Software licences, the definition of open source came from the definition of Free Software but it followed a circuitous path, and it's written very differently and it's interpreted by different people, so they've drawn the lines in different places, so most of the open source licences are Free Software licences, but there are some licences that the OSI accepted that we consider unacceptably restrictive.

Therefore, basically we're not interested in open source at all. I ask you please not to refer to our work as open source. That would be mislabelling us with the slogan of a philosophy we disagree with. And therefore, if you wish to have discussions with us, please don't do so in a way that supposes that what we are talking about is open source because we will have to refuse to participate in that discussion. We are not going to accept the labelling of our work as open source, no matter what, so you have to use the term Free Software if you wish to discuss our work with us.

Q9b: Thank you for the correction.

Richard Stallman: So do you want to try again?


(go to menu)
Q10: Yes. Will there still be Free Software licences that are incompatible with v3?

Richard Stallman: Yes. There are some Free Software licences that will have certain kinds of requirements which are not totally unacceptable. That's why we consider them still to be Free Software licences, but, we're not willing to have those requirements come into GPL covered programs.

For instance, some programs say you must change the name if you modify it. Ah, we don't want that restriction coming into GPL covered code. Some Free Software licences have patent retaliation clauses that we consider unjust, for instance, Apple's says if you sue Apple for patent infringement, then you lose the right to distribute this software. Well, the reason we don't like that one is, suppose Apple sued you first, then you just counter-sue, in that case Apple committed the aggression and you are just defending yourself, so we don't want that kind of patent retaliation in GPL covered programs. We didn't consider it so bad as to make their licence non-free, but it's too far to allow into GPL covered programs.

And then are licences that are file-level copylefts. The Mozilla Public License was the first of these. File-level copylefts say "If you modify the files of this program, the modified versions of those same files must be under this same licence". Now, that's not as strong as the GPL. The GPL says if you modify the program, you're whole modified program must be under the GPL. Those file-level copylefts, or we might call them weak copylefts, permit the additional of separate files which are non-free. They don't really achieve the goal of copyleft, but because they made this requirement about the file, it's impossible to relicense that file under the GPL. So the GPL will always be incompatible with those file-level copyleft licences.

Then there's the bizarre licence of TeX, which is incompatible with itself.


The licence of TeX says "You can't modify this file, but you can distribute it with a change file" and then when TeX is built, it's built by patching the standard TeX source code using the change file. So, in effect, you can distribute any modified version in that way, that's how I convinced myself in 1984 that that was a Free Software licence. But if you have two programs under the TeX licence, you can't merge them because each one says: anything that contains this can only be distributed as a changefile from this. So you have two things tugging at each other, each one insisting on being the base. So the TeX licence is incompatible with itself, but it's a Free Software licence.

(go to menu)
Q11: You just discussed weak copyleft. My question is about the Lesser GPL. When you publish a weak licence, certain developers will choose it without a good reason. is an example.

Richard Stallman: I don't know why they did that, but at least it's Free Software.

Q11b: So, do you have any plan to provide some additional versions of the GPL?

Richard Stallman: Well, we have the GNU Lesser GPL, and we can't get rid of it. However, in conjunction with GPL version 3, the Lesser GPL will take a new form, it will take the form of GPL version 3 plus certain additional permissions. The Lesser GPL as it exists today, and it first came out some time around 1990, I believe, is written essentially from zero, and it says you can relicense under the GPL, which is what makes them compatible, but we decided to start from scratch and express the same permissions as a delta, starting from the GPL. That's the way the new version of the LGPL is going to work. It's going to say "You can use this under GNU GPL version 3 or later, and in addition we permit these things". So it's making use of section 7 of GPL version 3 which describes how to add additional permissions or, in certain cases, additional requirements. We can't get rid of it, even if we wanted to, but we don't want to. There are good reasons why certain libraries are released in that way.

(go to menu)
Q12: I'm wondering if you can talk briefly about the changes and what's happening with the GFDL and the GSFDL?

Richard Stallman: I don't remember them so well.


I'd have to refresh my memory. We decided to make something like the GNU Free Documentation License which doesn't have invariant sections or cover texts, and that's the GNU Simpler Free Documentation License. Anything that's under the GFDL and has no cover texts or invariant sections, you will be able to relicense under the SFDL.

Also, we utilised the concepts of "propagate" and "convey" to make them more internationalised. I think that that's basically what the changes are. I think there is also a provision for distributing small excerpts without having a copy of the licence accompany them, which is something people have asked for.

In general, we do not want to allow distributing a work with just a link to the licence, and the reason is, we don't know whether such links to licences are reliable over periods of decades, so our rule is: you have to provide the licence itself with the work.

We're trying to prevent the bad outcome which is that a person has a copy of the work and doesn't know what licence he can use it under. If you don't know what your freedoms are, it's almost as if you didn't have them. That's not a good outcome. However, we're going to permit this for those small excerpts because it causes too much of a practical problem otherwise.

(go to menu)
Q13: When using the GPL for a font, what happens to documents that use the font?

Richard Stallman: As far as I know, there is no problem using GPL version 2 or 3 for fonts. Now, you might want to state explicitly that you don't regard documents that have text in the font as being linked with the font, and let those documents be licensed in any way people wish.

You could put an exception, an additional permission on the font, saying that you don't insist on anything about the licensing of documents which use the font.

[Q&A session ends; applause]

Further information