Zrobiłem kilka projektów typu open source i planuję zrobić więcej w przyszłości. Jak dotąd wydałem cały mój kod na licencji GPL, ale przeczytałem kilka artykułów, które twierdzą, że GPL jest zbyt restrykcyjne, aby jakikolwiek kod mógł być używany w środowisku korporacyjnym. To rzekomo zmniejsza składki.
Oto, co chciałem osiągnąć:
Dla pełnych aplikacji :
- bez komercyjnego wykorzystania, z wyjątkiem wsparcia sprzedaży aplikacji (tzn. aplikacji nie można sprzedać, ale wszystko wokół niej może)
W przypadku bibliotek (komponenty, wtyczki, ...):
- może być włączony do projektów komercyjnych bez modyfikacji
- wszelkie modyfikacje biblioteki / komponentu muszą być otwarte (przekazane z powrotem) - nie ma to wpływu na pozostałą część projektu, komercyjną lub nie
W przypadku aplikacji GPL nadal wydaje się logicznym wyborem. W przypadku bibliotek moje prymitywne rozumienie licencji powoduje, że uważam, że LGPL jest dobrym rozwiązaniem, ale nie jestem pewien. Przejrzałem licencję MIT i wydaje się to zbyt liberalne.
Przez większość czasu chcę, aby ludzie używali mojego kodu w dowolnym miejscu, pod warunkiem, że wszelkie ulepszenia zostaną wniesione z powrotem.
To prowadzi mnie do moich pytań: czy LGPL jest logicznym wyborem dla bibliotek, komponentów, wtyczek itp. Typu open source? Czy jest lepsza alternatywa? Czy GPL jest dobrym wyborem dla moich aplikacji, czy jest coś lepszego?
Aktualizacja:
Dla tych, którzy są zainteresowani moją ostateczną decyzją, zdecydowałem się wydać moje biblioteki w ramach systemu wielu licencji, MPL, LGPL i GPL. Dzięki temu praktycznie każdy może korzystać z mojego kodu bez żadnych zobowiązań, chyba że zmodyfikuje go zgodnie z MPL, w którym to przypadku należałoby go oddać.
Oznacza to, że kod może być używany zarówno przez FSF, jak i oprogramowanie zastrzeżone, ale zapobiega się „złemu” komercyjnemu wykorzystaniu (a przynajmniej tak sądzę).