Dlaczego jQuery jest wydawany na MIT, a nie na LGPL?


18

Dlaczego jQuery jest wydawany na MIT, a nie na LGPL?

Jakie są zalety korzystania z MIT w porównaniu z LGPL dla frameworka?


12
Dlaczego powinien być wydany na licencji LGPL?

1
Można argumentować, że licencje MIT / BSD nie zmuszają deweloperów do oddawania społeczności open source, podczas gdy LGPL wymusza wszelkie modyfikacje, aby były open source. Jednak, jak wspomniał Mason Wheeler, jeśli chodzi o to, aby rozpowszechnić go w jak największym stopniu za pomocą mniejszych zasad, rozumiem ten argument.
corgrath

Pytanie powinno brzmieć: „Dlaczego jQuery jest udostępniany pod MIT, a nie CC0 ?”
Pacerier

Odpowiedzi:


16

LGPL jest „zakaźna”, co oznacza, że ​​jeśli go użyjesz, ryzykujesz (L) GPL również swoją własną pracą. GPL (oraz, w zależności od okoliczności, także LGPL) praktycznie wyklucza użycie w projekcie o zamkniętym źródle.

Pytanie powinno zostać sformułowane na odwrót: dlaczego produkt X jest licencjonowany na licencji (L) GPL, a nie MIT / Apache / BSD / Mozilla? Te ostatnie są, IMO, znacznie bliższe duchowi „wolnego” oprogramowania niż rodzina GPL (w końcu nie można narzucać ludziom wolności).


6
+1, także GPL, aw mniejszym stopniu LGPL jest stanowiskiem politycznym, a także licencją.
Jeremy

4
Jest to tylko „zakaźne”, jeśli chcesz sprzedać oprogramowanie, samo korzystanie z niego jest w porządku, a jeśli dystrybuujesz za darmo, GPL też jest w porządku. Również obowiązek korzystania z licencji GPL jest ograniczony do kodu GPL, który zmieniasz. Zwykłe korzystanie z niego nie wiąże się z żadnymi zobowiązaniami.
James Anderson

6
@ Licencje Jeremy inne niż GPL mają swoje własne stanowiska polityczne. to, że ignorujesz politykę, nie oznacza, że ​​jej tam nie ma.
Rudolf Olah

3
Pierwsze zdanie nie jest jasne. W przypadku oprogramowania LGPL , jeśli „używasz go” jak w trakcie modyfikacji i rozpowszechniasz go, to tak, musisz licencjonować swoje modyfikacje na podstawie licencji LGPL. Jeśli „użyjesz” tego, co zawiera niezmodyfikowana biblioteka LGPL w swoim kodzie, nie musisz udzielać licencji na swój kod LGPL , ale musisz wyraźnie stwierdzić, że zawiera on kod LGPL. Z GPL ty nie trzeba używać licencji GPL, w obu przypadkach.
naught101

3
Ponadto GPL nie „zmusza ludzi do wolności”, podobnie jak karta wolności słowa zmusza ludzi do mówienia, co mają na myśli. Zawsze możesz napisać własny kod, który robi to samo i zwolnić go na dowolnej licencji.
naught101

26

W bardzo krótkim podsumowaniu:

  • GPL: jeśli używasz mojego kodu w swoim, musisz rozpowszechniać swój kod, tak jak ja dla mojego;

  • LGPL: jeśli zmodyfikujesz mój kod, musisz rozpowszechniać swoje modyfikacje. Możesz dołączyć niezmodyfikowany kod LGPL do kodu zastrzeżonego pod pewnymi warunkami.

  • MIT: rób co chcesz z moim kodem, z wyjątkiem udawania, że ​​kod jest twój

Są też drobne odciski, które mogą pomieszać sprawę i cele polityczne FSF - ale niektórzy używają (L) GPL bez dzielenia się nimi.


4
LGPL ma znacznie więcej niż tylko to. Jest to w rzeczywistości dużo bliższe jednuliniowemu opisowi MPL. LGPL ma również ograniczenia co do tego, jakiego rodzaju linkowania możesz, a czego nie możesz wykonać, a „linkowanie” jest niejasną koncepcją, jeśli chodzi o języki skryptowe, takie jak JavaScript.
Mason Wheeler

5

Cóż, oczywiste jest to, że jest to bardziej liberalna licencja. Pozwala na szersze wykorzystanie biblioteki, bez ograniczeń dotyczących dzieł pochodnych, które przynosi (L) GPL. Jeśli celem jest, aby wiele osób korzystało z Twojej biblioteki, a nie próbować zmuszać programistów do dostosowania się do określonej ideologii, może to być przydatne.


1

LGPL oferuje więcej korzyści twórcy oprogramowania, podczas gdy MIT oferuje więcej korzyści użytkownikowi oprogramowania.

Jeśli chcesz, aby ludzie z radością łączyli twoje oprogramowanie ze swoim oprogramowaniem, wybierz licencję MIT. Jeśli chcesz, aby twoje oprogramowanie było pakowane osobno i nigdy nie było tak ściśle zintegrowane z pakietem, który go używa, skorzystaj z licencji LGPL.

LGPL jest mniej restrykcyjna niż GPL. Jeśli napiszesz rozszerzenie do programu objętego licencją LGPL, NIE MUSISZ ZWOLNIĆ ŹRÓDŁA. Jeśli zmienisz sam program , musisz zwolnić zmiany. Z GPL musisz zwolnić źródło rozszerzeń. Posiadając licencję MIT, musisz tylko potwierdzić, że używasz kodu w swojej aplikacji.


4
LGPL ma przynosić korzyści użytkownikowi - nie użytkownikowi kodu LGPL, ale użytkownikowi kodu napisanego przez użytkownika kodu LGPL. Powodem jest to, że ten drugi użytkownik będzie miał kod źródłowy modyfikacji pierwszego użytkownika, ponieważ LGPL wymaga, aby został udostępniony.
Tom Anderson

1
@tom: Zarówno GPL, jak i LGPL skupiają się na przywróceniu kodu społeczności OSS, podczas gdy licencje Apache, BSD i MIT służą raczej do bezpłatnego udostępniania kodu dla produktów komercyjnych.
Satanicpuppy

1
To inny sposób na powiedzenie tego samego. Ale Stallman i FSF zawsze opowiadali się za GPL w kwestii swobody użytkowników - mówią o czterech swobodach, z których korzystają użytkownicy oprogramowania GPL. Celem jest wolność jednostek, a nie zdrowie społeczności.
Tom Anderson
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.