Oprogramowanie typu open source, ale nie wolne oprogramowanie (lub odwrotnie) [zamknięte]

14

Definicja „wolnego oprogramowania” z Free Software Foundation:

„Wolne oprogramowanie” to kwestia wolności, a nie ceny. Aby zrozumieć tę koncepcję, należy myśleć o „wolnym” jak o „wolnym mowie”, a nie o „wolnym piwie”.

Wolne oprogramowanie to kwestia wolności użytkowników do uruchamiania, kopiowania, rozpowszechniania, studiowania, zmiany i ulepszania oprogramowania. Mówiąc dokładniej, oznacza to, że użytkownicy programu mają cztery podstawowe swobody:

  • Swoboda uruchamiania programu w dowolnym celu (wolność 0).
  • Swoboda studiowania działania programu i zmieniania go, aby działał tak, jak chcesz (wolność 1). Dostęp do kodu źródłowego jest warunkiem tego.
  • Swoboda redystrybucji kopii, aby pomóc sąsiadowi (wolność 2).
  • Swoboda rozpowszechniania kopii zmodyfikowanych wersji innym użytkownikom (wolność 3). W ten sposób możesz dać całej społeczności szansę na skorzystanie z twoich zmian. Dostęp do kodu źródłowego jest warunkiem tego.

Program jest wolnym oprogramowaniem, jeśli użytkownicy mają wszystkie te swobody. Dlatego powinieneś mieć swobodę redystrybucji kopii, zarówno z modyfikacjami, jak i bez nich, albo za darmo, albo pobierając opłatę za dystrybucję, do kogokolwiek w dowolnym miejscu. Wolność robienia tych rzeczy oznacza (między innymi), że nie musisz o to prosić ani płacić za pozwolenie.

Definicja „oprogramowania open source” z inicjatywy Open Source:

Otwarte źródło to nie tylko dostęp do kodu źródłowego. Warunki dystrybucji oprogramowania typu open source muszą spełniać następujące kryteria:

  1. Bezpłatna redystrybucja Licencja nie będzie ograniczać żadnej strony do sprzedaży lub udostępniania oprogramowania jako części zagregowanej dystrybucji oprogramowania zawierającej programy z kilku różnych źródeł. Licencja nie wymaga opłaty licencyjnej ani innych opłat za taką sprzedaż.

  2. Kod źródłowy Program musi zawierać kod źródłowy i musi umożliwiać dystrybucję w kodzie źródłowym, a także w skompilowanej formie. W przypadku, gdy jakaś forma produktu nie jest rozpowszechniana z kodem źródłowym, muszą istnieć dobrze nagłośnione sposoby uzyskania kodu źródłowego za rozsądną cenę nie przekraczającą rozsądnego kosztu powielania, najlepiej pobieranie przez Internet bez opłat. Kod źródłowy musi być preferowaną formą, w której programista zmodyfikuje program. Celowo zaciemniony kod źródłowy jest niedozwolony. Formy pośrednie, takie jak dane wyjściowe preprocesora lub tłumacza, są niedozwolone.

  3. Dzieła pochodne Licencja musi dopuszczać modyfikacje i dzieła pochodne oraz umożliwiać ich dystrybucję na takich samych warunkach jak licencja oryginalnego oprogramowania.

  4. Integralność kodu źródłowego autora Licencja może ograniczać rozpowszechnianie kodu źródłowego w zmodyfikowanej formie tylko wtedy, gdy licencja zezwala na dystrybucję „plików łatek” wraz z kodem źródłowym w celu modyfikacji programu w czasie kompilacji. Licencja musi wyraźnie zezwalać na dystrybucję oprogramowania zbudowanego ze zmodyfikowanego kodu źródłowego. Licencja może wymagać, aby utwory pochodne nosiły inną nazwę lub numer wersji niż oryginalne oprogramowanie.

  5. Zakaz dyskryminacji osób lub grup Licencja nie może dyskryminować żadnej osoby lub grupy osób.

  6. Zakaz dyskryminacji w obszarach działalności Licencja nie może nikomu ograniczać możliwości korzystania z programu w określonym obszarze działalności. Na przykład, nie może ograniczać możliwości używania programu w biznesie lub badań genetycznych.

  7. Dystrybucja licencji Prawa związane z programem muszą obowiązywać wszystkich, do których program jest rozpowszechniany bez potrzeby wykonywania dodatkowej licencji przez te strony.

  8. Licencja nie może być specyficzna dla produktu Prawa związane z programem nie mogą zależeć od tego, czy program jest częścią określonej dystrybucji oprogramowania. Jeśli program zostanie wyodrębniony z tej dystrybucji i będzie używany lub dystrybuowany zgodnie z warunkami licencji programu, wszystkie strony, którym program jest rozpowszechniany, powinny mieć takie same prawa, jak te, które są przyznawane w połączeniu z oryginalną dystrybucją oprogramowania.

  9. Licencja nie może ograniczać innego oprogramowania Licencja nie może nakładać ograniczeń na inne oprogramowanie dystrybuowane wraz z oprogramowaniem licencjonowanym. Na przykład licencja nie może wymagać, aby wszystkie inne programy dystrybuowane na tym samym nośniku musiały być oprogramowaniem typu open source.

  10. Licencja musi być neutralna pod względem technologicznym Żadne postanowienie licencji nie może być oparte na żadnej indywidualnej technologii lub stylu interfejsu.

