Определение на свободен софтуер
We maintain this free software definition to show clearly what must be true about a particular software program for it to be considered free software. From time to time we revise this definition to clarify it. If you would like to review the changes we've made, please see the History section below for more information.
„Свободният софтуер“ е израз на свободата, а не на цената. За да разберете концепцията, мислете си за „свобода на словото“, а не „безплатен обяд“1.
Free software is a matter of the users' freedom to run, copy, distribute, study, change and improve the software. More precisely, it means that the program's users have the four essential freedoms:
- Свободата да изпълняваш програмата — за всякакви цели (свобода №0)2.
- The freedom to study how the program works, and change it to make it do what you wish (freedom 1). Access to the source code is a precondition for this.
- Свободата да разпространяваш копия, за да помагаш на ближния си (свобода №2).
- The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
A program is free software if users have all of these freedoms. Thus, you should be free to redistribute copies, either with or without modifications, either gratis or charging a fee for distribution, to anyone anywhere. Being free to do these things means (among other things) that you do not have to ask or pay for permission to do so.
Също така, вие трябва да разполагате със свободата да правите промени и да ги ползвате самостоятелно в работата си или ако просто си играете, без дори да споменавате за тяхното съществуване. Ако публикувате промените си, от вас не трябва да се изисква да уведомявате някого за това по какъвто и да е начин.
The freedom to run the program means the freedom for any kind of person or organization to use it on any kind of computer system, for any kind of overall job and purpose, without being required to communicate about it with the developer or any other specific entity. In this freedom, it is the user's purpose that matters, not the developer's purpose; you as a user are free to run the program for your purposes, and if you distribute it to someone else, she is then free to run it for her purposes, but you are not entitled to impose your purposes on her.
The freedom to redistribute copies must include binary or executable forms of the program, as well as source code, for both modified and unmodified versions. (Distributing programs in runnable form is necessary for conveniently installable free operating systems.) It is OK if there is no way to produce a binary or executable form for a certain program (since some languages don't support that feature), but you must have the freedom to redistribute such forms should you find or develop a way to make them.
In order for freedoms 1 and 3 (the freedom to make changes and the freedom to publish improved versions) to be meaningful, you must have access to the source code of the program. Therefore, accessibility of source code is a necessary condition for free software.
Freedom 1 includes the freedom to use your changed version in place of the original. If the program is delivered in a product designed to run someone else's modified versions but refuse to run yours — a practice known as “tivoization” or (through blacklisting) as “secure boot” — freedom 1 becomes a theoretical fiction rather than a practical freedom. This is not sufficient. In other words, these binaries are not free software even if the source code they are compiled from is free.
One important way to modify a program is by merging in available free subroutines and modules. If the program's license says that you cannot merge in a suitably licensed existing module — for instance, if it requires you to be the copyright holder of any code you add — then the license is too restrictive to qualify as free.
Freedom 3 includes the freedom to use release your modified versions as free software. A free license may also permit other ways of releasing them; in other words, it does not have to be a copyleft license. However, a license that requires modified versions to be nonfree does not qualify as a free license.
In order for these freedoms to be real, they must be permanent and irrevocable as long as you do nothing wrong; if the developer of the software has the power to revoke the license, or retroactively change its terms, without your doing anything wrong to give cause, the software is not free.
Все пак, някои правила за начина на разпространение на свободния софтуер са приемливи, когато не противоречат на основните свободи. Например „copyleft“ (да го кажем по прост начин) е правилото, че когато разпространявате програмата, не можете да добавяте ограничения, за да откажете на другите хора основните свободи. Това правило не противоречи на основните свободи — то ги защитава.
Free software
does not mean noncommercial.
A free program must
be available for commercial use, commercial development, and commercial
distribution. Commercial development of free software is no longer unusual;
such free commercial software is very important. You may have paid money to
get copies of free software, or you may have obtained copies at no charge.
But regardless of how you got your copies, you always have the freedom to
copy and change the software, even to sell copies.
Whether a change constitutes an improvement is a subjective matter. If your modifications are limited, in substance, to changes that someone else considers an improvement, that is not freedom.
However, rules about how to package a modified version are acceptable, if
they don't substantively limit your freedom to release modified versions, or
your freedom to make and use modified versions privately. Rules that if
you make your version available in this way, you must make it available in
that way also
can be acceptable too, on the same condition. (Note that
such a rule still leaves you the choice of whether to publish your version
at all.) Rules that require release of source code to the users for
versions that you put into public use are also acceptable. It is also
acceptable for the license to require that you identify your modifications
as yours, or that, if you have distributed a modified version and a previous
developer asks for a copy of it, you must send one.
In the GNU project, we use copyleft
to protect these freedoms
legally for everyone. But non-copylefted
free software also exists. We believe there are important reasons why
it is better to use copyleft, but
if your program is non-copylefted free software, it is still basically
ethical.
Прегледайте статията „Видове свободен софтуер“ за описанието как категориите „свободен софтуер“, „софтуер със защита copyleft“ и другите видове се съотнасят един с друг.
Sometimes government export control regulations and trade sanctions can constrain your freedom to distribute copies of programs internationally. Software developers do not have the power to eliminate or override these restrictions, but what they can and must do is refuse to impose them as conditions of use of the program. In this way, the restrictions will not affect activities and people outside the jurisdictions of these governments. Thus, free software licenses must not require obedience to any export regulations as a condition of any of the essential freedoms.
Most free software licenses are based on copyright, and there are limits on what kinds of requirements can be imposed through copyright. If a copyright-based license respects freedom in the ways described above, it is unlikely to have some other sort of problem that we never anticipated (though this does happen occasionally). However, some free software licenses are based on contracts, and contracts can impose a much larger range of possible restrictions. That means there are many possible ways such a license could be unacceptably restrictive and nonfree.
We can't possibly list all the ways that might happen. If a contract-based license restricts the user in an unusual way that copyright-based licenses cannot, and which isn't mentioned here as legitimate, we will have to think about it, and we will probably conclude it is nonfree.
When talking about free software, it is best to avoid using terms like
give away
or for free,
because those terms imply that the
issue is about price, not freedom. Some common terms such as piracy
embody opinions we hope you won't endorse. See Confusing Words and Phrases that are
Worth Avoiding for a discussion of these terms. We also have a list of
proper translations of free
software
into various languages.
Най-накрая, забележете, че критериите, които са изброени в тази дефиниция за понятието „свободен софтуер“, изискват внимателно размишление при интерпретирането им. За да решим дали един конкретен софтуерен лиценз покрива критериите да е лиценз на свободен софтуер, ние го преценяваме на базата на горните критерии, за да отсъдим дали съответства на тях по дух и по буква. Ако лицензът съдържа прекомерни ограничения, ние го отхвърляме, дори и ако не сме предусетили проблема в горните критерии. Понякога изискване, което е вписано в лиценз, повдига проблем, който изисква задълбочено размишление, включително и обсъждане с адвокат, преди да решим дали то е приемливо. Когато стигнем до решението на новия проблем, ние често обновяваме горните критерии, за да бъде по-ясно защо определени лицензи се определят или не като свободни.
Ако се интересувате дали определен, конкретен лиценз се явява лиценз за свободен софтуер, погледнете списъка ни на лицензи. Ако лицензът, който ви интересува, не е изброен там, можете да ни питате за него чрез е-поща на адрес <licensing@gnu.org>.
If you are contemplating writing a new license, please contact the Free Software Foundation first by writing to that address. The proliferation of different free software licenses means increased work for users in understanding the licenses; we may be able to help you find an existing free software license that meets your needs.
If that isn't possible, if you really need a new license, with our help you can ensure that the license really is a free software license and avoid various practical problems.
Отвъд софтуера
Ръководствата за софтуер трябва да са свободни поради същите причини, поради които и софтуерът трябва да е свободен, и понеже ръководствата в известна степен са част от софтуера.
Същите аргументи имат смисъл и за други видове произведения от практическо естество — с други думи, произведения, които включват в себе си полезни знания, като образователни и справочни материали. Уикипедия е най-известният пример.
Всеки вид прозиведение може да бъде свободно, и определението за свободен софтуер може да бъде разширено до определение за свободни произведения на културата, приложимо за всякакъв вид творби.
Отворен код?
Една друга група започна да използва термина „отворен код“, за да обозначи нещо близко (но не идентично) със „свободния софтуер“. Ние предпочитаме понятието „свободен софтуер“, защото веднъж като чуете, че се отнася за свободата, а не за цената, то извиква в съзнанието — „свобода“. Думата „отворен“ просто не прави това.
History
From time to time we revise this Free Software Definition to clarify it. Here we provide a list of those modifications, along with links to illustrate exactly what changed, so that others can review them if they like.
- Version 1.90: Clarify that freedom 3 means the right to distribute copies of your own modified or improved version, not a right to participate in someone else's development project.
- Version 1.89: Freedom 3 includes the right to release modified versions as free software.
- Version 1.80: Freedom 1 must be practical, not just theoretical; i.e., no tivoization.
- Version 1.77: Clarify that all retroactive changes to the license are unacceptable, even if it's not described as a complete replacement.
- Version
1.74: Four clarifications of points not explicit enough, or stated in
some places but not reflected everywhere:
- "Improvements" does not mean the license can substantively limit what kinds of modified versions you can release. Freedom 3 includes distributing modified versions, not just changes.
- The right to merge in existing modules refers to those that are suitably licensed.
- Explicitly state the conclusion of the point about export controls.
- Imposing a license change constitutes revoking the old license.
- Version 1.57: Add "Beyond Software" section.
- Version 1.46: Clarify whose purpose is significant in the freedom to run the program for any purpose.
- Version 1.41: Clarify wording about contract-based licenses.
- Version 1.40: Explain that a free license must allow to you use other available free software to create your modifications.
- Version 1.39: Note that it is acceptable for a license to require you to provide source for versions of the software you put into public use.
- Version 1.31: Note that it is acceptable for a license to require you to identify yourself as the author of modifications. Other minor clarifications throughout the text.
- Version 1.23: Address potential problems related to contract-based licenses.
- Version 1.16: Explain why distribution of binaries is important.
- Version 1.11: Note that a free license may require you to send a copy of versions you distribute to the author.
There are gaps in the version numbers because there are many other changes that do not affect the substance of the definition at all. Instead, they fix links, add translations, and so on. If you would like to review the complete list of changes, you can do so on our cvsweb interface.
- Английската дума „free“ е многозначна. На български тя може да се предава като свободен, но и като безплатен. В рамките на проекта GNU тя винаги се използва в значението си свободен. Контрастирането на свободата на словото с безплатния обяд е възможно най-близкото до българския език предаване на мотото «„free“ as in „free speech“, not as in „free beer“». На български това двусмислие не съществува.
- Независимо, че последната свобода е с номер 3, общият им брой е 4. Номерирането отразява както историята на постепенното им оформяне и еволюция (първо свободи 1 и 2, след това 3 и накрая 0), така е и препратка към начина на броене в някои езици за програмиране и математиката.