Nejpopulárnější open-source licence

Při získávání statistických údajů pro identifikaci nejpopulárnějších open-source licencí jsem využil webu sourceforge.net. Na tomto webu můžeme najít a stáhnout pouze software, který splňuje požadavky open source. Z tohoto důvodu jsem do statistik zařadil nezvykle i public domain licenci, která sice certifikovanou open-source licencí není, ale v případě sourceforge.net byla využita jen pro software, který open source skutečně je. K 29. 10. 2010 má z celkového počtu 67 open-source licencí více než procentuální podíl pouze 8 licencí: GNU GPL (2×), LGPL, BSD License, Apache License v2.0, MIT License, AFL a Artistic License.

GNU General Public License

Licenci GNU GPL napsal v roce 1989 Richard Stallman. Ačkoliv je GNU GPL nejpoužívanější open-source licencí vůbec, je pravděpodobně také nejkontroverznější. Mnoho vývojářů ji nemá v oblibě kvůli její stěžejní vlastnosti, která je poprvé zmíněna už v nultém bodě licence. Zde je deklarován ukázkový copyleft této licence, který říká, že jakýkoliv derivát postavený na GNU GPL musí být opět licencován jako GNU GPL. V roce 2001 se právě kvůli tomuto bodu licence opřel do Linuxu výkonný ředitel společnosti Microsoft Steve Ballmer:

„Linux is a cancer that attaches itself in an intellectual property sense to everything it touches.“

Od počátku vývoje GNU GPL vznikly již 3 její verze. První existovala pouhé dva roky, není již používána a nefiguruje ani na seznamu open-source licencí. Druhá, stále platná, je nejpoužívanější verzí.

Třetí verze vznikla 29. června 2007 jako výsledek 18 měsíců trvající veřejné diskuse. Veřejnost měla možnost posílat návrhy a komentáře prostřednictvím webového portálu gplv3.fsf.org. Během této doby vznikly čtyři koncepty znění licence, které byly diskutovány ve čtyřech kolech. Výsledkem byla verze, která přinesla několik zlepšení týkajících se především:

  • internacionalizace – znění licence je více uzpůsobeno mezinárodnímu užití,
  • ochrany proti patentům – autor se již nemusí bát patentových útoků,
  • tivoizace – zabránění obcházení práv uživatele tím, že distributor softwaru je povinen dodat veškeré informace potřebné k provozu svobodného software na jeho zařízení,
  • následků v případě porušení licence – v případě nápravy do 60 dnů dojde od autora k obnovení práv,
  • kompatibility svobodných licencí.

Přes všechna tato vylepšení nehodlá údajně více než 40 procent vývojářů tuto licenci v budoucnu použít. Podle Johna Andrewse, výkonného ředitele společnosti, která výzkum prováděla, je na vině fakt, že GNU GPLv3 přináší omezení na to, co můžou vývojáři s takto licencovaným softwarem dělat.

GNU Library/Lesser General Public License

Licence GNU LGPL vznikla v roce 1991 při příležitosti vzniku GNU GPLv2 jako její permisivnější varianta. Původně byla zamýšlena pouze pro knihovny, kde by silný copyleft mohl bránit jejich praktickému užití. GNU LGPL aplikuje copyleft pouze na program samotný a neuplatňuje jej na software, který tento program pouze linkuje nebo užívá. Z tohoto důvodu může být tento software, využívající open-source knihovnu, klidně proprietární.

Uplatnění GNU LGPL nikdy nebylo a není vázáno pouze na knihovny, proto také došlo v roce 1999 k jejímu přejmenování na GNU Lesser General Public License, aby byl smysl této licence zřejmější. Dnes je situace taková, že FSF sama ve svém článku „Why you shouldn’t use the Lesser GPL for your next library“ varuje před bezmyšlenkovitým použitím této licence.1 Volba licence je věcí strategie, a tak se autor knihovny musí rozmyslet, zda umožní (použitím LGPL), či neumožní (použitím GPL) tvůrcům proprietárního software využívat jeho knihovnu.