Te definicje, choć wywodzą się z bardzo różnych ideologii, są zasadniczo kompatybilne, a większość Wolnego Oprogramowania jest również oprogramowaniem Open Source i odwrotnie. Uważam jednak, że może się tak nie zdarzyć: oprogramowanie może być Open Source bez bycia wolnym lub być wolne bez bycia otwartym.

pytania

  1. Czy moje przekonanie jest prawidłowe? Czy oprogramowanie może wpaść do jednego obozu, a nie do drugiego?
  2. Czy faktycznie istnieje takie oprogramowanie? Proszę podać przykłady.

Wyjaśnienie

Już zaakceptowałem odpowiedź, ale wydaje się, że pomyliłem wiele osób, więc być może należy wyjaśnić. Ja nie pytając o różnicy między copyleft (lub „wirusowy”, choć nie lubię tego słowa) i nie-copyleft ( „liberalne”) licencji. Nie pytałem też o twoje osobiste idiosynkratyczne definicje „darmowy” i „otwarty”. Pytałem o „Wolne oprogramowanie zgodnie z definicją FSF” i „Oprogramowanie Open Source zgodnie z definicją OSI”. Czy te dwa zawsze są takie same? Czy można być jednym bez bycia drugim?

Wydaje się, że odpowiedź jest taka, że ​​nie można być wolnym bez bycia otwartym, ale można być otwartym bez bycia wolnym. Dziękuję wszystkim, którzy faktycznie odpowiedzieli na pytanie.

Wymuskany
źródło
1
Możesz rzucić okiem na kolumny Zatwierdzenie FSF i Zatwierdzenie OSI w macierzy porównania licencji Wikipedii . Uwaga: Licencje, które nie zostały sprawdzone, są również oznaczone jako „Nie”.
netvope
To pytanie jest omawiane na Meta .
yannis,

Odpowiedzi:

19

Według Wikipedii każde oprogramowanie licencjonowane na podstawie umowy NASA Open Source jest oprogramowaniem typu open source, ale nie jest bezpłatne, więc byłby to jeden z przykładów.

filozofodad
źródło
1
Każda licencja, która nie zawiera klauzuli „wirusowej”, jest oprogramowaniem typu open source, ale nie jest egzekwowana jako „wolna jak w mowie”. Licencje MIT i BSD to dwie, między innymi.
Robert Harvey
13
@Robert Harvey, licencje inne niż copyleft („wirusowe”), takie jak X11, zmodyfikowane BSD lub WTFPL, z pewnością bezpłatne (i otwarte). Prace pochodne mogą, ale nie muszą być bezpłatne (lub otwarte).
TRiG
8
@Robert, nie znałem odpowiedzi na zadane pytanie. Dlatego o to zapytałem. Wygląda na to, że próbujesz odpowiedzieć na inne pytanie, na które nie zadałem.
TRiG
6
Zaakceptował jedyną odpowiedź, która odpowiedziała na pytanie ...
alternatywa
1
@Robert, @mathepic, spróbuj przeczytać notatkę wyjaśniającą, którą dodałem do pytania.
TRiG
7

Odpowiedź według fundacji wolnego oprogramowania brzmi: tak. Zobacz http://www.gnu.org/philosophy/categories.html i http://www.gnu.org/philosophy/open-source-misses-the-point.html

Wyciąg z pierwszego linku, pogrubiony przeze mnie dodany:

