Znalazłeś bibliotekę, framework lub narzędzie open source i chcesz wiedzieć, czy możesz je wykorzystać zgodnie z planem? Odpowiedz na kilka pytań i sprawdź, które licencje to dopuszczają — wraz z analizą kompatybilności przy łączeniu z innymi licencjami.
Wynik wskaże kompatybilne licencje, niekompatybilne z powodem i macierz zgodności — co się stanie, gdy połączysz dwie licencje.
Wszystkie licencje zatwierdzone przez OSI pozwalają na użycie komercyjne — to wymóg Open Source Definition. Kluczowe różnice dotyczą tego, co musisz zrobić z kodem pochodnym i czy możesz go zachować zamkniętym.
MIT, Apache 2.0, BSD, ISC. Możesz włączyć kod do zamkniętego produktu, nie ujawniać źródeł ani nie stosować tej samej licencji. Jedynym wymogiem jest zazwyczaj zachowanie informacji o autorstwie.
LGPL, MPL 2.0, EPL 2.0. Copyleft obejmuje tylko bibliotekę lub zmodyfikowane pliki. Twój kod aplikacji może pozostać zamknięty, ale musisz umożliwić relinkowanie z podmienioną wersją biblioteki.
GPL v2, GPL v3. Połączenie z kodem GPL może objąć obowiązkami copyleft cały dystrybuowany program. Konieczne jest udostępnienie kodu na GPL. GPL nie zakazuje użycia komercyjnego — warunki dotyczą dystrybucji.
AGPL v3. Jak GPL, ale z dodatkowym obowiązkiem z sekcji 13: udostępnienie kodu użytkownikom korzystającym z usługi przez sieć — nawet bez dystrybucji oprogramowania.
Odpowiedz na pytania dotyczące planowanego użycia. Wynik pokaże kompatybilne i niekompatybilne licencje oraz macierz zgodności przy łączeniu z innymi popularnymi licencjami.
To najważniejsze pytanie dla decyzji o copyleft. Licencje z silnym copyleft (GPL, AGPL) mogą wymagać udostępnienia kodu Twojego produktu, jeśli go dystrybuujesz. Licencje permisywne i słaby copyleft pozwalają na zachowanie kodu zamkniętego.
Modyfikacja to każda zmiana w kodzie: naprawa błędów, dodanie funkcji, refaktoryzacja, adaptacja do własnych potrzeb. Nie chodzi o pisanie kodu „obok" biblioteki, ale o zmiany w jej plikach.
Dystrybucja to: sprzedaż lub bezpłatne przekazanie oprogramowania innym osobom, publikacja aplikacji mobilnej, sprzedaż urządzenia z wbudowanym oprogramowaniem, udostępnienie kodu w repozytorium. Copyleft aktywuje się przy dystrybucji — nie przy wewnętrznym użytku.
Licencje copyleft wymagają, żeby opracowanie było udostępnione na tej samej lub kompatybilnej licencji. Nie możesz wtedy wybrać licencji zastrzeżonej (©) ani zupełnie innej otwartej licencji niezgodnej z oryginałem.
Usługa sieciowa to aplikacja webowa, API, mikroserwis lub platforma SaaS, z której inni korzystają przez przeglądarkę lub HTTP — bez pobierania oprogramowania. To kluczowe pytanie dla AGPL v3.
Licencje OSI-approved są globalne, nieograniczone czasowo i podmiotowo. Nie oferują: ograniczeń terytorialnych (np. tylko Polska), ograniczeń czasowych (np. na 3 lata), ograniczeń dla wybranych podmiotów (np. tylko dla uczelni), ograniczeń do określonych platform ani innych niestandardowych klauzul.