Open Source, але не вільне програмне забезпечення (або навпаки) [закрито]


14

Визначення "Вільного ПЗ" від Фонду Вільного ПЗ:

"Вільне програмне забезпечення" - це питання свободи, а не ціни. Щоб зрозуміти цю концепцію, слід думати про "вільне", як "вільне слово", а не як "безкоштовне пиво".

Вільне програмне забезпечення - це питання свободи користувачів запускати, копіювати, поширювати, вивчати, змінювати та вдосконалювати програмне забезпечення. Точніше, це означає, що користувачі програми мають чотири основні свободи:

  • Свобода запуску програми з будь-якою метою (свобода 0).
  • Свобода вивчати, як працює програма, і змінювати її, щоб вона зробила те, що ти бажаєш (свобода 1). Доступ до вихідного коду є необхідною умовою цього.
  • Свобода перерозподіляти копії, щоб ви могли допомогти ближньому (свобода 2).
  • Свобода розповсюдження копій модифікованих версій іншим (свобода 3). Роблячи це, ви можете дати всій громаді можливість скористатися своїми змінами. Доступ до вихідного коду є необхідною умовою цього.

Програма - це безкоштовне програмне забезпечення, якщо користувачі мають усі ці свободи. Таким чином, ви можете вільно розповсюджувати копії, з модифікаціями або без них, або безкоштовно, або стягуючи плату за розповсюдження будь-кому в будь-якому місці. Бути вільним робити це означає (серед іншого), що вам не потрібно просити чи платити за це дозвіл.

Визначення "програмного забезпечення з відкритим кодом" від Ініціативи з відкритим кодом:

Відкритий код не означає лише доступ до вихідного коду. Умови розповсюдження програмного забезпечення з відкритим кодом повинні відповідати наступним критеріям:

  1. Безкоштовний перерозподіл Ліцензія не повинна обмежувати жодну сторону від продажу чи надання програмного забезпечення як складової сукупного розповсюдження програмного забезпечення, що містить програми з кількох різних джерел. Ліцензія не вимагає роялті чи іншої плати за такий продаж.

  2. Вихідний код Програма повинна включати вихідний код і повинна дозволяти розповсюджувати вихідний код, а також компільовану форму. Якщо певна форма продукту не поширюється з вихідним кодом, повинні бути широко оприлюднені засоби отримання вихідного коду не більше ніж розумні витрати на відтворення, бажано, завантаження через Інтернет безкоштовно. Вихідний код повинен бути бажаною формою, в якій програміст міняв би програму. Навмисно затуманений вихідний код заборонено. Проміжні форми, такі як вихід препроцесора або перекладача, не допускаються.

  3. Отримані твори Ліцензія повинна допускати модифікації та похідні твори, а також повинна поширювати їх за тими ж умовами, що і ліцензія оригінального програмного забезпечення.

  4. Цілісність вихідного коду автора Ліцензія може обмежувати розповсюдження вихідного коду в модифікованому вигляді лише в тому випадку, якщо ліцензія дозволяє розповсюджувати "патч-файли" з вихідним кодом з метою зміни програми під час збирання. Ліцензія повинна чітко дозволяти розповсюдження програмного забезпечення, побудованого з модифікованого вихідного коду. У ліцензії можуть знадобитися похідні твори, які мають інше ім'я або номер версії від оригінального програмного забезпечення.

  5. Заборона дискримінації осіб або груп Ліцензія не повинна дискримінувати будь-яку особу чи групу осіб.

  6. Немає дискримінації щодо польових зусиль Ліцензія не повинна забороняти нікому користуватися програмою у певному напрямку. Наприклад, це може не обмежувати використання програми у бізнесі або використання генетичних досліджень.

  7. Розподіл ліцензії Права, що додаються до програми, повинні стосуватися всіх, кому програма перерозподіляється без необхідності виконання додаткової ліцензії цими сторонами.

  8. Ліцензія не повинна бути специфічною для продукту Права, що додаються до програми, не повинні залежати від того, що програма є частиною певного розповсюдження програмного забезпечення. Якщо програма витягнута з цього розповсюдження і використовується або розповсюджується в межах ліцензії програми, всі сторони, яким програма перерозподілена, повинні мати ті ж права, що і ті, які надаються спільно з оригінальним розповсюдженням програмного забезпечення.

  9. Ліцензія не повинна обмежувати інше програмне забезпечення Ліцензія не повинна обмежувати інше програмне забезпечення, яке поширюється разом з ліцензійним програмним забезпеченням. Наприклад, ліцензія не повинна наполягати на тому, що всі інші програми, що поширюються на тому ж носії, повинні мати програмне забезпечення з відкритим кодом.

  10. Ліцензія повинна бути технологічно нейтральною. Надання жодної ліцензії на будь-яку індивідуальну технологію чи стиль інтерфейсу не може передбачатись.