Termin „oprogramowanie open source” jest używany przez niektórych ludzi, aby oznaczać mniej więcej tę samą kategorię co wolne oprogramowanie. Nie jest to dokładnie ta sama klasa oprogramowania: akceptują niektóre licencje, które uważamy za zbyt restrykcyjne , i istnieją licencje wolnego oprogramowania, których nie zaakceptowały . Różnice w rozszerzeniu kategorii są jednak niewielkie: prawie całe wolne oprogramowanie jest oprogramowaniem typu open source, a prawie całe oprogramowanie typu open source jest bezpłatne.

Przepraszam, nie mam przykładów.

ctrl-alt-delor
źródło
2
Pytanie dotyczyło tego, czy istnieją licencje, które są bezpłatne, ale nie mają licencji Open Source lub odwrotnie. Nie chodziło o filozoficzne podstawy każdego z nich.
David Thornley,
2
Pierwszy link to diagram Venna, który pokazuje, że fundacja wolnego oprogramowania uważa, że ​​tak jest.
ctrl-alt-delor
Dzięki. I wiedziałem, że było trochę Open, które nie były darmowe. Nie wiedziałem, że jest jakiś darmowy, który nie byłby otwarty. Chciałbym wiedzieć, który.
TRiG
Nadal nie znalazłem żadnych licencji Wolnego Oprogramowania, które nie są otwarte, ale znalazłem licencję Wolnego Oprogramowania, której OSI nie zatwierdza: WTFPL. Ta licencja jest bardzo wyraźnie licencją typu Open Source, ale OSI jej nie zaleca. (FSF umieszcza ją na liście licencji wolnego oprogramowania.)
TRiG
Chociaż istnieją między nimi dwie filozoficzne różnice (teraz ujęte w tej odpowiedzi), w większości przypadków jest to oprogramowanie typu open source lub wolne oprogramowanie zależy od decyzji szanowanej społeczności. Ale ponieważ filozofie się różnią, w pewnym momencie musi wystąpić brak nakładania się. Ale przede wszystkim, jeśli oprogramowanie jest jednym, to także drugim.
ctrl-alt-delor
4

Spóźnię się z tym, ale wniosek pytającego:

Wydaje się, że odpowiedź jest taka, że ​​nie można być wolnym bez bycia otwartym, ale można być otwartym bez bycia wolnym. Dziękuję wszystkim, którzy faktycznie odpowiedzieli na pytanie.

to nie jest prawda. Istnieje licencja CeCILL v2 , która jest darmowa (zatwierdzona przez FSF), ale nie otwarta. Wygląda na to, że został odrzucony przez OSI w 2005 roku, więc CeCILL nie jest Open Source.

Pomyślałem, że zwrócę na to uwagę, ponieważ nikt tutaj nie wspomniał o CeCILL.

Matryca Stochastyczna
źródło
1
Ale OSI też nie akceptuje WTFPL, mimo że jest to zdecydowanie licencja Open Source. Myślę, że OSI utrzymuje listę „zalecanych” lub „zatwierdzonych” licencji Open Source, co niekoniecznie oznacza, że ​​licencja nie znajdująca się na tej liście nie jest w rzeczywistości otwarta. Oznacza to, że CeCILL może być otwarty lub nie. Przyjrzę się temu. Dzięki.
TRiG
W rzeczywistości FSF twierdzi, że CeCILL jest zgodny z GNU GPL. Jest to licencja otwarta, więc prawdopodobnie CeCILL jest również otwarty, nawet jeśli OSI tego nie zaleca. Prawdopodobnie. IANAL: Nie cytuj mnie.
TRiG
CeCILL został odrzucony w 2005 r. Z powodu „niejasnych warunków”, które nie zostały wyjaśnione; a następnie ponownie rozpatrzono w 2010 r., ale wydaje się, że warunki nie zostały jeszcze wyjaśnione. Może pewnego dnia. Jednak nie zostało to formalnie uznane za nieotwarte. WTFPL został odrzucony w 2009 r. Nie dlatego, że nie był otwarty, ale dlatego, że był „zbędny w stosunku do uczciwej licencji”.
TRiG
1
Aplikacja OSI do wyszczególnienia licencji zawiera (lub zawiera) coś, co zrobiła ta konkretna licencja, czego nie zrobili inni. Dlatego mogą istnieć licencje spełniające zasady Open Source, które nie są licencjami Open Source certyfikowanymi przez OSI, i może być użyteczne wyjaśnienie, jakiej definicji się używa.
David Thornley,
2

Warunki wolnego oprogramowania FSF odnoszą się do oprogramowania. Warunki otwartego oprogramowania OSI odnoszą się do licencji na takie oprogramowanie. To ważne prawne rozróżnienie.