BSD License

BSD licence získala název podle Berkeley Software Distribution, což je organizace při Kalifornské univerzitě v Berkeley.1 Jedná se o jednu z nejpermisivnějších open-source licencí. Logicky se tedy jedná o necopyleftovou licenci. Nezřídka je dokonce označována speciální slovní hříčkou copycenter, kterou bychom měli chápat jako: „take it down to the copy center and make as many copies as you want”.

Původní verze se označovala jako čtyřbodová, protože obsahovala čtyři stěžejní klauzule. Tato verze nebyla kvůli třetí klauzuli kompatibilní s GNU GPL. Software pod BSD licencí tak nebylo možné začlenit do jiného softwaru pod GNU GPL. FSF označila třetí klauzuli jako problematickou, a proto ji William Hoskins, ředitel úřadu licencování technologií v Berkeley, v roce 1999 odstranil.3 Nová BSD je již tedy tříbodová a i zde je poslední klauzule nepovinná, tj. bez jejího uvedení bude licence stále splňovat požadavky OSI.4 V případě neuvedení poslední klauzule tak mluvíme o dvoubodové BSD.

Apache License

Licenci Apache vyvinula v roce 2000 organizace Apache Software Foundation. Nejnovější verze 2 existuje od roku 2004 a je kompatibilní s GNU GPLv3 (s GNU GPLv2 kompatibilní není).5 Jedná se o další necopyleftovou licenci, takže takto licencovaný kód může být použit i při vytváření proprietárního softwaru. Je přitom ale potřeba mít na paměti několik podmínek. Zejména musí být u každého odvozeného softwaru přiloženo znění původní licence a informace o tom, které soubory jsou původní a které jsou modifikované. Pokud je navíc součástí distribuce soubor „NOTICE“, je nutné jeho obsah čitelně zveřejnit na jednom z těchto míst:

  • v souboru NOTICE, který bude součástí každého odvozeného softwaru,
  • uvnitř kódu nebo dokumentace,
  • všude tam, kde se oznámení šiřitele běžně zobrazují.

Obsah souboru NOTICE má přitom informační účely a nemůže platnost licence nijak upravovat. Každý, kdo software nějakým způsobem upraví a bude jej dále šířit, může tento soubor doplnit o vlastní informace.6

MIT License

Licence MIT vznikla na Massachusettském technologickém institutu. Podle FSF by se měl pro tuto licenci používat spíše název X11 License, neboť MIT licencí je větší množství a tento název tak může být zavádějící.7 Je zajímavé, že pojem MIT je mnohem častější a ani na stránkách OSI žádný záznam o X11 nenajdeme. Z praktického hlediska je licence MIT podobná dvoubodové BSD licenci. Hlavní odlišností je, že v licenčních podmínkách MIT je výslovně uvedena bezúplatnost poskytované licence a že se licenční podmínky kromě samotného softwaru vztahují i na jeho dokumentaci.

Open Software License

Licenci Open Source Software napsal Lawrence Rosen, spoluzakladatel kalifornské společnosti Rosenlaw & Einschlag specializující se na ochranu duševního vlastnictví a licencování. Třetí verzi této licence, OSL 3.0, přijala OSI v roce 2005. Sám L. Rosen o této licenci hrdě prohlašuje, že je lepší než GNU GPL, a tak, ačkoliv nechce, aby byla jeho licence s GNU GPL srovnávána, sám tomuto srovnávání více než nahrává. Jako stěžejní vlastnost uvádí způsob, jakým je licence napsána – jednoduše, věcně, precizně.

OSL 3.0 je copyleftová licence, a proto musí být všechen odvozený software licencován rovněž pod touto licencí. Podmínka reciprocity je zde slabší než u GNU GPL – podobá se tedy spíše GNU LGPL.

