GPLv2 a jej porušovanie zo strany Xiaomi

Zistite, ako Xiaomi porušuje podmienky GPL a ako ich rozhodnutia ovplyvňujú komunitu Android a budúcnosť operačného systému.

Xiaomi oznámilo svoj veľkolepo špecifikovaný Mi Note Pro, ktorý obsahuje najnovšie procesory Snapdragon od Qualcommu spolu s veľkým 2K displejom a 4GB RAM za vražednú cenu. Ako už bolo povedané, na ponukách Xiaomi je niečo, čo nie je také dobré, čo znepokojuje mnohých vývojárov, najmä nájdete tu na XDA: Opakované porušovanie licencie GPLv2 spoločnosťou Xiaomi pre jadro Linuxu, ktorým je Android (a tým aj zariadenia Xiaomi) postavený na.

Xiaomi je nie je jedinou spoločnosťou, ktorá porušila GPL aj keď v minulosti to urobili aj mnohí OEM, ako Rockchip a Micromax, pričom mnohí pokračujú vo svojom mimozákonnom správaní dodnes. my trochu o tom hovoril na XDA, a prečo by sme nie? XDA je primárne komunita vývojárov a sme známi tým, že tisíckam skúsených používateľov poskytujeme úpravy softvéru, ktorý spadá pod GPL, ale naša komunita sa riadi naše pravidlá GPL a preto tu nevidíme veľa tieňového privlastnenia.

Čo presne teda Xiaomi robí zle? A je to nezákonné, nemorálne alebo jednoducho nevhodné? Keďže môžu existovať niektorí čitatelia, používatelia alebo dokonca vývojári, ktorí v týchto záležitostiach nemajú dostatočnú rýchlosť, poďme sa rýchlo pozrieť na to, čo GPL znamená.

GNU General Public License (GPL) je slobodná softvérová licencia, ktorá zaručuje vývojárom, výrobcom OEM, používateľom alebo všetkým organizácia, ktorá tieto tri zlúči, aby mala neobmedzený prístup k základom a funkciám softvéru, ktorý spadá pod ním. Môžu používať, študovať, zdieľať a kopírovať alebo upravovať uvedený softvér, keďže ide o slobodný softvér. GNU vývojári projektu GNU definujú slobodný softvér takto:

„Slobodný softvér“ znamená softvér, ktorý rešpektuje slobodu a komunitu používateľov. Zhruba to znamená užívatelia majú slobodu spúšťať, kopírovať, distribuovať, študovať, meniť a zlepšovať softvér. „Slobodný softvér“ je teda otázkou slobody, nie ceny. Aby ste pochopili tento koncept, mali by ste myslieť na „zadarmo“ ako na „slobodný prejav“, nie ako na „pivo zadarmo“.

Takže zatiaľ čo slobodný (slobodný prejav) softvér môže nakoniec skončiť zadarmo (bezplatné pivo), v skutočnosti ide o podporu vývojárske prostredie, ktoré sa zameriava na pokrok v informatike a softvérovom inžinierstve prostredníctvom kolektívne zlepšovanie, zdieľanie a učenie kódu akéhokoľvek slobodného softvéru.

Projekt GNU má veľmi ušľachtilý pohľad na softvér a vedú kampaň, pretože veria, že každý používateľ a tvorca si zaslúži túto slobodu. Nielenže umožňuje verejnosti ovládať program a to, čo robí, ale aj proprietárny softvér robí opak ovládaním používateľa prostredníctvom kontroly vývojára nad programom, čo by malo za následok v nástrojom nespravodlivej moci. So základnými slobodami slobodného softvéru (ktoré sú spustenie programu podľa vášho želania, štúdium, ako funguje, jeho redistribúcia, kedy chcete, a distribúcia vašich vlastných úprav), softvér inžinierstvo sa stáva skôr čistou vedou, ktorá umožňuje mať papiere, a nie patenty, čo umožňuje každému programátorovi získať vrchol v niečí teórii kódu, jeho metodológiách a ich preferovaný štýl programovania prehĺbiť svoje vlastné chápanie toho, ako to funguje, a získať poznatky pre svoj osobný rozvoj. Navyše mu umožňuje chytiť tento softvér a upraviť ho.

Slovo „proprietárny“ používané na opis neslobodného softvéru neznamená len to, že vnútorné fungovanie kódu je legálne mimo územia iných strán; to tiež znamená, že vlastník softvéru, ktorý používate (či už je to aplikácia, ktorú si stiahnete, alebo operačný systém, ktorý používate), je tvorca, a teda vlastník rozhoduje, či ho môžete kopírovať alebo zdieľať. Takéto neslobodné obštrukcie vedú k tomu, že menej ľudí používa program a učí sa z neho, a používatelia nemôžu program upravovať, prispôsobovať alebo opravovať. Ak ponecháme bokom etické dôvody týkajúce sa sociálnej súdržnosti a jej zadržiavacích ideológií, táto materiálna ujma má citeľný dopad na budúcnosť počítačovej vedy a spotrebiteľov, najmä vzhľadom na to, že počítačová veda a jej vedľajšie produkty sú prepojené so životmi používateľov – a ich budúcnosťou - viac ako kedykoľvek predtým dnes.

