Licencja, panie

Strasznie mi przykro, że niektórzy to jednak czytać nie potrafią. Zrozumiem, że jedna z drugą doda mają problem z przeliterowaniem wyrazu dłuższego niż kark czy dres, ale żeby programiści nie potrafili czytać własnych licencji?

Trafiłem wczoraj na Undeadly na wątek dotyczący złamania licencji przez deweloperów Linuksa. Podniósł się wielki rumor, kamienie leciały gęsto, do flejma włączyli się przedstawiciele obu obozów, *BSD i Linuksa. Jedni jeździli po nie do końca wolnej licencji GNU, drudzy przypominali sytuację odwrotną, która nie miała miejsca tak znowu dawno temu.

Szkoda, że nikt nie skontaktował się z autorami albo chociaż nie przeczytał diffa. Widać wszyscy zapomnieli, że specjalnie na potrzeby włączenia sterownika — pierwotnie napisanego na potrzeby *BSD — do Linuksa, cały kod został udostępniony na podwójnej licencji BSD/GPLv2. A co oznacza podwójna licencja kodu? Ano to, że można sobie dowolnie wybrać jedną z licencji, która będzie nas obowiązywać. Tak, to znaczy, że w ramach licencji GPL można sobie dowolnie usuwać treść licencji BSD z nagłówków kodu. Tak, nawet jeśli licencja BSD mówi, że nie można jej usuwać, bo rzeczona licencja nie obowiązuje.

Żeby było jeszcze śmieszniej, niemal ukamienowany i żywcem spalony na stosie bezbożnik jest jednym ze współautorów kodu. Jeszcze zabawniejszy jest fakt, że nawet gdyby kod był dostępny tylko na jednej licencji, to w ramach amerykańskiego prawa każdy ze współautorów dzieła ma prawo udostępnić je na dowolnej licencji bez konsultacji z pozostałymi (jedyne ograniczenie dotyczy tego, że nie może zmienić reguł podziału zysków z tego tytułu).

Tak, czytanie to nie jest mocna strona ludzi. Nasz Trybunał Konstytucyjny kolejny raz udowodnił, że wyobraźnia również.

