This is why I drink: a discussion of Fedora's legal state

Please consider subscribing to LWN Subscriptions are the lifeblood of LWN.net. If you appreciate this content and would like to see more of it, your subscription will help to ensure that LWN continues to thrive. Please visit this page to join up and keep LWN on the net.

Tom Callaway seems to be a very nice person who has been overclocked to about 140% normal human speed. In only 20 minutes he gave an interesting and highly-amusing talk that could have filled a 45-minute slot on the legal principles that underpin Fedora, how they got that way, and how they work out in practice.

In the old days, Callaway said, Red Hat made Red Hat Linux, entirely in-house. What the company didn't make was any money; sales of hats generated more profit than sales of Red Hat box sets, which apparently were sold at a loss. It was felt that this plan wouldn't work out in the long term, so Red Hat changed to making Enterprise Linux. It didn't want to stop doing a hobbyist Linux, however, so Fedora Core was launched. Red Hat also wanted the community to have input into what Fedora was, and how it looked, but the company couldn't just drop the reins and let the community take over, because it was still legally the distributor.

So someone — no one now remembers who — created the FE-LEGAL tag in bugzilla, which was applied to any issue that people thought might cause legal problems when Fedora shipped. Because, in the old in-house Red Hat Linux days, legal issues were well monitored, everyone assumed that someone was dealing with these FE-LEGAL-tagged issues. Unfortunately that wasn't true, and when this was realized, Callaway got volunteered to handle them. With a little encouragement from Red Hat's legal team, he made three simple rules.

First, everything needed to be free software. He considered "open source", but quickly discovered that all the open source stuff that was in Fedora was either also free software, or under some questionable license. Requiring that everything be free dealt with that; it was a popular and well-received move, but it broke everyone's WiFi, because (at least at that time) just about every WiFi driver in the world required the loading of a binary firmware blob into the hardware. No one was keen to see Fedora become known as "the distro everyone used to use until they needed WiFi", so he changed the requirement to "must be free software, except for firmware needed to make free software work". This has not been a universally popular move, particularly with the Free Software Foundation, and indeed Callaway would love it if WiFi makers changed their business practices so that the exception could go away without breaking everyone's WiFi.

Second, everything needed to be safe for Red Hat to distribute. That meant being compliant with US laws, "crazy and wacky and stupid as they are". It also meant not infringing known US patents. That didn't mean doing some kind of exhaustive patent search on everything that goes into Fedora, but deliberately infringing a known US patent is a pretty good way to get Red Hat's headquarters litigated into impoverished, glowing embers. That meant no MP3 support, at least at that time.

Third, it had to respect Red Hat's trademarks. It was decided that the easiest way to do that was to respect everyone's trademarks, and in any case, that was the honorable thing to do.

Licensing was the next problem. Red Hat Linux used to have a "contrib" repository, where people put all sorts of stuff that had been built against Red Hat Linux so that it could be more widely used. When Fedora opened up, busy volunteers took nearly everything in contrib and threw it into Fedora. Unfortunately, much of this effort happened with no particular concern for licenses. There was a "license" field in the database of packages, but instead of "GPLv3" or "MIT", it often said things like "distributable", or in one memorable case, simply "ok". Callaway went through Fedora and found over 350 different licenses, including 16 BSD variants and 34 MIT variants (there were still more of those, but he stopped counting at 34).

The fix here was a contributor license agreement, but it was not well received. Some corporate contributors not only refused to sign it, but refused to say why; unofficial research eventually suggested that people were afraid it was a copyright assignment, even though it wasn't supposed to be one. So the Fedora Project Contributor Agreement was adopted, which starts off by clarifying that it isn't a copyright assignment, and goes on in fairly simple terms to say that anything you create and put in Fedora which you do not otherwise give a free license to will be under a default free license (MIT for code, CC-BY-SA for other content).

That pretty much got us to where we are today. Callaway ran through a number of achievements the project has had in clarifying and fixing licenses. It fixed the SGI FreeB license, which finally made X.Org free; it persuaded Sun (and later Oracle) to drop the clause in the Java license forbidding its use in nuclear submarines, thus making it free; it persuaded many CPAN contributors to relicense CPAN modules which were Artistic-1.0-only, and dropped from Fedora those that they could not fix that way, this latter project alone took him six months. The project worked with TeXLive to identify, then remove, all the non-free components.

The greater community's recognition that Fedora was serious about free licensing started to attract smaller projects that sought advice about being properly free; part of the advice given was on the inadvisability of writing their own license. The project found that fonts, in particular, were often in common use but non-free; the creators generally had no problem with freeing them, but in most cases they had simply never been asked.

MP3 decoding is now in Fedora because the patents have expired, though encoding remains encumbered, and the patents are being enforced by the rights holders. Elliptic curve cryptography is now in Fedora, after a six-year wait for the base functionality, and a ten-year wait for the curves currently used. Callaway revealed that he has a desktop calendar full of patent expiry dates: some mornings he wakes up, the calendar goes "bing!", and he spends the day putting something into Fedora that could not previously have shipped. The patent on S3 texture compression expires on October 2, 2017, so Steam games might work better on Fedora after that date.

If a big company with deep pockets is going to run a distribution with high community involvement, someone is going to have to attend to the legal issues. Since free-software people often communicate with lawyers about as well as dolphins communicate with dogs, someone is going to have to stand between the groups, talking to each in their own language. That person will have to help the free-software people understand legal issues, and the lawyers understand the people who want to give everything away. Callaway does this, which is why he drinks, he said, and it is why I, as a Fedora user these many years, would be happy to buy him a beer.

[Thanks to the Linux Foundation, LWN's travel sponsor, for making this article possible.]

