Kiedyś przeprowadziłem wywiad w firmie konsultingowej, w której przyszło mi do głowy, że używają produktów typu open source (co jest świetne, intensywnie korzystałem z Hibernacji, JBossa itp.). Jedną rzeczą, która mnie zaskoczyła, było to, że zapytałem, czy podczas pisania aplikacji dla klientów używali OSS na licencji GPL, powiedzieli „Jasne, cały czas! Tak długo, jak klient otrzymuje to, czego chce i jest szczęśliwy”. Teraz nie jestem prawnikiem ani wielkim entuzjastą licencji, ale miałem wrażenie, że używając kodu GPL (powiedzmy, że dołączasz bibliotekę), musisz zwolnić całą aplikację na tej samej licencji. Kiedy zwróciłem na to uwagę, otrzymałem szybką odpowiedź: „Po zakończeniu dajemy klientom cały kod źródłowy, więc to naprawdę nie jest problem”.
Nie chcąc dalej naciskać na kwestię (wywiady nie są miejscem takich argumentów), pozwalam jej się przesuwać. Jednak nadal mnie to niepokoi w związku z tą konkretną praktyką biznesową. Jakie jest oficjalne słowo na kodzie licencjonowanym GPL i jak musi być „otwarte”? Czy musisz to opublikować i powiedzieć: „Moja firma korzystała z tej biblioteki, więc tutaj jest strona, na której możesz pobrać naszą aplikację systemową do zakupów i zamówień, którą budujemy miliony dolarów”. Czy w tej sytuacji firma ma prawo używać kodu GPL bez wiedzy klienta? Czy wystarczy „dać im źródło”?
źródło
Jako konsultant staram się wcześnie poruszyć problemy z licencją u mojego klienta, aby mógł dokonać świadomego wyboru. Jeśli najlepsza technologia, którą można zastosować do ich problemu, jest objęta licencją GPL, ale nie mogą one być zgodne z licencją, to nie mogę jej użyć. W praktyce miało to dwa skutki.
Po pierwsze, wielu chętnie płaci za produkt komercyjny, aby uniknąć tego problemu. Jest to szczególnie powszechne w świecie systemów wbudowanych, w którym zgodność z GPL wymagałaby opublikowania pełnego projektu sprzętu i udokumentowania, jak to wszystko działa, aby spełnić ducha GPL, co jest próbą umożliwienia użytkownikowi końcowemu zmiany produktu . Chociaż możliwe jest wytwarzanie produktów, które są otwarte, wymaga to dużego zaangażowania na wszystkich poziomach firmy. Większy problem polega na tym, że wiele komponentów projektu jest nam udokumentowanych przez ich twórców w ramach NDA i jest praktycznie niemożliwe utworzenie kodu zgodnego z GPL, który korzysta z dokumentacji wydanej w ramach NDA.
Po drugie, teraz preferujemy licencję MIT i jej wielu krewnych (co jasno pokazuje, że komercyjne wykorzystanie jest dopuszczalne) nad GPL przy każdej wersji. Nie spotkałem się z żadnym problemem ze strony klienta, aby udostępnić poprawki i ulepszenia wprowadzone w odpowiednich społecznościach produktów. Ponieważ licencja jest zezwalająca, mogę przestrzegać moich zobowiązań wynikających z umowy NDA, zadowolić mojego klienta i wnosić wkład w odpowiednie społeczności.
źródło
Open source niekoniecznie oznacza darmowy.
IANAL też, ale ogólnie mówiąc, GPL wymaga podania kodu źródłowego dla twojego projektu. Z pewnością możesz sprzedać produkt komuś innemu. Uważam jednak, że nie można ich powstrzymać od rozdania. Prawdopodobnie to sprawia, że większość oprogramowania GPL jest darmowa, jak w przypadku piwa. Jestem całkiem pewien, że nie musisz publikować swojego kodu w world + dog tylko dlatego, że jest on na licencji GPL.
Od preambuły do v3 GPL (podkreśl moje własne):
( źródło )
Czy w tej sytuacji firma ma prawo używać kodu GPL bez wiedzy klienta? Czy wystarczy „dać im źródło”?
To jest nieco inne pytanie. Jeśli klient ma jakieś oczekiwania, a jest to podyktowane umową, firma może mieć problem. W przeciwnym razie od nich zależy, jak najlepiej wykonać to zadanie. Powinny jednak zawierać powiadomienie w kodzie źródłowym dotyczące licencji. Nie jestem pewien, czy muszą ujawnić to swojemu klientowi w jakikolwiek inny sposób.
źródło
Nie, masz rację. Dlatego:
Zastanów się, czy mamy aplikację na licencji GPL. Teraz nie może być używany przez zastrzeżony kod.
Gdyby wystarczyło tylko otworzyć kod źródłowy korzystający z GPL, mógłbym otworzyć projekt oparty na nim jako BSD.
W takim przypadku oprogramowanie zastrzeżone mogłoby korzystać z produktu GPL.
źródło