Some definitions related to free software

Do you know the difference between free software and open source software? What is the difference between copyleft and non-copyleft programs? Or what is the difference between freeware, shareware, commercial software? This is one of those long articles, full of definitions and concepts that will surely help you organize your ideas when it comes to free software.

Free software

Free software is software licensed for anyone to use, copy, and distribute, either with or without modifications, for free or for a fee. In particular, this means that the source code must be available. "If it's not a source, it's not software." This is a simplified definition; see also the full definition.

If a program is free, it can potentially be included in a free operating system such as GNU or the free GNU / Linux systems.

There are many different ways of making a program free: numerous issues to decide which in many cases are nuances, and which can be solved in various ways without the program ceasing to be free. Some of the possible variations are described below. For information on specific free software licenses, you can consult the list of licenses.

The adjective "free" of free software refers to freedom, not free. However, proprietary software companies sometimes use the term "free software" to refer to price [Translator's note: In English "free software" is spelled "free software", the term "free" can mean "free" or "free"]. He sometimes uses this term when talking about the binary copy that is available for free; and other times they are used to qualify the copy included in a newly acquired computer. This has nothing to do with what we mean by free software in the GNU project.

Due to this potential confusion, when a software company claims that its product is free software, it is wise to always check the terms of that particular distribution to see if users have all the freedoms that free software implies. Sometimes it is true free software; and other times it is not.

Many languages ​​have two different words for "free" as freedom and "free" as zero price. For example, French has the terms "libre" and "gratuit" [in Spanish the exact same thing happens with the terms "libre" and "gratis"]. This does not happen in English, in English there is the word "free", which refers unambiguously to price, but does not have a common adjective that refers unambiguously to freedom. Therefore, if you speak a language other than English, we suggest that you translate the term "free" from "free software" into your language to make it clearer. See our list of translations of the expression "free software" into other languages.

Free software is often more reliable than non-free software.

Open source software

Many people use the term "open source" software to refer to more or less the same category as free software. However, they are not exactly the same type of software: they accept some licenses that we consider too restrictive, and there are free software licenses that they have not accepted. However, the differences between what the two categories cover are few: almost all free software is open source, and almost all open source software is free.

We prefer the term "free software" because it refers to freedom, something that the term "open source" does not.

Public domain software

Public domain software is software that is not protected by copyright. It is a special case of free software that is not copyleft protected, which means that some copies or modified versions may not be completely free.

In some cases, an executable program may be in the public domain without its source code being available. This software is not free software, because for it to be free, the source code must be accessible. For its part, most free software is not public domain software; it is protected by copyright, and the copyright holders have given legal permission for anyone to use it freely using a free software license.

Sometimes the term "public domain" is used loosely to mean "free" or "freely available." However, "public domain" is a legal term and precisely means "without copyright." To be as clear as possible, we recommend the use of "public domain" to express this meaning only, and the use of the other expressions to convey their corresponding one.

Under the Berne convention, which has been signed by most countries, any new writing is automatically copyrighted. This includes programs. Therefore, if you want a program that you have written to be in the public domain, you must follow certain legal procedures to avoid that, automatically, copyright is added to it.

Copyleft protected software

Copyleft-protected software is free software whose distribution terms ensure that all copies of all versions are free software. This means, for example, that copyleft licenses do not allow third parties to add any additional requirements (except for a limited set of requirements to increase their protection) and require that the source code be public. Some copyleft licenses, such as the third version of the GPL, prevent other ways to make software proprietary.

At the GNU Project, we copyleft almost all the software we write, because our goal is to give every user the freedoms that the term "free software" implies. See Copyleft protected for a further explanation of how copyleft works and why we use it.

Copyleft is a general concept; to actually copyleft a program, you need to use a specific set of distribution terms. There are many possible ways to write copyleft distribution terms, so many copyleft free software licenses may exist in principle. However, in practice almost all copyleft software uses the GNU General Public License. Generally, two different copyleft licenses are "incompatible", which means that it is illegal to combine code that is protected by those licenses; therefore, it would be good for the community if they all used a single copyleft license.

Free software not copyleft protected

Non-copyleft free software includes the author's permission to redistribute and modify the software, as well as permission to add additional restrictions.

The fact that a program is free but is not protected with copyleft implies that some copies or modified versions of it may not be completely free. A software company could compile the program, with or without modifications, and distribute the executable file as a proprietary software product.

The X Window System is an example of this. Consortium X releases X11 with distribution terms that make it non-copyleft free software. If you wish, you can obtain a copy that has these terms of distribution and is free. However, there are also non-free versions, and there are popular workstations and PC graphics cards in which only non-free versions work. If you are using this hardware, X11 is not free software for you. Even the X11 developers themselves made X11 non-free software for a time.
GPL-covered software
The GNU General Public License (GPL) is a specific set of distribution terms used to protect a copyleft program. The GNU Project uses this license for the distribution of most GNU software.

The GNU system

The GNU system is the Unix-like operating system, made up entirely of free software, that we have developed in the GNU Project since 1984.

A Unix-like operating system is made up of many programs. The GNU system includes all GNU software, plus many other packages, such as the X Window System and TeX, which are not GNU software.

The first trial version of the full GNU system was available in 1996. It included the GNU Hurd, our kernel, developed since 1990. In 2001 the GNU system (including the GNU Hurd) started to work quite reliably, but the Hurd It still lacked some important features, so it is not widely used. Meanwhile, the GNU / Linux system, a derivative of the GNU system that uses Linux as the kernel instead of the GNU Hurd, has been very successful since the 1990s.

Since the purpose of GNU is to be a free system, each of its component parts must be free software. However, not all of them have to be protected by copyleft; Legally, any type of free software can be included if it helps to achieve the proposed technical objectives. And it is not necessary for each component to be GNU software individually. The GNU system can and does include free software not protected by copyleft, such as the X Window System, which was developed in other projects.

GNU programs

The expression "GNU programs" is equivalent to GNU software. A Y program is a GNU program if it is GNU software (GNU Project software). Sometimes we say that it is a "GNU package".

GNU Software

The GNU software is the software released under the auspices of the GNU Project. We also call a program that is GNU software or GNU package. The README file or the GNU package manual should indicate that it is; furthermore, the Free Software Directory identifies all GNU packages.

Most of the GNU software is copyleft-protected, but not all; however, all GNU software must be free software.

Some of the GNU software is written by staff at the Free Software Foundation, but most software is contributed by volunteers. Of the software contributed by volunteers, sometimes the owner of the copyright is the Free Software Foundation and sometimes it is the contributors who wrote it.

Non-free software

Non-free software is any software that is not free. This includes semi-free software and proprietary software.

Semi-free software

Semi-free software is software that is not free, but includes permission for individuals to use, copy, distribute, and modify it (including distribution of modified versions) for non-profit purposes. PGP is an example of a semi-free program.

Semi-free software is much better ethically than proprietary software, but it still poses problems that prevent us from using it on a free operating system.

Copyleft restrictions are designed to protect the essential freedoms of all users. For us, the only substantive restriction justified in the use of a program is the one that prevents the addition of restrictions by other people. Semi-free programs have additional restrictions motivated by purely selfish ends.

It is impossible to include semi-free software in a free operating system. This is because the distribution terms for the free operating system as a whole are the conjunction of the distribution terms for all the programs that compose it. Adding a semi-free program to the system will make the system as a whole only semi-free. There are two reasons why we don't want this to happen:

We believe that free software should be for everyone, including companies, not just for schools or for private leisure activities. We want to invite companies to use the full GNU system, and therefore we should not include a semi-free program in it.
The commercial distribution of free operating systems, including GNU / Linux systems, is very important, and users appreciate the availability of commercial distributions on CD-ROM. Including a semi-free program in an operating system would prevent its commercial distribution on CD-ROM.

The Free Software Foundation itself is not a commercial entity, and therefore could use a semi-free program "internally" legally. But it doesn't, because it would negatively impact our efforts to obtain programs that we could include in the GNU system.

As long as there is a task that needs to be done with software and there is no program to do it, the GNU system will have a shortage. We should say to volunteers, "We don't have a program to do this work in the GNU Project yet, so we hope you will write it." If we used a semi-free program to do that task, we would discredit what we say ourselves; and the momentum (ours and that of those who could share our points of view) to write a free alternative would be lost. Therefore, we do not.

Proprietary software

Proprietary software is software that is not free or semi-free. Their use, redistribution or modification is prohibited, requires you to request an authorization, or is so restricted that in fact you cannot do so freely.

The Free Software Foundation follows the rule that we can only install a proprietary program on our computers, when we do so temporarily and for the purpose of writing a free alternative to that same program. Apart from this specific case, we believe that there is no possible excuse to install a proprietary program.

For example, we believed that the installation of Unix on our computers in the 1980s was justified, because we were using it to write a free alternative to Unix itself. Currently, considering that there are free operating systems available, this excuse is no longer valid; we have eliminated all non-free operating systems; and on any new computer we install a completely free operating system.

We do not insist that GNU users or contributors follow this standard. We create this standard for ourselves. But we hope that they too decide to follow her.

Freeware

The term "freeware" does not have a clear accepted definition, but it is commonly used to refer to packages that can be distributed but not modified (and whose source code is not available). These packages are not free software. Therefore, please do not use the term "freeware" to refer to free software.

Shareware

Shareware is software that is allowed to redistribute copies, but for each copy used, the user must pay a license fee.

Shareware is not free software, not even semi-free. This is so for two reasons:

For most shareware, the source code is not available; therefore, you cannot modify the program in any way.
You cannot make a copy of shareware and install it without paying a license fee, even for individuals who use it for non-profit activities (in practice, users often ignore the distribution terms and do so anyway, but these terms don't allow it).

Private Software

Private or custom software is software developed for a user (usually an organization or a company). This user is in possession of and uses it, and is not releasing it to the public either as source code or as binary.

A private program is free software in a trivial sense if its only user has full rights to it. However, when considering the question in more depth, the question of whether or not such a program is free loses its meaning.

In general we do not believe that developing a program and not releasing it is a mistake. There are times when a program is so useful that hoarding it for yourself is detrimental to humanity. However, most programs are not that wonderful, and not releasing them is not particularly harmful. Therefore, there is no conflict between the development of private or custom software and the principles of the free software movement.

Almost all programmer hiring is for custom software development; therefore, most programming work is, or could be, done in a way that is compatible with the free software movement.

Commercial software

Commercial software is that developed by a business that intends to obtain money from its use. "Commercial" and "proprietary" are not the same! Most commercial software is proprietary, but there is commercial free software, and there is non-commercial non-free software.

For example, GNU Ada is always distributed under the terms of the GNU GPL, and each of its copies is free software; however, its developers make maintenance contracts. Interested customers sometimes comment to sellers: "We would feel more secure with a commercial compiler." To which vendors reply: “Ada from GNU is a commercial compiler; with the particularity that it is also free software ».

For the GNU Project, the emphasis is on another level: the important thing is that GNU's Ada is free software; whether it is commercial is not a crucial issue. However, the further development of GNU Ada resulting from its being commercial is definitely beneficial.

Please help spread the word that commercial free software is possible. You can do this by trying not to say "commercial" when what you mean is "proprietary."

Source: Free Software Foundation (FSF)


Add as preferred source in Google