Eksplorowanie typowych licencji typu open source
W bieżących i poprzednich lekcjach omówiliśmy składniki oprogramowania z perspektywy pakietów.
Pakiety to sformalizowane sposoby dystrybucji składników oprogramowania.
Typy licencjonowania i obawy dotyczące luk w zabezpieczeniach rozszerzają się na pakiety, ponieważ zawierają one składniki.
Typy licencji
Istnieje wiele licencji używanych w środowisku open source i różnią się.
Spektrum licencji to wykres przedstawiający licencje z perspektywy dewelopera oraz implikacje użycia dla wymagań podrzędnych narzuconych na ogólne rozwiązanie i kod źródłowy.
Po lewej stronie znajdują się licencje "atrybucji". Są one permissive i umożliwiają praktycznie każdy typ użycia przez oprogramowanie, które go zużywa. Przykładem jest kompilowanie komercyjnego oprogramowania, w tym składników lub kodu źródłowego w ramach tej licencji.
Jedynym ograniczeniem jest to, że oryginalne przypisanie autorom pozostaje zawarte w kodzie źródłowym lub w ramach podrzędnego korzystania z nowego oprogramowania. Po prawej stronie spektrum są wyświetlane licencje "copyleft".
Licencje te są uznawane za wirusowe, ponieważ użycie kodu źródłowego i jego składników oraz dystrybucja kompletnego oprogramowania oznacza, że cały kod źródłowy korzystający z niego powinien być zgodny z tym samym formularzem licencji.
Wirusowy charakter polega na tym, że korzystanie z oprogramowania objętego tym typem licencji wymusza przekazanie tej samej licencji dla wszystkich prac lub na oryginalnym oprogramowaniu.
Środek spektrum przedstawia licencje "podrzędne" lub "słabe copyleft". Wymaga to również, aby zrobił to zgodnie z tymi samymi postanowieniami licencyjnym, gdy kod objęty jest rozpowszechniany.
W przeciwieństwie do licencji copyleft, nie rozszerza się na ulepszenia ani dodatki do kodu objętego kodem.