Free-software license

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Jarble (talk | contribs) at 01:00, 22 January 2012 (→‎Debian). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

A free software licence is a software licence which grants recipients extensive rights to modify and redistribute, which would otherwise be prohibited by copyright law. To qualify as a free software licence, the licence must grant the rights described in The Free Software Definition or one of the similar definitions based on this.

History

In the mid-1980s, the GNU project produced individual free software licences for each of its software packages. The first free licence in history, the GCC General Public License, was applied to the GNU Compiler Collection and was initially published in 1987.[1][2] The Original BSD license is also one of the first free software licences, dating to 1988. In 1989, version 1 of the GNU General Public License (GPL) was published. Version 2 of the GPL, released in 1991, went on to become the most widely used free software licence.[3] Starting in the mid-90s and until the mid-00s, a trend began where companies and new projects wrote their own licences, or adapting others' licences to insert their own name. This licence proliferation led to problems of complexity and licence compatibility.[4] One free software licence, the GNU GPL version 2, has been brought to court, first in Germany and later in the USA. In the German case the judge did not explicitly discuss the validity of the GPL's clauses but accepted that the GPL had to be adhered to::If the GPL were not agreed upon by the parties, defendant would notwithstanding lack the necessary rights to copy, distribute, and make the software 'netfilter/iptables' publicly available.Because the defendant did not comply with the GPL, it had to cease use of the software.[5] The US case (MySQL vs Progress) was settled before a verdict was arrived at, but at an initial hearing, Judge Saris "saw no reason" that the GPL would not be enforceable.[6]

FSF-approved "free software" licences

Free Software Foundation, the group that maintains The Free Software Definition, maintains a non-exhaustive list of free software licences.[7] The list distinguishes between free software licences that are compatible or incompatible with the FSF licence of choice, the GNU General Public License, which is a copyleft licence. The list also contains licences which the FSF considers non-free for various reasons, but which are sometimes mistaken as being free.

OSI-approved "open source" licences

A group launched in 1998, Open Source Initiative (OSI), also maintains a list of approved licences. OSI and FSF agree on all widely used free software licences. OSI's list is different from FSF's list because the two organizations have reviewed different sets of licences. There are a few licences that OSI have approved that the FSF has not, and vice versa, but these are licences that are used by niche projects or none at all.

Restrictions

Certain licences restrict distribution in order to force derived projects to allow the freedom to use, study, modify, and redistribute the derived project. Some free software licences carry requirements and restrictions which apply to distributors. There exists an ongoing debate within the free software community regarding the fine line between what restrictions can be applied and still be called "free".

During the 1990s, free software licences began including clauses, such as patent retaliation, in order to protect against software patent litigation cases - a problem which had not previously existed. This new threat was one of the reasons for writing version 3 of the GNU GPL in 2006.[8] In recent years, a term coined tivoization describes a process where private modification of software under copyleft licences are preventing to run by the use of hardware restrictions, which the Tivo device is an example of. It is viewed by the FSF as a way to turn free software to effectively non-free, and is why they have chosen to prohibit it in GPLv3.[9]

Copyleft

The free software licences written by Richard Stallman in the mid-1980s pioneered a concept known as copyleft. Ensuing copyleft provisions stated that when modified versions of free software are distributed, they must be distributed under the same terms as the original software. This is sometimes referred to as "share and share alike" or "quid pro quo". This results in the new software being open source as well. This restriction is still usually called "Free Software".

Developers who use GPL code in their product must make the source code available to anyone when they share or sell the object code. In this case, the source code must also contain any changes the developers may have made. If GPL code is used but not shared or sold, the code is not required to be made available and any changes may remain private. This permits developers and organizations to use and modify GPL code for private purposes (i.e. when the code or the project is not sold or otherwise shared) without being required to make their changes available to the public.

Supporters of GPL claim that by mandating that derivative works remain under the GPL, it fosters the growth of free software and requires equal participation by all users. Opponents of GPL state[10] that "no licence can guarantee future software availability" and that the disadvantages of GPL outweigh[11] its advantages. They also state that restricting distribution makes the licence less free.

Patent retaliation

Most newly written free software licences since the late 1990s include some form of patent retaliation clauses. These measures stipulate that one's rights under the licence (such as to redistribution), may be terminated if one attempts to enforce patents relating to the licensed software, under certain circumstances. As an example, the Apple Public Source License may terminate a user's rights if said user embarks on litigation proceedings against them due to patent litigation. Patent retaliation emerged in response to proliferation and abuse of software patents.

Hardware restrictions

Version 3 of the GNU GPL includes specific language prohibiting additional restrictions being enforced by hardware restrictions and digital rights management (DRM), a practice FSF calls Tivoization.

Attribution, disclaimers and notices

The majority of free software licences require that modified software not claim to be unmodified. Some licences also require that copyright holders be credited. One such example is version 2 of the GNU GPL, which requires that interactive programs that print warranty or licence information, may not have these notices removed from modified versions intended for distribution.

Practical problems with licences

Licence compatibility

Licences of software packages containing contradictory requirements, render it impossible to combine source code from such packages in order to create new software packages.[12]

For example, if one licence says "modified versions must mention the developers in any advertising materials", and another licence says "modified versions cannot contain additional attribution requirements", then, if someone combined a software package which uses one licence with a software package which uses the other, it would be impossible to distribute the combination because these contradictory requirements cannot be simultaneously fulfilled. Thus, these two packages would be licence-incompatible.[13]

Licence proliferation

Licence proliferation compounds the problems of licence incompatibility. It likewise burdens software developers and distributors by increasing the amount of legal documents they must read. licence proliferation gained momentum during the late 1990s and increased into the early 2000s. By the year 2005, it was being identified as a problematic phenomenon and the gratuitous writing of new licences became more frowned upon.