Ці визначення, хоча вони випливають із дуже різних ідеологій, є широко сумісними, і більшість вільних програм є також програмним забезпеченням з відкритим кодом та навпаки. Я вважаю, однак, що це може бути не так: програмне забезпечення може бути з відкритим кодом, не будучи вільним, або бути вільним без відкритого коду.

Запитання

  1. Чи вірна моя віра? Чи можливо програмне забезпечення потрапляти в один табір, а не в інший?
  2. Чи існує таке програмне забезпечення насправді? Наведіть, будь ласка, приклади.

Уточнення

Зараз я вже прийняв відповідь, але, здається, я бентежив багато людей, тому можливо уточнення в порядку. Мене не запитували про різницю між copyleft (або "вірусною", хоча мені цей термін не подобається) та ліцензіями, які не копіюють ("permissive"). Я також не питав про ваші особисті ідіосинкратичні визначення "вільного" та "відкритого". Я запитував про "Вільне програмне забезпечення, визначене FSF" та "Програмне забезпечення з відкритим кодом, як визначено OSI". Чи обоє завжди однакові? Чи можливо бути одним, не бути іншим?

І відповідь, здається, полягає в тому, що неможливо бути вільним без відкриття, але можливо бути відкритим, не будучи вільним. Дякую всім, хто насправді відповів на питання.


1
Ви можете ознайомитись зі стовпцями затвердження FSF та схвалення OSI у матриці порівняння ліцензій Вікіпедії . Попередження: Ліцензії, які не були переглянуті, також вказані як "Ні".
netvope

Відповіді:


19

За даними Вікіпедії, будь-яке програмне забезпечення, ліцензоване згідно Угоди NASA з відкритим кодом, є відкритим кодом, але не є безкоштовним, тому це був би один приклад.


1
Будь-яка ліцензія, що не містить "вірусного" пункту, є відкритим кодом, але не застосовується "вільно, як у мовленні". Ліцензії MIT та BSD - це дві, серед багатьох інших.
Роберт Харві

13
@Robert Harvey, ліцензії без копіювання ("вірусні"), такі як X11, модифікований BSD або WTFPL, безумовно, є безкоштовними (і відкритими). Похідні твори можуть бути, а не бути вільними (або відкритими).
TRiG

8
@Robert, я не знав відповіді на запитання, яке я задав. Ось чому я це запитав. Ви, схоже, намагаєтесь відповісти на інше запитання, яке я не задавав.
TRiG

6
Він прийняв єдину відповідь, яка відповіла на питання ...
альтернатива

1
@Robert, @mathepic, Спробуйте прочитати пояснення, яке я додав до питання.
TRiG

7

Відповідь відповідно до фундаменту вільного програмного забезпечення - так. Див. Http://www.gnu.org/philosophy/categories.html та http://www.gnu.org/philosophy/open-source-misses-the-point.html

Витяг із першого посилання, жирним доданим мною:

Термін "програмне забезпечення з відкритим кодом" використовується деякими людьми для позначення більш-менш тієї ж категорії, що і вільне програмне забезпечення. Це не той самий клас програмного забезпечення: вони приймають деякі ліцензії, які ми вважаємо занадто обмежуючими , і є ліцензії на вільне програмне забезпечення, які вони не приймали . Однак відмінності в розширенні категорії невеликі: майже все безкоштовне програмне забезпечення є відкритим кодом, і майже все програмне забезпечення з відкритим кодом є безкоштовним.

Вибачте, не маю прикладів.


2
Питання полягало у тому, чи існують ліцензії, які є безкоштовними, але не відкритими, або навпаки. Йшлося не про філософські основи кожного.
Девід Торнлі

2
Перше посилання - це діаграма Венна, яка показує, що основа вільного програмного забезпечення вважає, що існує.
ctrl-alt-delor

Спасибі. І я знав, що є якесь Відкрите, яке не було вільним. Я не знав, що існує якийсь Безкоштовний, який не був відкритим. Я хотів би знати, який.
TRiG

Я досі не знайшов жодної ліцензії на вільне програмне забезпечення, яка не є відкритою, але я знайшов ліцензію на вільне програмне забезпечення, яку OSI не схвалює: WTFPL. Ця ліцензія дуже чітко є ліцензією з відкритим кодом, але OSI не рекомендує її. (FSF включає його до свого списку ліцензій на вільне програмне забезпечення.)
TRiG

Хоча існують філософські відмінності між цими двома (зараз висвітлюються у цій відповіді), більшість погодних ситуацій - це Open Source або Free Software - це рішення поважного комітету. Але, оскільки філософії відрізняються, в певний момент має бути певна відсутність перекриття. Але в основному, якщо програмне забезпечення одне, це також інше.
ctrl-alt-delor

4

Я спізнююсь на це, але висновок запитувача:

І відповідь, здається, полягає в тому, що неможливо бути вільним без відкриття, але можливо бути відкритим, не будучи вільним. Дякую всім, хто насправді відповів на питання.

неправда. Існує CeCILL License v2 , яка вільна (схвалена FSF), але не відкрита. Здається, це було відхилено OSI у 2005 році, тому CeCILL не є відкритим кодом.

Просто подумав, що я на це зверну увагу, оскільки тут ніхто не згадав CeCILL.


1
Але OSI також не схвалює WTFPL, хоча це безумовно ліцензія на відкритий код. Я думаю, що OSI підтримує список "рекомендованих" або "затверджених" ліцензій на відкритий код, що не означає, що ліцензія, яка не є в цьому списку, насправді не є відкритою. Це означає, що CeCILL може бути, а може і не бути відкритим. Я розберуся в це. Спасибі.
TRiG

Фактично, FSF говорить, що CeCILL сумісний з GNU GPL. Це ліцензія на Open, тому, імовірно, CeCILL також є відкритим, навіть якщо OSI не рекомендує цього. Імовірно. ІАНАЛ: Не цитуйте мене з цього приводу.
TRiG

CeCILL було відхилено в 2005 році через "незрозумілі терміни", які не були уточнені; а потім знову розглянуто в 2010 році, але, схоже, терміни ще не були уточнені. Можливо колись. Однак це офіційно не оголошено невідкритим. У 2009 році WTFPL було відхилено не тому, що він був невідкритим , а тому, що він був "зайвим для справедливої ​​ліцензії".
TRiG

1
Додаток OSI для переліку ліцензії включає (або включено) щось із того, що саме ця ліцензія зробила, що інші не зробили. Таким чином, можуть існувати ліцензії, які відповідають принципам Open Source, які не є сертифікованими OSI ліцензіями Open Source, і може бути корисним уточнити, яке визначення використовується.
Девід Торнлі

2

Умови вільного програмного забезпечення FSF стосуються програмного забезпечення. Умови відкритого програмного забезпечення OSI посилаються на ліцензію такого програмного забезпечення. Це важлива юридична відмінність.

