Definice otevřeného softwaru

(pozn. tato kapitola navazuje na kapitolu o definici svobodného softwaru – je tedy dobré si přečíst nejdříve ji)

Velmi blízkým pojmem je otevřený software. Jeho definice pochází od organizace The Open Source Initiative. Otevřený software musí splňovat následující kritéria:

Volná redistribuce: Tento požadavek do jisté míry koresponduje s třetím bodem definice svobodného softwaru. Definice OSI navíc výslovně zakazuje, aby licence požadovala poplatky za prodej softwaru. Ovšem tento zákaz je třeba chápat tak, že licence poplatky nesmí požadovat, ale může je tolerovat. To znamená, že prodej otevřeného softwaru je možný, ovšem ten, kdo si ho koupí, ho může dále šířit bezplatně (za dodržení podmínek dané licence), jelikož licence po něm nesmí požadovat placení poplatků. Mezi licence považované OSI za otevřené patří např. GPL, která šíření za úplatu umožňuje a FSF k němu dokonce nabádá. Ačkoli definice FSF bezplatnost distribuce výslovně nepožaduje, zatímco definice OSI ano, nejsou v rozporu – možnost bezplatné distribuce totiž implicitně vyplývá z požadavků FSF na svobodný software.

Zdrojový kód: Samozřejmý je požadavek na otevřený (dostupný) zdrojový kód programu. Ten by měl být šířen společně s binární verzí nebo být dostupný nějakým „dobře známým“ způsobem (např. ke stažení na oficiální webové stránce programu či firmy-autora). Zdrojový kód by měl být k dispozici za „rozumné reprodukční náklady“, za což se dá považovat např. cena CD média a poštovného. Distribuce pomocí internetu by pak měla být zcela bezplatná. FSF má k ceně distribuce mírně odlišný postoj – cena za distribuci zdrojových kódů by neměla být vyšší než cena, za kterou jsou šířeny binární formy programu. Pokud např. autor bude prodávat CD s přeloženým programem za 1000 Kč, nemůže za CD se zdrojovými kódy požadovat 10 000 Kč. V principu jde o to, aby autor nenasadil tak vysokou cenu za zdrojové kódy, že by si je nikdo nemohl dovolit a tento software by byl prakticky uzavřený. FSF a OSI tento problém řeší mírně odlišně, ale výsledek je podobný. Dnešní praxe je taková, že většina svobodného resp. otevřeného softwaru je šířena zdarma pomocí Internetu, takže tyto odlišnosti pojetí mezi organizacemi FSF a OSI nehrají příliš velkou roli. Zdrojový kód je upřednostňovaná forma, která by měla sloužit k úpravám softwaru (oproti např. úpravám binárních-zkompilovaných programů, které jsou sice možné, ale méně vhodné). Jak FSF, tak OSI kritizují tzv. obfuskovaný zdrojový kód – nepovažují ho za skutečný zdrojový kód a takto šířený software tedy není ani otevřený ani svobodný.

Odvozené práce.: Tento bod koresponduje s druhým a čtvrtým bodem definice svobodného softwaru. OSI požaduje, aby licence dovolovala odvozené práce (úpravy zdrojového kódu) a jejich šíření pod stejnou licencí jako původní software.

Integrita autorova zdrojového kódu: Softwarová licence by mohla zakazovat šíření upraveného zdrojového kódu (aby vždy bylo vidět původní dílo autora), ale podle OSI jen za předpokladu, že licence dovoluje šíření záplat (tzv. patchů) společně se zdrojovým kódem tak, aby mohl být upraven (patchován) v době překladu (kompilace). Licence může požadovat, aby odvozená díla (upravené programy) musela být šířena pod jiným jménem nebo číslem verze než původní program. Licence tak může chránit pověst a dobré jméno autora tím, že zakáže používat dané jméno programu pro odvozeniny. Např. prohlížeč Mozilla Firefox je šířen pod licencí Mozilla Public License – tato licence je uznávána OSI jako licence pro otevřený software a uznávána FSF jako licence pro svobodný software. Linuxová distribuce Debian musela Firefox přejmenovat na Iceweasel a změnit jeho logo, aby vyhověla licencí – šíří totiž upravenou verzi tohoto prohlížeče. Takové licenční ujednání (ochrana dobrého jména autora nebo programu) je v souladu s myšlenkami svobodného a otevřeného softwaru.