Paralelně k OSL 3.0 vznikly Academic Free License (AFL 3.0) a Non-Profit OSL 3.0. AFL 3.0 je identická k OSL 3.0 s výjimkou toho, že neobsahuje virální klauzuli – software pod touto licencí tak může být spojován i s proprietárním softwarem. V tomto se AFL 3.0 podobá BSD licenci. Non-profit OSL 3.0 doplňuje OSL 3.0 o 17. paragraf, ve kterém je stanoveno, že ji mohou používat jen neziskoví distributoři.

Open Software Licence oproti GNU GPL lépe definuje, co je a co není odvozeným softwarem. Debata o GNU GPL často končí u tématu dynamického, případně statického linkování a jiných ezoterických technik určených k tomu, aby náš software správně fungoval. Navíc GNU GPL obsahuje řadu výjimek (např. pro GNU/Linux – zde povoluje linkování do jeho jádra). OSL 3.0 je v tomto přesnější, jasně totiž definuje, že odvozený software vzniká z originálního jeho překladem, přizpůsobením, změnou, transformací, modifikací a sjednocováním.

Přes tento jednoduchý výčet vznikají, a vznikat pravděpodobně vždy budou, mezi uživateli četné dezinterpretace. Např. se můžeme setkat s chybným názorem, že náš modul je odvozeným softwarem nějakého redakčního systému, protože tento modul by byl bez něj k ničemu – nefungoval by. Sám L. Rosen se v jednom takovém případě „neudržel“ a na podobný komentář, který se objevil na diskusním fóru redakčního systému Magento, vtipně reagoval:

„I have lots of programs that won’t work without Linux or Windows, and those are definitely not derivative works of Red Hat or Microsoft software.“

Pokud distribuujeme open-source software, je základním pravidlem, že spolu s ním musíme distribuovat i zdrojové kódy. Poprvé v OSL 3.0 jsem se setkal s explicitním vymezením tohoto slova „distribuce“. Samozřejmě sem spadá možnost fyzické distribuce, např. zaslání CD poštou, mnohem častěji se ale přeci jen setkáme s distribucí po síti. Zde se pod distribucí rozumí i externí nasazení – tj. uživatel má možnost tuto aplikaci používat. V momentě, kdy tedy např. vlastníme e-shop, který běží na systému licencovaným pod OSL 3.0, a umožníme uživatelům, aby na našem e-shopu nakupovali zboží, distribuujeme tento software.

Udělovatel licence je povinen poskytnout uživateli všechnu dostupnou dokumentaci týkající se postupů a možností při úpravách originálního softwaru. Tuto dokumentaci ale není povinen vytvářet, je povinen poskytnout pouze takovou dokumentaci, která je dostupná. Stejně tak není udělovatel licence povinen poskytovat dokumentaci k použití a instalaci originálního softwaru. Udělovatel licence má také možnost doplnit zdrojové kódy o copyright, patentová ujednání, informace týkající se ochranné známky a jiné poznámky. Totéž může provést i autor odvozeného softwaru, ovšem s podmínkou, že zde zahrne i informaci, že takovýto software není původním originálem. Tím je chráněna reputace autora originálního softwaru.

Na příkladu nyní uvedu, jakým způsobem se postupuje v případném řešení soudních sporů. Pokud udělovatel licence vydá ve Francii software pod licencí OSL 3.0 a nabyvatel licence si v Japonsku tento software stáhne, řeší se tyto spory podle francouzského právního řádu. Dnes je ovšem běžné, že velké softwarové firmy mají kanceláře po celém světě a software je tak poskytován prostřednictvím lokálních distribučních kanálů. V takovém případě je OSL 3.0 tzv. „consumer friendly“ – pokud nabyvatel získá software prostřednictvím lokálního distributora, dodržování licenčních podmínek je „vynutitelné“ místní jurisdikcí.