GPLv3: The Story So Far
Ciarán O'Riordan
Free Software Foundation Europe
http://www.fsfeurope.org/
Who am I?
- I work for FSFE
- I mostly work on proposed EU laws
- My job is to help the community participate in setting
policy
- ...laws written by the EU, or licences written by FSF
- I'm a programmer, not a lawyer
Purpose
- Summarise what has happened
- Enable people to participate
- Document what's been learned
- ...to make a foundation for future discussions
Why this is important
- To make our life easier, we can:
- We can lobby, which takes years and moves inches
- We can use market power - but we're currently wasting that
- The legal system doesn't help us much, but it lets us
write our licences, so we should do that as best we
can
The Four Freedoms
- We want software users to be free to:
- Use the software, for any purpose
- Study the source code and make changes
- Redistribute the software
- Distributed modified versions
- in other words...
In other words...
- These four freedoms are necessary so that...
- People can have control of their computers
- Computer users can cooperate with each other as a
community
Licences
- Normally, copyright prohibits these things
- To pass on these freedoms, we write a note saying it's
ok
- A free software licence is a note that grants the four
freedoms
History: Version 1
- In the 80s there were two problems:
- Modification prevented: binaries without source
- Redistribution prohibited: copyright
- GPLv1 said source must be available
- and you have the four freedoms
- and that no redistributor can add any additional
restrictions
History: Version 2
- GPLv2 said if distributors are obliged to add restrictions,
they can't distribute
- So no one with power over a distributor can force a deal
with the distributor - not a court, not a patent holder
- Patents can still ruin a project, as always
- ...but patents cannot be used to ruin a project in a
profitable way ...which is no longer interesting
The GPL
- 50-80% of any GNU+Linux distro is GPL'd
- The current version, v2, was written in 1991
- It was written by RMS with a lawyer and a hundred
programmers
- It was written to be international, but it was written
on one continent
Why now?
- Laws: software patents, DMCA, EUCD
- Technology: DRM
- Evironment: We have opponents
- ...and positive...
- Us: We've tens of millions of users spanning every continent
- We have lawyers everywhere
Desirable qualities
- To lawyers: solid in any legal system
- To developers: easy and intuitive to guess or learn by
copying - many haven't read v2
- To every layperson: readable
- To the community: fair, no second class citizens
Not for lawyers
- I should clarify: This is not for lawyers
- We have 100 lawyers to translate to legalese
- We need input from users, developers, businesses
- Do it right, now, so it will last
The easy changes
- Internationalisation - global language
- Termination - no longer automatic
- BitTorrent - allow p2p distribution
- Patent licence grants (on next slide)
- EUCD and DMCA (on next +1 slide)
Patent licence grants
- GPLv3 says you can't sue people that you give the software to
- It says you give a licence if you knowingly rely on one
- So when you receive GPLv3 software, you know the
distributor isn't knowingly relying on a patent
Anti-circumvention
- DMCA and EUCD
- Laws that say it is a copyright violation to bypass
software to access a copyrighted work
- So if someone publishes software for reading encrypted
PDF documents, then they can't invoke the DMCA or EUCD to
charge you if you modify the software to read those
documents in a different way than the original program
- Otherwise, use the DMCA or EUCD to prohibit modification
- These laws exist because of a WIPO treaty, so draft 3
says that laws that exist for that treaty don't apply
The main changes
- Software patent deals
- Tivoisation
Tivoisation
- A technique that manufacturers use to produce a
computer, to sell to you, whose software they can update but you
can't
- Put a chip in
- The chip checks software before being run
- The information to authorise software is a secret
- So they can give you upgrades, but no one else can and
you can't modify
Why is this harmful? - individual
- Tivos contain spyware
- Tivos are prevented from copying data
- Tivoisation means you can't fix these problems
Why is this harmful? - sustainability
- If this spreads
- Programmable computers are replaced with
non-programmable computers
- ...makes users become non-programmers
- Free software development could grind to a halt
- So this is a basic survival mechanism
Draft 3 wording
- If you distribute binaries for a User Product, you have
to provide any information necessary to install and run the
software
The Novell-Microsoft deal
- In November 2006, Novell made a deal with Microsoft
- It gave patent protection if you meet certain conditions
defined by Novell and Microsoft
What's wrong with that?
- So Novell is no longer motivated to find a general solution
- Worse, they benefit from increasing the risk to others
because the bonus of their distro is that they have MS protection
- Microsoft are now profiting from our software, and they
are more motivated to spread fear
- Steve Balmer is already using this
What does draft 3 do?
- 1. If someone grants patent protection, as Microsoft has
done, it automatically applies to everyone (not just
customers)
- 2. You cannot distribute GPLv3 software if you have a
deal which gives patent protection in a way that
discriminates
- And there's a bracketed clause - a suggestion - maybe
this should exclude deals that already exist, we don't want
to create problems for Sun, IBM, etc. who already other
deals
Gone in draft 3
- Tivoisation is limited to "User Products" - a
compromise to increase usage
- Patent retaliation (on next slide)
- Licence compatibility (on next+1 slid)
Patent retaliation
- Patent retaliation is where you terminate someone's
rights if they
- This became popular in the late 90s
- GPLv3 drafts 1 and 2 included a narrow patent
retaliation clause
- ...but it has been removed because it was too much
complexity for something no one really liked
Licence compatibility
- Two licences are compatible if software under the two
licences can be complied with simultaneously
- The GPL says you cannot add further restrictions - so if
another licence contains other requirements, then developers
cannot combine that code with GPL'd code
- Drafts 1 and 2 tried to solve this with a list of
permitted additional requirements
- ...but only 1 or 2 licences became compatible, and
people didn't like the complexity
GPLv3 Timeline
- January 2006: first draft
- July 2006: second draft
- March 2007: third draft
- 2 months of comment, then a fourth draft
- Then a further 30 days
- So now is the time to participate
- Draft 3 has a lot of support
Committees
- Comments go to 4 committees of 130 people
- Four categories: Lawyers, distributors, projects, individuals
- They choose how the communicate
- Some are transparent, some like privacy - that's ok
- Richard Stallman makes the final decision
Could it be shorter?
- For ten years, people said it should be shorter
- In January 2006, a draft was published for comment
- Anyone can suggest what parts can be left out, but no
one did
- Being clear and explicit makes life easier overall
Can be better
- It won't be shorter, but it will be better
Conclusion
- Now is the time to take a look
- http://fsfeurope.org/projects/gplv3
- The LGPL and GFDL are also being updated
- Support FSFE: http://fsfe.org
- Questions?