Czy mogę dołączyć kod na licencji GPL do produktu na licencji MIT?
Możesz. GPL jest wolnym oprogramowaniem, podobnie jak MIT, obie licencje nie ograniczają Cię do łączenia kodu, gdzie „dołączenie” jest zawsze dwukierunkowe.
W przypadku praw autorskich do dzieła połączonego (tj. Dwóch lub więcej utworów tworzą razem jeden utwór) nie ma większego znaczenia, czy jedno dzieło jest „większe” od drugiego, czy nie.
Jeśli więc włączysz kod na licencji GPL do produktu na licencji MIT, jednocześnie włączysz produkt na licencji MIT do kodu na licencji GPL.
Po drugie, OSI wymieniło następujące kryteria (bardziej szczegółowo) dla obu licencji (MIT i GPL):
- Bezpłatna redystrybucja
- Kod źródłowy
- Dzieła pochodne
- Integralność kodu źródłowego autora
- Brak dyskryminacji osób lub grup
- Brak dyskryminacji na polach wysiłków
- Dystrybucja licencji
- Licencja nie może dotyczyć konkretnego produktu
- Licencja nie może ograniczać innego oprogramowania
- Licencja musi być neutralna pod względem technologii
Oba pozwalają na tworzenie połączonych prac, o co prosiłeś.
Jeżeli połączenie tych dwóch utworów jest uważane za pochodne, to nie jest to również ograniczone przez obie licencje.
Obie licencje nie ograniczają rozpowszechniania oprogramowania.
Wydaje mi się, że główna różnica między licencją MIT a GPL polega na tym, że MIT nie wymaga modyfikacji z otwartym kodem źródłowym, podczas gdy GPL tak.
GPL nie wymaga od ciebie wypuszczania modyfikacji tylko dlatego, że je wprowadziłeś. To nie jest dokładne.
Możesz to połączyć z dystrybucją oprogramowania na GPL, o co nie pytałeś bezpośrednio.
Czy to prawda - czy GPL jest bardziej restrykcyjna niż licencja MIT?
Oto jak to rozumiem:
Jeśli chodzi o dystrybucję, musisz objąć cały pakiet licencją GPL. Kod MIT w pakiecie będzie nadal dostępny w ramach MIT, podczas gdy GPL dotyczy całego pakietu, jeśli nie jest ograniczona wyższymi prawami.
„Restrykcyjny” lub „bardziej restrykcyjny” / „mniej restrykcyjny” zależy w dużej mierze od punktu widzenia. Dla użytkownika oprogramowania MIT może skutkować bardziej ograniczonym oprogramowaniem niż to dostępne na GPL, nawet niektórzy nazywają GPL bardziej restrykcyjną obecnie. Ten użytkownik w szczególności będzie nazywał MIT bardziej restrykcyjnym. To subiektywne, aby to powiedzieć, a różni ludzie udzielą ci różnych odpowiedzi na to pytanie.
Ponieważ mówienie o ograniczeniach różnych licencji jest subiektywne, powinieneś pomyśleć o tym, co chciałbyś osiągnąć:
- Jeśli chcesz ograniczyć użycie swoich modyfikacji, MIT może być bardziej restrykcyjny niż GPL w zakresie dystrybucji i może być tym, czego szukasz.
- Jeśli chcesz mieć pewność, że wolność twojego oprogramowania nie jest tak bardzo ograniczona przez użytkowników, którym je rozprowadzasz, możesz chcieć wydać je na GPL zamiast MIT.
Dopóki jesteś autorem, to Ty decydujesz.
Tak więc najbardziej restrykcyjną osobą w historii jest autor, niezależnie od tego, na którą licencję się zdecyduje;)