Unacceptable restrictions

Purpose of use

Restrictions on private use of the software ("use restrictions") are generally unacceptable.[according to whom?] Examples include prohibiting the software to be used for military purposes, for comparison or benchmarking, for ethically-questionable means,[14] or in commercial organisations.[15] For this reason, such licences are not considered free software by the standards of the FSF, OSI, Debian, or the BSD-based distributions.

The FSF's free software definition further states that development and distribution must not be restricted.[16] Thus, commercial distribution of free software is acceptable and has become common.

Permissive versus Copyleft opinions

Many users and developers of BSD-based operating systems have a different position on licensing. The main difference is the belief that the copyleft licences, particularly the GNU General Public License (GPL), are undesirably complicated and/or restrictive.[17] The GPL requires any derivative work to also be released according to the GPL while the BSD licence does not. Essentially, the BSD licence's only requirement is to acknowledge the original authors, and poses no restrictions on how the source code may be used. As a result, BSD code can be used in proprietary software that only acknowledges the authors. For instance, the IP stack in Microsoft Windows NT 3.1 and Mac OS X are derived from BSD-licensed software.

Supporters of the BSD licence argue that it is more free than the GPL because it grants the right to do anything with the source code, second only to software in the public domain. This includes incorporating the BSD-licensed code into proprietary products. The approach has led to BSD code being used in common, widely used proprietary software. In response, GPL supporters claim that the freedom of others to make non-free software from free software is an unjust form of power rather than a necessary freedom.[18] However, some developers might want to include GPLed software in their products and can't do it, simply because the GPL is incompatible with the licences of other software they include in their product, even if everything is open source.

Code licensed under a permissive free software license, such as the BSD licence, can be incorporated into copylefted (e.g. GPL'd) projects. Such code is thus "GPL-compatible". There is no need to secure the consent of the original authors. In contrast, code under the GPL cannot be relicensed under the BSD licence without securing the consent of all copyright holders. Thus the two licences are compatible, but the combination as a whole must be distributed under the terms of the GPL, not the permissive licence.

Existing free software BSDs tend to avoid including software licensed under the GPL in the core operating system, or the base system, except as a last resort when alternatives are non-existent or vastly less capable, such as with GCC. (Indeed however, note that as of mid 2010 FreeBSD for example are moving from GCC to the upcoming LLVM compiler, perhaps primarily for this reason.) The OpenBSD project has acted to remove GPL-licensed tools in favor of BSD-licensed alternatives, some newly written and some adapted from older code.

Debian

The Debian project uses the criteria laid out in its Debian Free Software Guidelines (DFSG). The only notable cases where Debian and Free Software Foundation disagree are over the Artistic License and the GNU Free Documentation License (GFDL). Debian accepts the original Artistic License as being a free software licence, but FSF disagrees. This has very little impact however since the Artistic License is almost always used in a dual-licence setup, along with the GNU General Public License.

Regarding the GNU Free Documentation License, Debian decided to apply the DFSG to everything in their distribution, including documentation. The FSF argues that documentation is qualitatively different from software and is subject to different requirements. The end result of a long discussion and the eventual vote in Debian[19] was that the works licensed under the GFDL are considered free as long as they do not contain unmodifiable sections (what the GFDL calls "Invariant Sections"). Most GNU documentation includes Invariant Sections.

Controversial borderline cases

The vast majority of free software uses undisputed free software licences; however, there have been many debates over whether or not certain other licences qualify for the definition.

Examples of licences which provoked debate include the 1.x series of the Apple Public Source License, which were accepted by the Open Source Initiative but not by the Free Software Foundation or Debian, the RealNetworks Public Source License, which was accepted by Open Source Initiative and Free Software Foundation but not by Debian, and in 2007, the Common Public Attribution License, which was approved by Open Source Initiative only.[20]

See also

Notes

  1. ^ GCC initial release in 1987
  2. ^ Stallmans explains the origins of the GNU GPL and mention GCC GPL as an antecedent
  3. ^ Top 20 Most Commonly Used Licenses in Open Source Projects, Black Duck Software.
  4. ^ Report of License Proliferation Committee and draft FAQ, Open Source Initiative 2007-12-12.
  5. ^ Harald Welte vs. Sitecom, final order, translated from German by Jens Maurer
  6. ^ See Progress Software Corporation v. MySQL AB, 195 F. Supp. 2d 328 (D. Mass. 2002), on defendant's motion for preliminary injunction.
  7. ^ License list - Free Software Foundation
  8. ^ GPLv3 - Transcript of Richard Stallman from the fifth international GPLv3 conference, Tokyo, Japan; 2006-11-21
  9. ^ "Richard Stallman discusses changes in GPLv3". a new method of trying to deprive the users of freedom. In broad terms we refer to this as tivoisation.
  10. ^ FreeBSD.org: What a license cannot do
  11. ^ FreeBSD.org: GPL Advantages and Disadvantages
  12. ^ How GPLv3 tackles licence proliferation
  13. ^ "Stallman explains license compatibility while discussing GPLv3".
  14. ^ HESSLA license - GNU Project comments
  15. ^ GPLv3 - Transcript of Richard Stallman from the third international GPLv3 conference, Barcelona; 2006-06-22
  16. ^ The Free Software Definition - GNU Project - Free Software Foundation (FSF)
  17. ^ "OpenBSD Copyright Policy". the restriction that source code must be distributed or made available for all works that are derivatives [...] As a consequence, software bound by the GPL terms cannot be included in the kernel or "runtime" of OpenBSD
  18. ^ "Freedom or Power? by Bradley Kuhn and Richard Stallman".
  19. ^ "Debian vote on allowing GFDL'd works into their distro".
  20. ^ "Open-source badgeware".

References

External links