Nediskriminovat žádné osoby a skupiny: Tento bod se shoduje s prvním bodem definice svobodného softwaru. Některé státy (jako např. USA) mají exportní omezení a některý software není možno šířit za jejich hranice. V takovém případě OSI připouští, aby licence obsahovala varování, že je potřeba dodržovat zákony daných států – ovšem licence nesmí tato zákonná opatření opisovat, resp. sama o sobě požadovat. Což znamená, že pokud by daný zákaz (zákon) přestal platit, software by bylo možno okamžitě začít vyvážet, aniž by bylo potřeba upravovat licenci a odstraňovat z ní exportní omezení.

Nediskriminovat způsoby využití: OSI zde jako příklad uvádí, že licence nesmí zakazovat použití daného softwaru v podnikání (ke komerčním účelům) nebo při genetickém inženýrství. Protějškem v definici svobodného softwaru je zde opět první bod.

Šíření licence („Distribution of License“): OSI požaduje, aby práva poskytovaná licencí platila pro všechny, kterým je program distribuován, a to bez nějakých dodatečných omezení – např. požadavku na slib mlčenlivost (NDA), závazek nešířit daný software dál. Důvodem k tomuto požadavku je snaha zabránit uzavření softwaru.

Licence nesmí být specifická pro daný produkt: Práva příslušející k otevřenému softwaru nesmí záviset na tom, že program bude součástí určité distribuce. Musí být tedy možné vyjmout program z balíku (ve kterém je distribuován) nebo vzít část programu (zdrojového kódu) a tu šířit samostatně – a to tak, že se na ni budou vztahovat stejná práva, jaká zaručuje původní licence. Toto opatření (stejně jako předchozí) má předejít uzavření a licenčním pastem.

Licence nesmí zakazovat další software: Definice OSI zakazuje, aby licence omezovala ostatní software šířený na stejném médiu. Např. není možné do licence napsat, že software šířený na stejném CD, musí být jen otevřený software a žádný jiný – taková licence by nebyla licencí otevřeného softwaru. Licence jako např. GNU GPL jsou v souladu s tímto pravidlem, protože jejich požadavky na stejnou (kompatibilní) licenci se týkají softwaru odvozeného – nikoli softwaru šířeného na stejném médiu. Je tedy klidně možné šířit CD, na kterém bude např. linuxová distribuce a vedle ní i jiné nesvobodné/uzavřené programy. S touto situací se setkáváme např. u příloh časopisů – přiložené CD běžně obsahuje otevřený (svobodný) software a vedle něj demoverze proprietárních programů.

Licence musí být technologicky neutrální: Licence nesmí stavět na nějaké konkrétní technologii nebo stylu ovládání. Nesmí tudíž vyžadovat k přijetí „click-wrap“, což je přijetí licence pomocí kliknutí myší při stahování z Internetu. Takovou licenci by pak nebylo možné přijmout při jiných způsobech distribuce (offline, na CD, pomocí FTP atd.) nebo začlenit daný zdrojový kód do jiného programu, který např. nemá interaktivní uživatelské rozhraní.

Ve FOSS komunitě jsou někdy FSF a OSI pokládány za znepřátelené strany a protichůdné přístupy, FSF bývá někdy považována za filosofičtější, ideologičtější křídlo s přísnějšími nároky, zatímco OSI za pragmatičtější. Nicméně z výše uvedených definic vyplývá, že se otevřený i svobodný z velké části (nebo i zcela) překrývají a jejich definice jsou slučitelné. Podle Richarda Stallmana a FSF je vhodnější (viz Why Open Source misses the point of Free Software) používat pojem free software (svobodný software) místo open source (otevřený software), přestože mají velmi podobný význam. Důvod je ten, že svobodný software zdůrazňuje na prvním místě svobodu – nikoli jen otevřenost, která sama o sobě nestačí.