Aplikimi i Kriterit për Software të Lirë
nga Richard StallmanKatër liritë thelbësore japin kriteret për të gjykuar nëse një pjesë e dhënë kodi është e lirë/libre (pra, respekton lirinë e përdoruesve të vet). Si duhet t’i aplikojmë, për të gjykuar nëse një paketë software-i, një sistem operativ, një kompjuter, ose një faqe web e plotëson, për ta rekomanduar?
Qenia i lirë apo jo e një programi prek së pari vendimet tona mbi veprimtaritë tona private: që të ruajmë lirinë tonë, na duhet të hedhim poshtë programet që do ta na e merrnin atë. Por kjo prek edhe se ç’duhet t’u themi të tjerëve dhe si të veprojmë me ta.
Një program jo i lirë është një padrejtësi. Të shpërndash një program jo të lirë, t’u rekomandosh të tjerëve një program jo të lirë, ose, më përgjithësisht, t’i kthesh ata drejt një kahu që shpie në përdorimin e software-it jo të lirë, do të thotë t’i shpiesh drejt heqjes dorë nga liria e tyre. Padyshim, shpënia e njerëzve të përdorin software jo të lirë s’është e njëjta gjë me instalimin e software-it jo të lirë në kompjuterat e tyre, por s’duhet t’i shpiem njerëzit në drejtim të gabuar.
Në një nivel më të thellë, s’duhet të paraqesim një program jo të lirë si një zgjidhje, ngaqë kjo do t’i akordonte legjitimitet. Software-i jo i lirë është një problem; ta paraqitësh si zgjidhje, përbën mohim të ekzistencës së problemit.
Ky artikull shpjegon si i aplikojmë kriteret bazë të software-it të lirë, për të gjykuar gjëra të ndryshme, që të mund të vendosim nëse t’i rekomandojmë apo jo.
Paketa software
Që një paketë software-i të jetë e lirë, krejt kodi në të duhet të jetë i lirë. Por jo vetëm kodi. Ngaqë kartelat e dokumentimit, përfshi doracakë, README, regjistër ndryshimesh, e me radhë, janë pjesë thelbësore teknike të një pakete software edhe ato duhet të jenë të lira.
Një paketë software-i zakonisht përdoret tok me mjaft paketa të tjera dhe ndërvepron me disa prej tyre. Cilat lloje ndërveprimesh me programe jo të lirë janë të pranueshme nga ana etike?
GNU-në e zhvilluam që të kishte një sistem operativ të lirë, ngaqë më 1983-shin s’kishte të tillë. Teksa zhvilluam përbërësit fillestarë të GNU-së, gjatë viteve ’80, qe e pashmangshme që çdo përbërës varej nga software jo i lirë. Fjala vjen, asnjë program në C s’do të xhironte pa një përpilues jo të lirë C-je, deri sa GCC-ja të funksiononte dhe asnjë s’mund të xhironte pa libc Unix, deri sa të punonte glibc-ja. Çdo përbërës mund të xhironte vetëm në sisteme jo të lirë, ngaqë krejt sistemet qenë jo të lirë.
Pasi hidhnim në qarkullim një përbërës që mund të xhironte në disa sisteme jo të lirë, përdoruesit e kalonin atë në sisteme të tjerë jo të lirë; nga pikëpamja etike, këto kalime s’qenë më keq se sa kodi për një platformë të caktuar që na duhej për zhvillimin e këtyre përbërësve, ndaj i bëmë tonat arnimet e tyre.
Kur u kalua i lirë kerneli, Linux, më 1992-shin, plotësoi hendekun e fundit në sistemin GNU. (Fillimisht, më 1991-shin, Linux qe shpërndarë nën një licencë jo të lirë.) Ndërthurja e GNU-së dhe Linux-it solli një sistem të plotë të lirë operativ—GNU/Linux.
Në atë pikë, mund të kishim ndalur mbulimin për platforma jo të lira, por vendosëm të mos e bëjmë. Një sistem jo i lirë është padrejtësi, por s’është faji ynë pse një përdorues xhiron një të tillë. Mbulimi i një programi të lirë në atë sistem s’e përkeqëson padrejtësinë. Dhe është e dobishme, jo vetëm për përdoruesit e këtyre sistemeve, por edhe për tërheqjen e më tepër vetëve të kontribuojnë në zhvillimin e programit të lirë.
Por, një program jo i lirë që xhiron përsipër një programi të lirë është një çështje krejt tjetër, ngaqë i shpie përdoruesit të ndërmarrin një hap larg lirisë. Në disa raste nuk e lejojmë këtë: për shembull, GCC-ja ndalon përdorim shtojcash jo të lira. Kur një program lejon shtesa jo të lira, të paktën s’duhet t’i drejtojë njerëzit drejt përdorimit të tyre. Për shembull, zgjedhim LibreOffice, në vend se OpenOffice, ngaqë OpenOffice-i sugjeron përdorim shtesash jo të lira, ndërsa LibreOffice i shmang. IceCat-in e zhvilluam fillimisht për të shmangur propozim shtesash jo të lira të sugjeruara nga Firefox-i.
Në praktikë, nëse paketa IceCat shpjegon si të xhirohet IceCat-i në MacOS, kjo s’do t’i shpjerë njerëzit të xhirojnë MacOS. Por nëse flet për disa shtojca jo të lira, kjo do t’i nxisë përdoruesit e IceCat-it të instalojnë shtesën. Ndaj, paketa IceCat, përfshi doracakët dhe sajtin, s’duhet të flasë për gjëra të tilla.
Në ndonjë rast, një program i lirë dhe një program jo i lirë ndërveprojnë, por asnjëri s’bazohet në tjetrin. Rregulli ynë për raste të tilla është që nëse programi jo i lirë është shumë i njohur, duhet t’u themi njerëzve të përdorin programin tonë të lirë me të; por nëse programi pronësor është diçka pak e njohur, s’duhet t’ua shpiem mendjen te ekzistenca e tij. Ndonjëherë mbulojmë ndërveprimin me programin jo të lirë, nëse është i instaluar, por shmangemi t’u tregojmë përdoruesve mbi mundësinë e bërjes ashtu.
Hedhim poshtë “përmirësimet” që do të funksiononin vetëm në një sistem jo të lirë. Ato do t’i nxisnin njerëzit të përdorin sistemin jo të lirë, në vend se GNU-në, çka përbën autogol.
Shpërndarje GNU/Linux
Pas çlirimit të Linux-it më 1992-shin, njerëzit zunë të zhvillojnë shpërndarje GNU/Linux (“distro”). Vetëm pak prej tyre janë tërësisht software i lirë.
Rregullat për një paketë software kanë vend dhe për një shpërndarje: një shpërndarje etike duhet të përmbajë vetëm software të lirë dhe t’i shtyjë përdoruesit drejt software-it të lirë. Por ç’do të thotë që një shpërndarje të “përmbajë” një paketë të veçantë software?
Disa shpërndarje instalojnë programe nga paketa dyore që janë pjesë e shpërndarjes; disa të tjera montojnë çdo program që nga burimi përkatës kryesor dhe shprehimisht përmbajnë vetëm recetat për shkarkim dhe montim të tij. Për çështjen e lirisë, se si e instalon një shpërndarje një paketë të dhënë, s’ka rëndësi; nëse e paraqet atë paketë si një mundësi, ose këtë e bën sajti i saj, ne themi se e “përmban” atë paketë.
Përdoruesit e një sistemi të lirë kanë kontrollin e tij, pra mund të instalojnë ç’të kenë qejf. Shpërndarjet e lira furnizojnë mjete të përgjithshme me të cilat përdoruesit mund të instalojnë programet e tyre dhe versionet e tyre të ndryshuara të programeve të lira; munden edhe të instalojnë programe jo të lira. Sjellja e këtyre mjeteve të përgjithshme s’është ndonjë cen etik te shpërndarja, ngaqë zhvilluesit e shpërndarjes s’janë përgjegjës për çfarë marrin dhe instalojnë përdoruesit me dëshirën e tyre.
Zhvilluesit bëhen përgjegjës për instalimin e software-it jo të lirë kur i shpien përdoruesit drejt një programi jo të lirë—për shembull, duke e vënë në listën e paketave të shpërndarjes, ose duke e shpërndarë që nga shërbyesi i tyre, ose duke e paraqitur si një zgjidhje, në vend se një problem. Kjo është pika ku shumica e shpërndarjeve GNU/Linux kanë një cen etik.
Njerëzit që instalojnë vetë paketa software, kanë një farë aftësie për t’u marrë me gjëra të ndërlikuara: nëse u themi “Baby përmban kod jo të lirë, por Gbaby është i lirë”, mund të prisnim që të kujdesen të mbajnë mend cili është njëri apo tjetri. Por shpërndarjet u rekomandohen përdoruesve të rëndomtë, që hollësi të tilla do t’i harronin. Këta do të mendonin “Kë emër thanë se duhet të përdor? Më duket se qe Baby”.
Ndaj, për t’i rekomanduar publikut të përgjithshëm një shpërndarje, ngulim këmbë që emri i saj të mos jetë i ngjashëm me një shpërndarje që e kemi hedhur poshtë, që mesazhi ynë i rekomandimit vetëm të shpërndarjes së lirë të mund të transmetohet si duhet.
Një tjetër dallim mes një shpërndarjeje dhe një pakete software është se sa gjasa ka që të shtohet kod jo i lirë në të. Zhvilluesit e një programi e kontrollojnë me kujdes kodin që shtojnë. Nëse kanë vendosur ta bëjnë të lirë programin, ka pak gjasa të shtojnë kod jo të lirë. Ka pasur përjashtime, përfshi rastin shumë të dëmshëm të “copëzave dyore” që u shtuan te Linux-i, por ato janë një pjesë e vogël e programeve të lira që ekzistojnë.
Në ndryshim me këtë, një shpërndarje GNU/Linux zakonisht përmban mijëra paketa dhe zhvilluesit e shpërndarjes mund të shtojnë qindra paketa në vit. Pa një përpjekje të kujdesshme për të shmangur paketa që përmbajnë software jo të lirë, me siguri do të na shpëtojnë disa. Ngaqë shpërndarjet e lira janë të pakta në numër, ne u kërkojmë zhvilluesve të çdo shpërndarjeje të lirë të japin fjalën se do ta mbajnë shpërndarjen software të lirë, duke hequr çfarëdo kodi jo të lirë apo malware, si një kusht për shtimin e asaj shpërndarje te lista e të lirave. Shihni udhëzimet shpërndarjeje sistemi të lirë GNU.
S’kërkojmë premtime të tilla për paketa software: s’është gjë që bëhet dhe, për fat, jo e nevojshme. Të marrësh premtime nga zhvilluesit e 30 mijë programeve të lira se do t’i mbajnë ato të lira do të shmangte pak probleme, me koston e shumë pune për ekipin e FSF-së; më tej, shumica e këtyre zhvilluesve nuk kanë ndonjë marrëdhënie me Projektin GNU dhe mund të mos u interesojë të na bëjnë çfarëdo premtimi. Ndaj, merremi me rastet e rralla ku bëhet fjalë për ndryshim nga i lirë në jo të lirë, kur mësojmë për të tilla.
Pajisje periferike
Një pajisje periferike kompjuteri lyp software në kompjuter—ndoshta një përudhës, ndoshta firmware që duhet nga ngarkuar nga sistemi te pajisja për ta bërë të funksionojë. Ndaj, një pajisje periferike është e pranueshme të përdoret dhe të rekomandohet nëse mund të përdoret nga një kompjuter që s’ka të instaluar software jo të lirë—përudhësi i pajisjes dhe çfarëdo firmware-i që sistemit i duhet të ngarkojë në të, të jenë të lirë.
Është e thjeshtë të kontrollohet kjo: lidheni pajisjen periferike në një kompjuter që xhiron një shpërndarje GNU/Linux tërësisht të lirë dhe shihni nëse funksionon. Por shumica e përdoruesve do të donin ta dinin këtë para se ta blejnë pajisjen periferike, ndaj te h-node.org, një bazë të dhënash hardware-i për sisteme operativë tërësisht të lirë, paraqesim hollësi rreth mjaft pajisjesh periferike .
Kompjutera
Një kompjuter përmban software në nivele të ndryshme. Me çfarë kriteri duhet të certifikojmë se një kompjuter “Respekton Lirinë Tuaj”?
E qartë që sistemi operativ dhe gjithçka mbi të duhet të jetë e lirë. Në vitet ’90, software-i i nisjes (BIOS-i, atëbotë) u bë i zëvendësueshëm dhe, meqë xhiron në CPU, është i njëjti lloj problemi si me sistemin operativ. Ndaj, programe të tillë si firmware-i dhe përudhësit që instalohet në ose me sistemin, ose software-i i nisjes, duhet të jenë të lirë.
Nëse një kompjuter ka veçori hardware që lypin instalim përudhësish ose firmware-i jo të lirë në sistem, mund të jemi në gjendje ta marrim përsipër. Nëse është i përdorshëm pa këto veçori dhe nëse mendojmë se shumica e njerëzve s’do të shpihen drejt instalimit të software-it të lirë për ta bërë të funksionojë, atëherë mund të marrim përsipër. Përndryshe s’mundemi. Kjo do të jetë punë gjykimi.
Një kompjuter mund të ketë firmware dhe mikrokod në nivele të ulët të instaluar paraprakisht, që mund të ndryshohet. Mund të ketë edhe kod në kujtesë read-only të njëmendtë. Në kriteret tona të certifikimit sot, vendosëm t’i shpërfillim këto programe, ngaqë përndryshe s’do të kualifikohej as edhe një kompjuter dhe ngaqë firmware-i i cili normalisht s’ndryshohet, nga pikëpamja etike është i barasvlershëm me qarqet. Ndaj kriteret tona të certifikimit mbulojnë vetëm kodin që xhiron në procesorin kryesor të kompjuterit dhe që s’gjendet në kujtesë read-only të njëmendtë. Kur të bëhet dhe dora-dorës që software-i i lirë bëhet i mundshëm për nivele të tjerë të përpunimit, do të kërkojmë doemos për software të lirë edhe në ato nivele.
Ngaqë certifikimi i një produkti është një promovim aktiv i tij, këmbëngulim që shitësi, nga ana e vet, të na përkrahë, duke folur mbi software-in e lirë, në vend se mbi burimin e hapët dhe t’i referohet ndërthurjes së GNU-së me Linux-in si “GNU/Linux”. S’kemi detyrime të promovojmë aktivisht projekte që nuk njohin punën tonë dhe që s’përkrahin lëvizjen tonë.
Shihni kriteret tona për certifikim.
Faqe Web
Sot, mjaft faqe web përmbajnë programe të ndërlikuar JavaScript dhe s’do të funksionojnë pa ta. Kjo është një praktikë e dëmshme, ngaqë pengon kontrollin e përdoruesve mbi punën e tyre me kompjuterat. Për më tepër, shumica e këtyre programeve janë jo të lirë, një padrejtësi. Shpesh kodi JavaScript spiunon përdoruesin. JavaScript-i është shndërruar në një sulm ndaj lirisë së përdoruesve.
Për trajtimin e këtij problemi, kemi zhvilluar LibreJS, një shtesë për Firefox që bllokon kod jo trivial, jo të lirë JavaScript. (S’ka nevojë të bllokohen programthe të thjeshtë që sendërtojnë marifete të vogla në ndërfaqen e përdoruesit.) U kërkojmë sajteve që të çlirojnë programet e tyre JavaScript dhe t’u vënë shenjë licencave të tyre për t’u njohur nga LibreJS.
Nga ana tjetër, a është etike të krijohet lidhje për te një faqe web që përmban një program JavaScript jo të lirë? Po të ishim tërësisht të patundur, do të lidhnim vetëm kod JavaScript të lirë. Por shumë faqe funksionojnë edhe kur kodi i tyre JavaScript s’funksionon. Po ashtu, JavaScript jo të lirë në shumicën e rasteve do të hasni në rrugë të tjera nga ndjekja e lidhjeve tona; për ta shmangur, duhet të përdorni LibreJS-in, ose të çaktivizoni JavaScript-in. Ndaj kemi vendosur të ecim para dhe të lidhim faqe që funksionojnë pa JavaScript jo të lirë, teksa, në përgjithësi, u kërkojmë përdoruesve të mbrojnë veten nga JavaScript-i jo i lirë.
Megjithatë, nëse një faqe s’bën dot punën e vet pa xhiruar kod JavaScript të lirë, krijimi i lidhjeve për te ajo, në mënyrë të pamohueshme, u kërkon njerëzve të xhirojnë atë kod jo të lirë. Në parim, s’krijojmë lidhje për te faqe të tilla.
Përfundim
Aplikimi i idesë së thjeshtë se software-i duhet të jetë i lirë në situata të ndryshme shpie te rregulla të ndryshme praktike. Teksa lindin situata të reja, Projekti GNU dhe Free Software Foundation do t’i përshtatin kriteret tonë të lirisë, për t’i shpënë përdoruesit e kompjuterave drejt lirisë, praktikisht dhe parimisht. Duke rekomanduar vetëm programe, shpërndarje dhe produkte hardware që respektojnë lirinë dhe duke deklaruar politikën tonë,mund të jepni përkrahjen aq të nevojshme për lëvizjen e software-it të lirë.