Stworzyłem aplikację w RoR, którą jest zainteresowany jeden z klientów. Jedną z opcji jest przyznanie długoterminowej licencji na używanie oraz modyfikowanie aplikacji. Pierwszą rzeczą jaka przychodzi mi do głowy to sprawdzenie licencji bibliotek użytych w projekcie ? Z tego co widziałem, większość jest na MIT. Czy na coś jeszcze powinienem zwrócić uwagę jeśli chodzi o kod ?
Radzę uważać na licencje wirusowe, np. GPL. Jeżeli korzystasz z takiej licencji, to twój kod powinien być udostępniony dokładnie na takiej samej licencji.
Jeżeli w oprogramowaniu masz GPL-3 to niestety jedyną licencją jaką możesz użyc to jest GPL-3, możesz wtedy sprzedać projekt klientowi, ale GPL powoduje że on bedzie mógł odsprzedawać go dalej.
Generalnie najlepiej jest wywalić wszystko co jest na GPLu (LGPL jest ok).
Dzięki za odpowiedzi. Nasuwa mi się jeszcze jedno pytanie. W trakcie tworzenia softu testowałem płatną bibliotekę, no i poszło parę commitów z załączonymi js’ami. Finalnie zrezygnowałem z używania jej w projekcie, ale klient prawdopodobnie dostanie też źródła. Czy problemem jest to, że w repozytorium istenieją źródła tej biblioteki ?
Jeżeli nie przekażesz całej historii projektu to nie. To znaczy jeżeli w pakiecie oprogramowania nie znajduje się dana biblioteka to nie ma problemu. Jeżeli chciałbyś przekazać razem z pełną historią tutaj sprawy się komplikują i zależą mocno od tego na jakich warunkach testowałęś bibliotekę, ale nawet wtedy raczej nie widzę problemu po dwarunkiem że tych plików nie ma / nie są wykorzystywane w wersji projektu który sprzedajesz.
Przy okazji, jak najbardziej możesz sprzedawać oprogramowanie oparte na GPL, jedynym problemem jest to że klient może je wtedy kopiować i sprzedawać dalej ^^
Widzę jeszcze jeden problem, jeśli korzystam z komponentów GPL, całość musi być licencjonowana na tej samej zasadzie, co znaczy w praktyce, że nie mogę pobierać opłat za licencjonowanie a jedynie za dystrybucje.
swistak84 napisałeś, że mogę sprzedać oprogramowanie (rozumiem, że masz na myśli dać licencję), ale patrząc na to co wykreśliłem linijkę wyżej wynika, że nie mogę wziąć pieniędzy za licencjonowanie jeśli jest tam komponent oparty na GPL ?
To jest bardzo częsty błąd. Możesz jak najbardziej pobierać opłaty za oprogramowanie GPL.
Prawdziwy problem z GPL polega na tym że wymusza przekazanie praw do modyfikacji i redystrybucji, co powoduje często “wyścig do zera”. I uniemożliwia sprzedawanie oprogramowania masowo, bo zawsze znajdzie się ktoś kto kupi od ciebie oprogramowanie za dyszkę i udostępni w sieci za darmo (jego prawo według GPLa), bo jest altruista.
Więc jeszcze raz: oprogramowanie oparte na licencji GPL można sprzedać. Jedynym problemem jest to że GPL wymusza na tobie udzielenie pozwolenia na redystrybucję i odsprzedaż.
Jeżeli robisz oprogramowanie dla jednego konkretnego klienta (lub kilku), a on traktuje to oprogramowanie jako przewagę konkurencyjną, to nie masz się czym przejmować. Problemem może być tylko to że klient może sobie wziąść twoje oprogramowanie i zacząć sprzedawać konkurencji bez konieczności płacenia ci grosza ^^