LWN.net Weekly Edition for August 18, 2005
The Open Software License, Version 3.0
In December, 2004, a committee tasked by the European Commission issued a report [PDF] on open source licensing. This report concluded that, while the existing open source licenses achieved a number of important goals, none was 100% suited to the task of licensing software in Europe. The shortcomings they found led the committee to suggest that the EU should adopt either a modified version of the Open Software License or a completely new license drafted with European requirements in mind.Most of the problems found by this committee were related to terminology. Most open source licenses, for example, allow the licensed software to be redistributed. Under the European interpretation, however, "redistribute" has a narrower meaning; in particular, it does not include acts like making the software available for general download on the net. The essential right for this sort of redistribution is "communicate to the public." Without an explicit grant of the right to communicate the licensed code to the public, the possibility remains that some court, somewhere, could conclude that putting a tarball on a web site is a violation of the license.
"Virality" is another concern of the authors, who see the GPL is being rather more "viral" than the alternative licenses. In particular, the authors see dynamic linkage as a barrier over which the concept of a "derived work" cannot cross:
The Free Software Foundation, instead, does not feel that the type of linking used affects the copyright status of the resulting program. This distinction is important; it could, for example, affect the status of proprietary kernel modules. Because they disagree with the FSF's interpretation, the report's authors shy away from the GPL, even though other "copyleft" licenses contain similar language - and copyleft is what the authors say they want.
A few other details caught their attention. Licenses in Europe, for example, are generally not allowed to outlast the corresponding intellectual property protection period. The terms of a copyright license thus cannot be imposed after the covered work has gone out of copyright, should that ever be allowed to happen again. Some details in warranty disclaimers are different, and there are certain types of warranty which cannot be disclaimed.
In response to this report, Lawrence Rosen, the author of the Open Software License, has announced a draft version 3.0 of the OSL [PDF] for review. The draft is annotated so that it is easy to see what has changed from the current version (2.1). Most of the changes are fairly obvious given the discussion above: the OSL now explicitly grants the right to "communicate" the software, for example. The license is no longer "perpetual"; instead, the copyright and patent grants are for the copyright and patent protection periods, respectively.
There are a couple of new terms which might not be popular with all users of this license, however. The "acceptance" clause now includes the following text:
This language is a response to concerns about whether a license can truly be binding in Europe if the licensee has not explicitly accepted it. The "reasonable effort under the circumstances" might include an active copyright acceptance step required at download time or when the software is installed. It is unclear what might be expected of a distributor shipping OSL-licensed software mixed in with thousands of other packages.
The new license also adds:
This looks like the return of the unlamented BSD advertising clause. It is less onerous, however, in that it only requires attribution in places where the redistributor is asserting copyright claims. Still, a splash screen for an application built from several OSL-licensed libraries could get unwieldy. Mr. Rosen states:
It is not clear how much of a problem this has been in the real world, and whether it truly needs fixing.
The OSL is not a hugely popular license; Freshmeat claims that the OSL applies to 0.15% of the projects listed there. There are some important projects using the OSL, however, including Rails, Globus, ImageMagick, and sparse. This license is well respected and carries a certain influence. Its importance could grow if it comes to be seen as the license to use for those who are especially concerned about adherence to European law. So this proposed update is significant. For those who are interested, the discussion is happening now on the Open Source Initiative's license-discuss mailing list.
GNOME and the way forward
It is not often that a straightforward software release announcement generates over 100 comments on LWN, so the recent GTK+ 2.8.0 announcement is special. One might think that the commenters were excited about the new GTK+ features, including Cairo graphics, composite extension support, or that sexy new file browser widget. But no such luck. It would seem that what people really want to talk about is key bindings, which are unchanged in 2.8.0. Certain users see GNOME as moving steadily away from its initial user base, and away from the traditions of Unix as a whole, and they are vocal about their discontent with this state of affairs.Certainly, the GNOME desktop offers enough annoyances to make just about any user grumpy. Your editor is burned daily by the metacity "a new window gets the keyboard focus regardless of the pointer position" policy; having the focus yanked away in the middle of a sentence does not seem like the most user-friendly policy. Why can't gthumb's forms do the right thing when the user hits "enter," rather than forcing another trip back to the mouse? Where, exactly, is the little option to get emacs key bindings? Clicking on a window does not mean the window should be raised; there is a separate combination for that. The new, "electron cloud" busy-cursor behavior in the Rawhide version of GNOME 2.12 is distracting and annoying, requiring a trip to an external site for a new cursor theme. Dia's aggressive use of "tool tips" makes a nice drawing application almost unusable. Why is there no easy way to move settings from one system to another? And so on.
Annoyances are part of using a computer, however. It is hard to imagine that a desktop as complex and featureful as GNOME would be free of glitches. These things can be smoothed out over time to make room for new bits of obnoxious behavior. The GNOME debate goes beyond the current set of misfeatures, however, and into a couple of fundamental issues which are worth a look.
One of these is: to what extent is GNOME a "Unix" desktop, and to what extent should it preserve the traditional Unix way of doing things, whatever that might be? At the 2000 Ottawa Linux Symposium, Miguel de Icaza delivered his famous "Unix sucks" talk. Unix, he said, had gone stale and had not been the source of any significant innovation for quite some time. The GNOME project intended to move beyond hidebound Unix ways and deliver something new. Miguel's vision, which seemed to involve switching over to hidebound Microsoft ways, does not appear to be driving the GNOME project at this time, but the project does appear willing to break from the past - even its own past - if that offers hope of a better desktop.
And that is how it should be. The Unix way of doing things worked well in a different era, when users were clueful, systems were small (in capability, if not in actual size), and an ADM 3 terminal in one's office seemed like a major step up. How do many of the fundamental Unix ideas - writing programs as small, text-oriented filters, for example - fit into the creation of a modern, graphical desktop? Clearly, developers wishing to pull Linux forward into a larger world with a broader user community have to be willing to do some things differently. One may not agree with everything that the GNOME project has done, but the GNOME hackers are (like their counterparts at KDE and elsewhere) trying to change the world for the better.
It would be surprising indeed if there were a consensus on what "better" is, especially before it has been implemented and pounded on. The GNOME idea of "better" may or may not win out in the end, but, because the developers are working at it, we will have the opportunity find out. And that is a good thing.
The other issue which comes up with some regularity is a perceived arrogance from some in the GNOME camp. Experimentation with the desktop will go best when accompanied by careful attention to the resulting cries of agony from the user community. Users have often been heard to complain, however, that the GNOME hackers Know Too Much to listen to those cries as they follow the One True Course. A tendency by some developers to describe user requests as "crack" probably has not helped in this regard. Recent posters have complained about the refusal by the Evolution maintainers to accept a patch enabling the use of external editors.
There is a hard line to follow here; the maintainer of any successful free software project must learn to say "no" to features and requests much of the time, or that project will likely collapse under its own weight. Say "no" too often, however, and both users and developers will leave for a more accommodating environment. The GNOME developers may well be guilty of occasionally erring on the "no" side of that line, however. The project probably hit its low point early in the 2.x series, when configuration options were being jettisoned in a seemingly indiscriminate manner and few apologies were forthcoming. The situation seems to have improved, however, even if work remains to be done; chances are that 2.12 will be the best GNOME release yet.
The nice thing about all this is that we are dealing with free software. Using GNOME is not required to get the most out of Linux. The KDE project is out there, and several other desktops as well; it should not be hard to find one to suit the needs of any particular user. One can even still operate a Linux system via an ADM 3 terminal, using the traditional key bindings. The GNOME hackers are doing the right thing in a general sense by pushing toward their vision of a better desktop. If they fail to meet the needs of the user community - or to listen to that community's feedback - there are plenty of alternatives to choose from. Or even the option of forking the project, should that seem like the best course. For the time being, however, this project has made major progress in the creation of a powerful Linux desktop, and the whole thing is free software. There are limits to how much one should complain about that.
[As a footnote, it's worth noting that long-time GNOME release manager Jeff Waugh is stepping down; his replacement will likely be Elijah Newren. Congratulations are due to Jeff for heading up several smooth, on-time GNOME releases.]
Page editor: Jonathan Corbet
Inside this week's LWN.net Weekly Edition
- Security: Wiretapping and email; New vulnerabilities in bluez, evolution, kdeedu, mozilla, ...
- Kernel: CLOCK-Pro; Who needs /dev/kmem?; Page flags.
- Distributions: A look at the Linux Terminal Server Project; BLAG30001 Released; Debian Project turns 12
- Development: The autopackage binary packaging framework, new versions of ZODB, Cairo, Quixote, Patchage, Cream CRM, PyX, XCircuit, SQL-Ledger, Crossfire, GNS game portal, Pygame, Gnumeric, Joda-Time, Launch4j, CL-WIKI, GCL, Warrior Platform.
- Press: OSDL patent commons gets chilly reception, Lloyd's considers open-source indemnity program, LinuxWorld and OSCON coverage, Donald Becker interview, Hidden Treasures in OOo 2.0, Solaris 10 review, Larry Augustin's latest venture.
- Announcements: Cluster Builder 1.1, Magma Workbench 2.6, Novell Delivers Linux in China, DbWrench Database Design 1.2.1, Ubuntu training bus, TuxMobil laptop survey, oscon wrap-up, Freedel-India, Ohio Linux Fest, OSDC CFP, Emerging Tech CFP, LinuxWorld Canada, KDE launches Appeal, lugradio.
- Letters: Trademarks and free software.