Na przykład zgodnie z prawem Stanów Zjednoczonych nie ma wolnego oprogramowania. Przepisy eksportowe ograniczają swobodę eksportowania oprogramowania do Korei Północnej i Iranu. Ponieważ jednak nie są to ograniczenia w licencji (a raczej w prawie), ograniczenia te nie wpływają na status Otwarty.

Oczywiście te subtelne rozróżnienia są często pomijane przez zwolenników Open Source. FSF subtelnie je uznaje. Mówiąc o kontroli eksportu , ograniczają się do „Licencji wolnego oprogramowania”, a nie „Wolnego oprogramowania”.

Odwrotna sytuacja jest również możliwa. Na przykład, jeśli mieszkasz w kraju, który dopuszcza Wolne Oprogramowanie, licencja Wolnego Oprogramowania może naruszać „Integralność kodu źródłowego autora” i nie być otwarta. To po prostu nie jedna z wymienionych swobód.

MSalters
źródło
-2

Oprogramowanie może być „Open Source”, ale nie „Wolne oprogramowanie” (wolne w innym znaczeniu)

Odwrotna myślę, że nie jest możliwa, Freedom 1 wymaga kodu źródłowego.

khalooo
źródło
Dzięki. Czy masz jakieś przykłady?
TRiG
1
Przykro mi, myślę, że źle zrozumiałem „Open Source” w ogólnym sensie, w którym ktoś (niekoniecznie Open Source Initiative) zapewnia ci kod źródłowy.
khalooo
np. jeśli jestem facetem z wbudowanym systemem, który korzysta z zewnętrznego układu, którego sprzedawca podał mi kod źródłowy sterownika urządzenia dla mojej modyfikacji systemu. Jest to oprogramowanie typu open source (w sensie ogólnym), ale nie jest przeznaczone do ponownej dystrybucji lub darmowego rozdawania
khalooo
Miałem na myśli „Open Source zgodnie z definicją OSI” i „Free zgodnie z definicją FSF”.
TRiG
-1 za brak zrozumienia / brak reprezentacji warunków Open Source i wolnego oprogramowania (odpowiedzi i komentarze). Aby wyjaśnić wolność Open Source ≠ 1, definicja Open Source przyjmuje stronę i nie jest sumowana w nazwie. Open Source to rzeczownik abstrakcyjny, podobnie jak aardvark, jeśli nie wiesz, co to jest, nazwa nie pomoże. Darmowe oprogramowanie ≠ rozdawaj. Wolny jak w wolności.
ctrl-alt-delor
-8

Cóż, myślę, że wszystkie definicje są trochę zagmatwane, więc moja koncepcja brzmi: Open Source oznacza, że ​​możesz czytać źródła. To nie znaczy, że możesz go skopiować.

Darmowy oznacza, że ​​możesz robić, co chcesz. GNU GPL nie jest licencją bezpłatną, pod wieloma względami jest bardziej restrykcyjna niż typowa licencja komercyjna. W szczególności brak swobody tkwiący w GPL polega właśnie na stworzeniu wielkiego podziału, aby ludzie mogli wybierać między kopiowaniem z prawej a lewej. Jego celem jest dość wyraźnie rozpoczęcie wojny (która spodziewa się wygrać!).

Jestem programistą darmowego oprogramowania Open Source. Korzystam z narzędzi GPL, aby je zbudować, ale nie mogę dołączyć żadnego oprogramowania GPL do mojego systemu, ponieważ moje oprogramowanie jest naprawdę bezpłatne . Oznacza to, że za darmo . Skopiuj, zmodyfikuj, opublikuj zmiany lub nie według własnego uznania, sprzedaj, użyj w komercyjnym oprogramowaniu. Istnieje wiele licencji FFAU (moim zdaniem oryginalne MIT / BSD).

GPL była bardzo ważna dla uruchomienia ruchu Open Source, ale teraz go zabija.

Yttrill
źródło
5
Nie jestem bardzo zainteresowany twoimi definicjami. Interesują mnie definicje OSI i FSF.
TRiG
5
-1, GPL nie zabija ruchu Open Source. W każdym razie istnieją alternatywne licencje. Ponadto, jeśli cały kod, który chcesz dołączyć, jest na licencji GPL, to ta konkretna licencja faktycznie pomaga w tworzeniu dobrego oprogramowania z definicji, prawda?
Andres F.,
6
-1 do zewnętrznego rantowania i używania niestandardowych definicji, gdy pytanie używa standardowych.
David Thornley,