Nie je tam žiadny háčik. Sú však veci, ktoré OEM obťažujú. Ľudia, ktorí sa pokúšajú upravovať slobodný softvér licencovaný pod GPL, musia dodržiavať niektoré pravidlá.

V prvom rade musia byť podmienky dostupné každému, kto dostane kópiu diela s licenciou GPL, a komukoľvek kto dodržiava podmienky GPL, má povolenie zdieľať, študovať a upravovať dielo ako aj jeho deriváty. Na rozdiel od iných licencií, GPL robí umožňujú, aby slobodný softvér (slobodný prejav) nebol slobodný (bezplatné pivo), na rozdiel od iných licencií, ktoré výslovne zakazujú komerčnú distribúciu.

Držiteľ licencie GPL alebo distribútor nesmie uvaliť ďalšie obmedzenia na práva udelené spoločnosťou GPL – zakazujúce distribúciu softvéru GPL bez výslovného zverejnenia jeho povahy alebo bez zverejnenia zmluvy. Všetky patenty použité v softvéri GPL sú k dispozícii na neobmedzené použitie pre tých, ktorí spĺňajú podmienky GPL.

GPL tiež vyžaduje, aby programy, ktoré sú distribuované ako predkompilované binárne súbory, boli sprevádzané kópiou zdrojového kódu a vyhlásenie informujúce používateľa alebo vývojára o tom, že softvér je licencovaný GPL alebo je možné ho študovať, zdieľať alebo upravovať pod GPL. A jednou z najdôležitejších súčastí GPL vyžaduje, aby distribútori poskytli všetkým príjemcom licenciu spolu s programom, ako aj sprístupniť zdrojový kód prostredníctvom nejakého média pre tých, ktorí o to požiadajú, spolu s jasnými pokynmi, ako získať zdrojový kód.

Android je licencovaný pod Apache 2.0 licenciu a nie GPL. Apache je „tolerantnejšia“ licencia a nemá rovnaké požiadavky ako GPL. Nevyžaduje si, aby ste distribuovali zdrojový kód zahrnutého diela a odvodeného diela nemusí nevyhnutne niesť licenciu Apache, ako napríklad vírusovejšia GPL, pokiaľ zahrniete ich licenciu.

Takže zatiaľ čo GPL podporuje rast slobodného softvéru, Apache je liberálnejší so svojím prístupom k tomu, ako sa budú vyvíjať podmienky budúcich odvodení. A výrobcovia OEM môžu napríklad vziať licencovaný softvér Apache, pridať svoje vzhľady, nadúvanie a to, čo máte, a potom ho zatvoriť a nechať zdroj zatvorený. Čo robí Xiaomi a mnohí výrobcovia OEM. Ale linuxové jadro, na ktorom Android zakladá svoje základy, je nie licencovaný pod Apache, pre Linux je GPLv2 softvér a kvôli tejto „vírusovej“ alebo „infekčnej“ vlastnosti GPLv2, linuxového jadra Androidu, ktoré používa kód Linux GPLv2 zostať GPLv2.

Xiaomi nezverejnilo zdrojové kódy jadra svojej pobočky Android. Keďže ich jadro je založené na jadre Androidu, ktoré je založené na jadre Linuxu, čo je GPLv2, podmienky GPLv2 sa vzťahujú až na Xiaomi. Ak by použili svoje vlastné jadro, potom by mali plné právo nedistribuovať svoj zdroj a nemali by žiadnu povinnosť tak urobiť. Ale úpravou a distribúciou GPL softvéru musia spĺňať podmienky GPL, v tomto prípade GPLv2.

Používatelia a vývojári si právom zaslúžia prístup k zdrojovým kódom jadra a pre XDA ich nedostatok Dôležitá súčasť upraveného zdroja jadra systému Android od Xiaomi znamená, že ladenie a šmrncovanie na zariadeniach Xiaomi dostane zásah. A pre komunitu, ktorá sa venuje objavovaniu sveta Androidu a jeho premene na to najlepšie, čo môže byť, bez úpravy softvéru telefónov z najrýchlejšie rastúci OEM na svete je dôležitá vec.

Boli tu petície, aby Xiaomi dodržiavala GPLv2 a včas zverejnila svoje zdroje, no zatiaľ sa im podarilo získať len sľuby. A tieto sľuby stále neboli dodržané. Hugo Barra, viceprezident Xiaomi, v októbri 2014 sľúbil, že zdroje jadra pre Mi3 uvidíme v roku “v najbližších týždňoch”, ale to sa nikdy nestalo. Navyše v decembri minulého roku povedali, že ich zdroje budú zverejnené až v roku 2014, ale v roku 2015.

Prečo Xiaomi nezverejnilo zdroje pre svoje zariadenie Mi3 včas? Hugo Barra v decembri povedal, že tak neurobili, aby zabránili úniku informácií na ich nadchádzajúcich zariadeniach. Uvádza:

„Zdrojový kód jadra pre tieto zariadenia obsahuje značné množstvo zdrojového kódu, ktorý bude použitý v dvoch pripravovaných modeloch. Ak uvoľníme zdrojový kód jadra v jeho súčasnom stave, prezradíme o budúcich zariadeniach viac, ako by sme chceli. V budúcnosti to zmeníme, ale práve teraz je to obmedzenie, s ktorým musíme žiť. Dúfame, že túto pozíciu pochopíte a veľmi sa ospravedlňujeme za frustráciu, ktorú sme vám mohli spôsobiť!“

Ospravedlňuje to ich konanie? Samozrejme, že nie. Sú miliardárskym výrobcom v miliardárskom priemysle a veľmi dobre vedeli, že ich kód beží v súlade s podmienkami GPLv2 a že ho musia dodržiavať. V roku 2013 bolo urobené oznámenie hrdo sa chváli otvoreným zdrojom od Xiaomi Kernel. Urobili veľkú vec v tom, že vývojári mohli prispôsobiť pamäte ROM pre smartfóny Xiaomi a ich obhajcovia propagovali Xiaomi ako „všetko o zdieľaní kódu s otvoreným zdrojom“. Rýchly posun o rok dopredu a ich zdrojové kódy sú oneskorené z neospravedlniteľných dôvodov, keď mali byť ich zdroje jadra distribuované spotrebiteľov od začiatku, bez toho, aby čakali, kým ich spotrebitelia budú prenasledovať vidlami, a bez toho, aby sme im napľuli do tváre absurdnými meškania. A to ešte neberieme do úvahy prácu tých, čo išli pred nimi, a to povestné svinstvo Xiaomi (a každý ďalší OEM, ktorý nesleduje GPLv2) sa na ne vrhá zakaždým, keď vydajú nový zariadenie.

Pre tých čitateľov, ktorí nie sú oboznámení s týmto rozdielom, chcem uviesť ešte jednu vec: GPL je licencia a nie zmluva. Niektoré jurisdikcie vidia medzi týmito dvoma kľúčovými rozdielmi, pretože zmluvy sú vynútiteľné zmluvné právo a licencie spadajú pod autorské práva. Takže porušenie licenčnej lehoty je stále súdne. Distribútori, ktorí neprijmú zmluvné podmienky GPL, nemôžu podľa zákona kopírovať a distribuovať softvér GPL. Keďže sa rozhodli distribuovať softvér, sú vinní z porušenia zákona.

Či už niekto nesúhlasí s víziou GNU o demokratickom, otvorenom a inkluzívnom slobodnom softvéri, alebo nie, nerobí rozhodnutia spoločnosti Xiaomi a ich opakované porušovanie podmienok, do ktorých vstúpili, o nič menej nesprávne. Profitujú z Androidu rýchlosťou, ktorú žiadny súper nevidel a nedodržiavajú pravidlá, ktoré spravili Android tým, čím je dnes, pravidlá, ktoré umožnili výrobcom pôvodného zariadenia a jednotlivým vývojárom podporovať rast a pokrok v rámci ekosystému operačného systému. Pravidlá, ktoré milióny ľudí s úctou dodržiavajú, aby si vytvorili vlastnú úspešnú kariéru, svoje vlastné úspešné spoločnosti, a náš obľúbený koníček v XDA.

Z praktického hľadiska nie je najľahšie riešiť to na súde. Čínska vláda je si vedomý o krádeži patentov, pirátstve a porušovaní autorských práv všetkého druhu a druhu, ktoré sa dejú v krajine, ale nie je ochotný s tým čokoľvek urobiť. Mnohí analytici a akademici to obviňujú latentné plagiátorstvo ktoré Čína videla už roky, niektorí naznačujú, že by to mohlo byť neoddeliteľnou súčasťou konfuciánskej filozofie na ktorých je do značnej miery založená čínska kultúra. Ale či už majú akademici, analytici alebo frustrovaní podnikatelia pravdu, problém čínskeho porušovania autorských práv sa týka celého spektra produktov a Android nie je iný.

Xiaomi je v centre pozornosti ako jeden z najdôležitejších OEM súčasnosti, s povedomím o značke, ktoré každým dňom rastie, a s možným vpádom na americký trh čoskoro. Aj keď ich porušovanie nemusí znamenať veľa pre bežného spotrebiteľa Androidu, má vážny dopad nielen na vývojárov, ale aj na celý ekosystém. Ako naznačuje projekt GNU, tento konkrétny postup, špeciálne v tomto konkrétnom prípade, poškodzuje pokrok nášho milovaného softvéru.

A to je tiež vec rešpektu a pokory. Nechám vám citát vizionárskeho revolucionára, ktorý uznal, že jeho vplyv na svet bol taký vďaka predchádzajúcej práci tých pred ním. Dúfajme, že Xiaomi jedného dňa prijme túto filozofiu, splní podmienky a pomôže Androidu prosperovať tak, ako len on.