Определение на свободен софтуер
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 improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
Една програма е свободен софтуер, ако потребителите имат всичките четири свободи. По такъв начин, вие трябва да сте свободни да разпространявате копия, идентични с оригинала или променени, безплатно или срещу заплащане на всеки и навсякъде. Освен всичко друго, това, че програмата е свободна, означава, че не трябва да се молите или да плащате, за да упражните тези свободи.
Също така, вие трябва да разполагате със свободата да правите промени и да ги ползвате самостоятелно в работата си или ако просто си играете, без дори да споменавате за тяхното съществуване. Ако публикувате промените си, от вас не трябва да се изисква да уведомявате някого за това по какъвто и да е начин.
Свободата да изпълняваш програмата означава свобода за изпълнение от всеки индивид или организация, върху всяка компютърна система, за каквато и да е работа и цел, без да се изисква да съобщите за това на разработчика или на което и да е друго лице. За тази свобода е важна гледната точка на потребителя, a не на разработчика. Вие като потребител сте свободни да използвате софтуера за вашите си цели, а ако разпространите програмата към другиго, той ще е свободен да използва програмата за своите си цели, но вие нямате право да налагате своите цели на другия.
Свободата да разпространяваш копия трябва да се отнася както за двоичните или изпълнимите форми на програмата, така и за формите в изходен код, както за оригиналните, така и за променените версии. (Разпространението на програми в изпълнима форма е необходимо за удобно инсталиране на свободни операционни системи.) Нормално е за някои програми да няма начин за създаването на представяне в двоичен или изпълним вид (понеже някои езици не поддържат тази възможност), но вие трябва да имате свободата да разпространявате такива форми, ако намерите или изобретите начин да ги създавате.
За да може свободите да правите промени и да публикувате променени версии, да означават нещо реално, вие трябва да имате достъп до изходния код на програмата. Затова достъпът до изходния код е необходимо условие, за да бъде една програма свободен софтуер.
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.
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, such as if it requires you to be the copyright holder of any code you add, then the license is too restrictive to qualify as free.
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 non-commercial.
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, if you have distributed a
modified version and a previous developer asks for a copy of it, you must
send one, or that you identify yourself on your modifications.
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.
Повечето софтуерни лицензи са базирани на авторското право и има граници за това какви изисквания могат да се налагат чрез него. Ако един софтуерен лиценз, който е основан на авторското право, спазва свободите по начините описани по-горе, малко вероятно е да възникне някакъв друг вид проблем, който да не сме очаквали (все пак, от време на време и това се случва). Има обаче и такива лицензи за свободен софтуер, които се базират на договорното право, а чрез договорите могат да се налагат значително по-голям спектър от ограничения. Това означава, че има много възможности подобни лицензи да се окажат неприемливо ограничаващи и следователно — да не са лицензи на свободен софтуер.
Нямаме възможност да изброим всички начини, по които това може да стане. Ако базираните на договорното право уговорки в един лиценз ограничават потребителя по необичаен начин, който е невъзможен за лиценз базиран на авторското право, и ако ограничението не е изброено тук като допустимо, ще трябва да помислим върху него и е вероятно да заключим, че лицензът не е свободен.
Когато говорите за свободен софтуер, най-добре е да избягвате изрази като „без пари“ или „безплатен“, защото тези термини подсказват, че проблемът е цената, а не свободата. Някои често употребявани термини като „пиратство“ въплъщават в себе си тези, които се надяваме, че не споделяте. Погледнете статията Объркващи думи и фрази, които е добре да се избягват за обяснение на тези термини. Направен е и списък с преводите на „свободен софтуер“ на различни езици.
Най-накрая, забележете, че критериите, които са изброени в тази дефиниция за понятието „свободен софтуер“, изискват внимателно размишление при интерпретирането им. За да решим дали един конкретен софтуерен лиценз покрива критериите да е лиценз на свободен софтуер, ние го преценяваме на базата на горните критерии, за да отсъдим дали съответства на тях по дух и по буква. Ако лицензът съдържа прекомерни ограничения, ние го отхвърляме, дори и ако не сме предусетили проблема в горните критерии. Понякога изискване, което е вписано в лиценз, повдига проблем, който изисква задълбочено размишление, включително и обсъждане с адвокат, преди да решим дали то е приемливо. Когато стигнем до решението на новия проблем, ние често обновяваме горните критерии, за да бъде по-ясно защо определени лицензи се определят или не като свободни.
Ако се интересувате дали определен, конкретен лиценз се явява лиценз за свободен софтуер, погледнете списъка ни на лицензи. Ако лицензът, който ви интересува, не е изброен там, можете да ни питате за него чрез е-поща на адрес <licensing@gnu.org>.
Ако възнамерявате да напишете нов лиценз, моля обърнете се към ФСС, като напишете е-писмо на горния адрес. Умножаването на различните свободни софтуерни лицензи означава повече работа за потребителите, за да ги разберат. Възможно е да сме в състояние да ви помогнем, като намерим съществуващ лиценз на свободен софтуер, който отговаря на нуждите ви.
Ако това е невъзможно, ако наистина се нуждаете от нов лиценз, с наша помощ ще сте сигурни, че лицензът наистина е лиценз на свободен софтуер и ще можете да прескочите някои практически проблеми.
Отвъд софтуера
Ръководствата за софтуер трябва да са свободни поради същите причини, поради които и софтуерът трябва да е свободен, и понеже ръководствата в известна степен са част от софтуера.
Същите аргументи имат смисъл и за други видове произведения от практическо естество — с други думи, произведения, които включват в себе си полезни знания, като образователни и справочни материали. Уикипедия е най-известният пример.
Всеки вид прозиведение може да бъде свободно, и определението за свободен софтуер може да бъде разширено до определение за свободни произведения на културата, приложимо за всякакъв вид творби.
Отворен код?
Една друга група започна да използва термина „отворен код“, за да обозначи нещо близко (но не идентично) със „свободния софтуер“. Ние предпочитаме понятието „свободен софтуер“, защото веднъж като чуете, че се отнася за свободата, а не за цената, то извиква в съзнанието — „свобода“. Думата „отворен“ просто не прави това.
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.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), така е и препратка към начина на броене в някои езици за програмиране и математиката.