Наприклад, згідно із законодавством США немає вільного програмного забезпечення. Закони про експорт обмежують вашу свободу експорту програмного забезпечення до Північної Кореї та Ірану. Однак, оскільки це не обмеження в ліцензії (а скоріше в законі), ці обмеження не впливають на статус Відкритого.

Звичайно, ці тонкі відмінності прихильники Open Source часто не помічають. FSF їх тонко визнає. Коли вони говорять про контроль експорту , вони обмежуються "Ліцензіями на вільне програмне забезпечення", а не "Вільним програмним забезпеченням".

Можливо і інше обертання. Наприклад, якщо ви живете в країні, де забороняється вільне програмне забезпечення, ліцензія на вільне програмне забезпечення може порушувати "Цілісність вихідного коду автора" і не бути відкритою. Це просто не одна із перелічених свобод.


-2

Можливе, щоб програмне забезпечення було "Відкритим кодом", але не "Вільним програмним забезпеченням" (вільним у етичному сенсі)

Зворотний, на мій погляд, не можливий, для Freedom 1 потрібен вихідний код.


Спасибі. Чи є у вас приклади?
TRiG

1
Вибачте, я вважаю, що я неправильно зрозумів "Open Source" у загальному розумінні, де хтось із них (не обов'язково з Ініціативою з відкритим кодом) надає вам вихідний код.
khalooo

Наприклад, якщо я хлопець із вбудованою системою, який використовує мікросхему сторонніх виробників, постачальник якої передав мені свій вихідний код драйвера пристрою для мого налаштування системи sys. Це відкритий код (у загальному сенсі), але не призначений для повторного розповсюдження або безкоштовного
дарування

Я мав на увазі "Open Source, як визначено OSI" і "Free як визначено FSF".
TRiG

-1 для нерозуміння / міс-представлення термінів з відкритим кодом та вільним програмним забезпеченням (відповіді та коментарі). Для уточнення Open Source ≠ свобода 1, визначення Open Source займає сторінку і не підсумовується у назві. Open Source - абстрактний іменник, як і aardvark, якщо ви не знаєте, що це за ім'я, не допоможе. Безкоштовне програмне забезпечення ≠ даруйте. Вільний, як у свободі.
ctrl-alt-delor

-8

Ну, я думаю, що визначення дещо заплутані, тому моя концепція: Open Source означає, що ви можете прочитати джерело. Це не означає, що ви можете скопіювати це.

Безкоштовно означає, що ви можете робити все, що завгодно. GNU GPL - це не безкоштовна ліцензія, вона багато в чому обмежує типову комерційну ліцензію. Зокрема, відсутність свободи, притаманної GPL, полягає саме в тому, щоб створити великий розрив, змусити людей обирати між копією праворуч і ліворуч. Її мета досить чітко - почати війну (яку вона розраховує перемогти!).

Я розробник програмного забезпечення з відкритим кодом. Для його побудови використовую інструменти GPL, але я не можу включати жодне програмне забезпечення GPL'd у свою систему, оскільки моє програмне забезпечення справді безкоштовне . Значення безкоштовне для будь-якого використання . Скопіюйте, модифікуйте, опублікуйте зміни чи не так, як вважаєте за потрібне, продайте, використовуйте в комерційному програмному забезпеченні. Є багато ліцензій FFAU (на мою думку, оригінали MIT / BSD).

GPL була дійсно важливою для руху руху з відкритим кодом, але зараз це вбиває.


5
Мені не дуже цікаві ваші визначення. Мене цікавлять визначення OSI та FSF.
TRiG

5
-1, GPL не вбиває рух з відкритим кодом. Існують альтернативні ліцензії, які можна вибрати з будь-якого. Крім того, якщо весь код, який ви хочете включити, - це GPL'd, то саме ця ліцензія насправді допомагає виробляти хороше програмне забезпечення за визначенням, чи не так?
Андрес Ф.

6
-1 для стороннього оренди та використання нестандартних визначень, коли в питанні використовуються стандартні.
Девід Торнлі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.