Licencji na świecie jest cała masa. Ich głównym zadaniem jest określenie zasad, na jakich odbywa się zarówno rozwój danej aplikacji, jak i jej dystrybucja. Licencji własnościowych, czyli tych pochodzących od firm prywatnych nie sposób zliczyć. Natomiast te wchodzące w skład tzw. liberalnych i wolnościowych są często używane przez środowisko open source i nie tylko. W poniższym artykule krótko przedstawimy licencję Canonical Individual Contributor License Agreement

Contributor License Agreement definiuje zasady, na jakich własność intelektualna zostaje przekazana do projektu lub firmy. Zazwyczaj dotyczy to projektów na wolnych licencjach i ma za zadanie określić niezbędne prawa własności, wobec wszystkich osób wnoszących wkład. Pozwala także na swobodną dystrybucję całego kodu na wybranej przez projekt licencji. W niektórych przypadkach będzie wymagane, aby kontrybutor przepisał prawa wkładu na właściciela projektu. W innej sytuacji będzie udzielana nieodwołalna licencja, pozwalająca opiekunowi projektu na używanie wkładu. Licencja taka ma także chronić wszystkich współpracowników przed niepożądanymi atakami ze strony trollów patentowych.

Kto wykorzystuje licencję CLA:

Własne CLA posiadają takie projekty, jak:

  • Apache Software Foundation – organizacja typu non-profit mająca na celu wspieranie projektów Apache typu Open Source
  • Diaspora – projekt wolnej sieci społecznościowej
  • Django – framework do pisania aplikacji webowych
  • Joomla – CMS do tworzenia portali i stron www
  • Canonical Ltd – firma tworząca Ubuntu

Canonical Individual Contributor License Agreement

Jako właściciel praw autorskich, udzielasz Canonical prawa do wieczystego, niewyłącznej, światowej, zbywalnej, nieodpłatnej, nieodwołalnej licencji do projektu, z możliwością zmiany licencjonowania. Dodatkowo udzielasz pozwolenia na reprodukcję, modyfikowanie, wyświetlanie, wykonywanie i rozpowszechnianie wkładu do projektu, na tej samej lub innej licencji, a także wykorzystanie komercyjne.

Jako autor projektu zachowujesz pełne prawa do niego, jednakże to w decyzji Canonica leży czy ktoś może dawać wkład, czy nie.

Porównanie z innymi licencjami

GNU General Public Licence

Aktualnie są wykorzystywane GPLv2 oraz GPLv3, które posiadają ogólne zapisy:

  • Wolność uruchamiania programu w dowolnym celu (wolność 0)
  • Wolność analizowania, jak program działa i dostosowywania go do swoich potrzeb (wolność 1)
  • Wolność rozpowszechniania niezmodyfikowanej kopii programu (wolność 2)
  • Wolność udoskonalania programu i publicznego rozpowszechniania własnych ulepszeń, dzięki czemu może z nich skorzystać cała społeczność (wolność 3).

GPL zabrania zmiany licencji aplikacji już będącej na niej, a dodatkowo każdorazowe użycie programu na GPL lub części kodu, zmusza do zastosowania GPL. Projekt można skomercjalizować, np. sprzedając wsparcie techniczne co też czyni firma Red Hat.

Apache Software License

Licencja ta dopuszcza użycie kodu źródłowego zarówno na potrzeby wolnego oprogramowania, jak i zamkniętego oprogramowania komercyjnego. Pod tą licencją rozpowszechniane jest oprogramowanie tworzone przez Apache Software Foundation.

Udzielone jest pozwolenie na używanie, modyfikowanie i redystrybucję programu w postaci źródłowej, lub binarnej, bez obowiązku udostępnienia kodu źródłowego. Kod na licencji Apache można dodać do niewolnego programu, pod warunkiem zachowania zgodności z warunkami licencji. Nie jest udzielane pozwolenie na używanie nazw i znaków handlowych licencjodawcy. Natomiast licencjobiorca otrzymuje od wszystkich autorów i współautorów zgodę na użycie ich patentów mających zastosowanie w licencjonowanym programie.

Podsumowanie licencji Canonical Individual CLA

Zalety:

  • Zachowujemy autorskie prawa majątkowe (Retain ownership of the Copyright)

Wady:

  • Skomplikowanie
  • Canonical ma prawo dowolnie zmieniać licencję
  • Canonical decyduje o dodawaniu nowych funkcji przez osoby trzecie

Pełen tekst licencji: Canonical Individual Contributor License Agreement
Krótki tekst Matthew Garreta: Contributor License Agreement corner cases