Resni očitki o Googlovem kršenju GPL v Androidu

Matej Huš

22. mar 2011 ob 08:29:30

Google se je znašel pred velikim problemom na svoji platformi Android, saj vse kaže, da je kršil licenco GPL. Android je strukturiran na več ravneh, tako da kljub Linuxovi osnovi cel sistem ni izdan pod licenco GPL. Spodnji del arhitekture, Linuxovo jedro, je pod licenco GPL, medtem ko za uporabniški prostor to ne velja več (stran 36). Ta se z jedrom povezuje prek knjižice Bionic, kar pravno omogoča licenciranje višje programske opreme pod manj odprtimi (npr. Apache Software License ali licence BSD/MIT) ali celo zaprtimi licencami (npr. odjemalec za Gmail je zaprtokoden). Ta strukturiranost je bistven del Googlove strategije, saj jim omogoča, da z Androidom kaj zaslužijo, proizvajalcem telefonom pa z različnimi programskimi dodatki diferencirajo svojo ponudbo.

Težava je, da je Google v knjižico Bionic skopiral okoli poltretji megabajt kode Linuxa, pri čemer je iz kode pobrisal komentarje in na začetek zapisal, da izvlečeni material ne vsebuje nobenih informacij, ki bi jih bilo moč zaščititi po avtorskem pravu (no copyrightable information). Ta navedba je sporna, ker so prekopirane različne funkcije in algoritmi, ki so zaščiteni z GPL (to je že leta 2003 jasno povedal tudi Linus Torvalds).

Google je sedaj v zagati. Če se res izkaže, da bi Bionic moral biti objavljen pod GPL in ni (kar zelo verjetno), ima to posledice na celoten ekosistem Android. To bi pomenilo, da morajo biti vsi deli sistema objavljeni pod GPL. Na eni strani bi to uničilo Googlovo zmožnost monetizacije Androida, po drugi strani pa tudi partnerske razvijalce mobilnih telefonov, ki se ne bi mogli več zanašati na lastne aplikacije kot konkurenčno prednost, saj bi jih morali pod GPL ponuditi celemu svetu.

Google ne more celotnega sistema licencirati pod GPL, s čimer bi zadovoljil zahteve licence GPL, ker za del programske opreme nima avtorskih pravic in je že objavljen pod drugimi, nezdružljivimi licencami (recimo Dalvik s kodo iz projekta Apache Harmony). Rešitev, ki bi ohranila trenutno stanje licenciranosti različnih delov sistema, je zamenjava Bionica s knjižico glibc, ki je pod licenco LGPL in ga na primer že uporabljajo MeeGo, webOS in drugi. To pa bi imelo hude posledice za združljivost novih verzij Androida s starimi.