22 » odpowiedzi dla wpisu “Licencja, panie”


  1. 1 carstein

    Trybunał nie jest od tego, żeby sobie wyobrażać jak prawo wygląda. Jest od tego, żeby określać, czy jakieś działania są zgodne z prawem, czy też nie są.

    Pretensje proszę do tych, którzy nie zmienili prawa prasowego obowiązującego od lat 80.

  2. 2 hmd

    Heh, ale to nie TK, a Sąd Najwyższy.

  3. 3 CoSTa

    sorry, że oftopicznie patrys ale podesłałem maila na admin małpa generated i nie wiem, czy aby doszedł. coś 10p nie chce mojego feeda ciągnąć.

    again - sorry za oftopa, pokrywam się popiołem, polewam to winem i wciągam całośc przez nos. do niedzieli powinno potrzymać, sobota na barcampie included :)

  4. 4 franky

    - tylko czesc kodu jest na podwojnej licencji (czesc Reyka jest na licencji ISC),
    - projekt znajduje sie w Kanadzie (tam maja, z tego co wiem, troche inne prawo),
    - tak czy inaczej to bylo zagranie nie fair..

  5. 5 kozik

    “że można sobie dowolnie wybrać jedną z licencji, która będzie nas obowiązywać”
    Nieuważnie przeczytałeś całą dyskusję - wydajesz prawny osąd, bez poparcia odpowiednimi argumentami. Porównaj wypowiedź Theo i jego ARGUMENTY:
    http://kerneltrap.org/OpenBSD/Stealing_Versus_Sharing_Code
    Przedstawiony tam osąd jest jasny - kod na licencji dual (np. BSD/GPL) powinien taki pozostać, ponieważ rezygnacja z jednej licencji (pozostawienie tylko GPL) uniemożliwia wykorzystanie takiej pracy w sofcie z usuwanej licencji (nowy kod nie zostanie użyty przez środowisko BSD, bo jest na GPL, i tym samym nie ma to nic wspólnego z pracą “community”).

  6. 6 Patrys

    kozik:

    Nie chodzi o to, czy to jest dobre dla community, czy nie, ale cała dyskusja była o tym, że usunięcie jednej z dwóch licencji jest bezprawne. Nie jest.

  7. 7 franky

    wlasnie, ze jest bezprawne.. jesli zapis w licencji mowi jasno, ze nie mozna jej usunac (tak jak w przypadku ISC) to nawet przy podwojnym licencjonowaniu nie mozna jej usunac; mozna co najwyzej druga licencje wpisac powyzej pierwszej i uznac ja jako obowiazujaca..

  8. 8 kozik

    “Nie chodzi o to, czy to jest dobre dla community, czy nie, ale cała dyskusja była o tym, że usunięcie jednej z dwóch licencji jest bezprawne. Nie jest.”
    Widzisz, znowu wygłaszasz tezy.

    A ja powiem “usunięcie jest bezprawne”. I co? I nic… takie gadanie nie ma najmniejszego sensu, tym bardziej w sensie dyskusji nad prawem. Theo bardzo dokładnie to (usunięcie jednej z licencji będzie złamaniem prawa) wyjaśnił, powyżej (@franky) również masz argumenty. Może też jakiś prawnych użyjesz?

  9. 9 franky

    Argumentow prawnych nie uzyje, bo nie jestem prawnikiem (na szczescie), a Theo w kilku ostatnich mailach na liste openbsd-misc wyjasnil wszystko bardzo dokladnie i moim zdaniem zrozumiale.. Nie ma sensu chyba tego tutaj przytaczac (zainteresowani przeczytaja).. “Sledze” sprawe praktycznie od poczatku i ostatnie wydarzenia [1] (wraz z komentarzami ze strony developerow linux-wireless) sa dla mnie co najmniej smutne..

    licencji ostatecznie nie usunieto, ale sama idea kolejnych kontrybucji do tego kodu jest beznadziejna.. Mark Kettenis [2] bardzo trafnie to opisal..

    szkoda, ze wielkie slowa FSF i community linux’owego nie maja odzwierciedlenia w dzialaniach jakie podejmuja.. zamiast walczyc ze soba powinnismy sobie pomagac, niestety niektorzy (mowie o nieprzejednanym srodowisku linux’owym) wola wybrac inna droge (dodatkowo atakujac i straszac prawnikami)..

    p.s. oczywiscie nie twierdze, ze cale community linux’owe jest zle i niedobre, odnosze sie tylko do ostatnich wydarzen i ich autorow..

    [1] http://marc.info/?l=linux-wireless&m=118857712529898&w=2
    [2] http://marc.info/?l=linux-wireless&m=118874232730935&w=2

  10. 10 Patrys

    Mam nadzieję, że rozumiecie, że podwójne licencjonowanie w oprogramowaniu oznacza, że każdy dystrybutor programu albo dzieła pochodnego może wybrać sobie dowolną z tych licencji. Co za tym idzie, obowiązują go zapisy tylko jednej z nich. Oczywiście, tworząc dzieło pochodne mogę się zdecydować na publikację na obu licencjach, jakie obowiązywały oryginał, ale jest to wyłącznie moja decyzja (tak zrobili deweloperzy jądra Linuksa). Nie ma żadnych przesłanek prawnych, żeby obowiązywały mnie zapisy licencji, której nie wybrałem. Co więcej, nic nie stoi na przeszkodzie, żeby autor oryginału dał mi do wyboru licencje, które są ze sobą zupełnie niezgodne i w pewnych punktach ze sobą sprzeczne, co — według waszych argumentów — w żaden sposób nie pozwoliłoby nikomu na używanie MySQL czy Gecko. Tyle argumentów prawnych :)

  11. 11 kozik

    Patrys, niestety pominąłeś jeden istotny element. Żadna z tych licencji (BSD ani GPL) nie daje praw modyfikacji licencji. Obydwie pozwalają modyfikować przedmiot licencji, czyli kod. Nie można modyfikować czyjegoś dokumentu prawnego i te licencji nie dają nawet takich praw. Wobec tego usunięcie jednej z licencji opatrującej dany kod jest nieprawidłowe. I to we wspomnianym przeze mnie linku się pojawia.

    Co ciekawe kilka osób (ze środowiska Linuksa) zasięgnęło (ponoć) opinii SFLC. Niestety tej opinii nie przedstawili ani w Sieci mi się nie udało ich znaleźć…

  12. 12 jpc

    Partys: jesteś pewien tego współautorstwa? Z jakiegoś powodu organizacje typu FSF i Apache Foundation przejmują od autorów prawa do całego kodu, nie?

  13. 13 Patrys

    kozik:

    Nikt nie zmodyfikował żadnej licencji. Usunął nieważną licencję (wybrał drugą) z kodu, do którego modyfikacji miał pełne prawo na mocy GPL. GPL nie pozwala na wprowadzanie dodatkowych obostrzeń, w tym na wymaganie, aby dzieło pochodne dostępne było na dwóch licencjach. Jest to dobra wola dystrybutora, polecam przeczytać treść GPL v2.

    jpc:

    Przejmują po to, żeby móc ścigać naruszenia w imieniu autorów. Jest to wyraźnie napisane w każdej z licencji :)

  14. 14 kozik

    Patrys:
    Nie ma nieważnej licencji. Wyraźnie zostało w kodzie napisane:
    “Alternatively, this software may be distributed under the terms of the (…)”
    Co oznacza, że możesz dystrybuować KOD na jednej z dwóch licencji, a nie, że możesz usunąć jedną licencję i dystrybuować kod.

    Licencja, jak copyrighty, jest dokumentem prawnym przyklejonym do kodu przez właściciela kodu. Właściciel nie powiedział, że możesz usunąć jedną z licencji, więc NIE MOŻESZ tego zrobić. Właściciel powiedział, że przy dystrybucji kieruj się jednym zbiorem zasad z dwóch załączonych, a żaden ze zbiorów zasad nie mówi o nadaniu praw do modyfikacji dokumentów prawnych związanych z dystrybuowanym kodem.

  15. 15 Patrys

    kozik:

    Licencja GPL, wersja druga, punkt 6.:

    6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

    Wytłuszczenie moje. W momencie wybrania licencji GPL nie obowiązują i nie mogą obowiązywać żadne inne obostrzenia (poza geograficznymi, o tym mowa w innym punkcie licencji, ale nie dotyczą tego sporu).

  16. 16 kozik

    Cóż, ściśle trzymając się słów w GPLv2, to tyczy się to ograniczeń (restrictions) przyznanych przez GPL praw. Natomiast konieczność dołączenia licencji BSD do spornego kodu chyba nie jest ograniczeniem. Na taką redystrybucję kodu nakładany jest (wedle oczywiście jednej tezy) obowiązek dołączenia drugiej licencji. Sam ten obowiązek nie jest ograniczeniem praw. Wszyscy kolejni “użytkownicy kodu” dalej będą mieli wszystkie prawa wynikające z GPL. Ich prawa się nie umniejszą, poprzez licencję “dual” BSD/GPL. Jednocześnie otrzymają możliwość wybrania “drugiego zestawu praw”, czyli praw wynikających licencji BSD. Zauważ, że jest to również w duchu całego Wolnego Oprogramowania - dostajesz dane prawa (GPL+BSD), to daj je wszystkim potomnym. Duch wprawdzie może przy spornych sytuacjach prawnych mieć udział, ale nie jest wprawdzie wykładnikiem.

    Sam prawnikiem nie jestem i tylko boleję, że osoby bezpośrednio zaangażowane w licencjonowanie kodu, postraszyły zasięgnięciem opinii SFLC, a tą opinią się nie podzieliły.

  17. 17 jpc

    Patrys: Te further restrictions nie dotyczą autora, ale redystrybutorów. Autor nadający licencję może sobie nakładać dowolne dodatkowe ograniczenia.

  18. 18 Patrys

    jpc:

    Ale nie nałożył, dał dwie licencje do wyboru.

  19. 19 jpc

    Ale czy redystrybutor ma prawo zabrać jedną z tych licencji użytkownikom?

  20. 20 Patrys

    jpc:

    Takie prawo gwarantuje mu każda z tych licencji — BSD pozwala usunąć GPL, a GPL wywalić BSD. Pomijam oczywiście wątek moralny, z prawnego punktu widzenia każda z tych licencji pozwala zrobić z kodem wszystko (wyjątek stanowi licencja BSD, która nie pozwala usunąć wpisu licencyjnego z nazwiskami autorów, ale zapis ten nabiera mocy tylko w przypadku wyboru licencji BSD).

  21. 21 franky

    blad (nie mozna usunac licencji)..

    scenariusz:
    - mamy *kod* na podwojnej licencji (np. BSD/GPL),
    - ktos decyduje sie zrobic fork’a i wybiera np. GPL,
    - umieszcza zatem *tresc* licencji GPL nad *trescia* licencji BSD, ktorej nie moze usunac (!!!),
    - *kod* jest licencjonowany na GPLu, ale w pliku znajduja sie *tresci* obu licencji (!!!)..

    jest tak poniewaz tresc licencji BSD nie pozwala na jej usuniecie z kodu (pomimo faktu iz moze nie obowiazywac; np. w przypadku powojnej licencji):

    “(…) provided that the above copyright notice and this permission notice appear in all copies. (…)”

  22. 22 jpc

    Wydaje mi się, że autor może zezwolić na usunięcie jednej z licencji, ale jeśli tego nie zrobi, to powinno to być zabronione.

    Tak czy inaczej, jest to chyba dyskusja czysto prawnicza i trudny problem dla sądu, który kiedyś być może będzie orzekał w takiej sprawie. Ja już nic mądrego nie wymyślę. ;]

Skomentuj wpis