This translation may not reflect the changes made since 2014-05-26 in the English original.
You should take a look at those changes. Please see the Translations README for information on maintaining translations of this article.
Što je slobodni softver?
Definicija slobodnog softvera
Definicija slobodnog softvera predstavlja kriterij po kojemu se određeni program može svrstati u kategoriju slobodnog softvera. S vremena na vrijeme revidiramo ovu definiciju kako bismo pojasnili ili razriješili neke fine razlike u značenjima. Na kraju ovog dokumenta nalazi se dio o povijesti izmjena koje utječu na definiciju slobodnog softvera.
“Slobodni softver” podrazumijeva računalne programe koji poštuju slobodu korisnika i zajednice. To znači da korisnici imaju slobodu pokretati, kopirati, distribuirati, proučavati, mijenjati i poboljšavati programe. S tim slobodama korisnici (individualno i kolektivno) imaju kontrolu nad programom i nad onim što on za njih čini. Radi boljeg razumijevanja, koncept treba promatrati u smislu slobode govora, ne cijene.1.
Zalažemo se za te slobode jer smatramo da ih svatko zaslužuje. Ovim slobodama korisnik – pojedinac, ali i zajednica općenito – kontrolira i program i ono što njime čini. Kada korisnici nemaju kontrolu nad programom, takav program zovemo “neslobodnim”. Neslobodni program kontrolira korisnika, a kako razvijatelj kontrolira program, čini ga instrumentom nepravedne moći.
Program je slobodan ako korisnici programa imaju četiri osnovne slobode:
- Sloboda pokretanja programa u bilo koje svrhe (sloboda 0).
- Sloboda proučavanja rada i prilagodba programa kako bi vršio računalne aktivnosti koje želite (sloboda 1). Dostupnost je izvornog kôda za to preduvjet.
- Sloboda distribucije kopijâ kako biste pomogli bližnjemu (sloboda 2).
- Sloboda distribucije izmijenjenih inačica programa (sloboda 3) čime vaše izmjene koriste cijeloj zajednici. Dostupnost je izvornog kôda za to preduvjet.
Program je slobodni softver ako korisnicima osigurava sve spomenute slobode. U suprotnom je riječ o neslobodnom programu. Naravno, moguće je raspravljati o tome koliko su pojedine neslobodne distribucijske sheme udaljene od onoga što se smatra slobodnim; mi ih ipak sve smatramo jednako neetičnima.
Stranica u nastavku objašnjava što je nužno za ostvarivanja svake od slobodâ , ali isto tako opisuje i koje su situacije neadekvatne za pojedinu slobodu.
Slobode koja se odnose na distribuiranje programa (slobode 2 i 3) podrazumijevanju slobodno dijeljene kopija – bez obzira na to jesu li programi izmijenjeni ili ne, bez obzira traži li se ili ne traži naknada za distribuciju – svakome i svagdje. Biti u mogućnosti to činiti znači da (između ostaloga) za takve radnje nije potrebno prethodno tražiti ili platiti odobrenje.
Trebali biste imati i slobodu mijenjati program i koristiti izmjene privatno u vašem poslu ili igri bez ikakve obveze spominjanja njihova postojanja. Ako izmjene objavite, niste obvezni nikoga i ni na koji način upozoriti.
Sloboda pokretanja programa označava slobodu osobe ili organizacije da ga rabi na bilo kojoj vrsti računalnog sustava, za bilo koju vrstu sveukupnog posla i svrhe bez ikakve obveze naknadnog priopćavanja razvijatelju programa ili bilo kojem posebnom tijelu. U toj je slobodi važna korisnička namjera, a ne namjera razvijatelja; vi ste kao korisnik slobodni pokretati program u svrhe koje vama odgovaraju, a ako ga distribuirate nekom drugom, on je tada slobodan pokrenuti program za svoje i vi nemate pravo toj osobi nametati svoje namjene.
Sloboda distribuiranja kopija mora uključivati binarne ili izvršne datoteke programa kao i izvorni kod izmijenjene i izvorne inačice. Distribuiranje je programa u izvršnim datotekama nužno za slobodne operacijske sustave kako bi se na njih mogli lakše instalirati. Izostanak binarnih datoteka programa razumljiv je ako ne postoji način izrade binarnih ili izvršnih datoteka budući da neki programski jezici ne podržavaju tu značajku, ali ljudi moraju imati slobodu distribuiranja takvih oblika kako bi pronašli ili razvili način njihove izrade.
Da bi slobode 1 i 3 (sloboda stvaranja i sloboda objavljivanja izmijenjenih inačica) bile smislene, nužno je imati pristup izvornom kôdu. Dostupnost je izvornog kôda preduvjet za slobodni softver. Namjerno višeznačan i nerazumljiv (obfuscated) “izvorni kôd” nije pravi izvorni kôd i ne može se smatrati izvornim kôdom.
Sloboda 1 uključuje slobodu korištenja izmijenjene inačice umjesto originala. Ako je program isporučen u proizvodu dizajniranom za izvođenje tuđih izmijenjenih inačica, ali odbija izvoditi vaše — praksa znana kao “tivoizacija”, ili “svođenje na zaključavanje” (lockdown), ili (u izopačenoj terminologiji njezinih praktikanata) kao “sigurno podizanje sustava” (secure boot) — sloboda 1 postaje teoretska fantastika prije negoli praktična sloboda. To nije dovoljno. Takve binarne datoteke nisu slobodni softver iako je izvorni kôd iz kojeg su prevedene slobodan.
Jedan važan način preinake programa je uključivanje dostupnih slobodnih potprograma i modula. Ako licencija programa kaže da ne možete uključiti pogodno licencirani postojeći modul, ako zahtijeva od vas da budete posjednik autorskih prava bilo kojeg dodanog koda, tada je licencija odviše restriktivna da bi se mogla kvalificirati slobodnom.
Sloboda 3 uključuje slobodu objavljivanja vaše izmijenjene inačice kao slobodnog softvera. Slobodna licencija može dopustiti i druge načine objavljivanja; ne mora se nužno raditi o tzv. copyleftu. Naravno, licencija koja zahtijeva da se izmijenjene inačice objavljuju kao neslobodne, ne može se smatrati slobodnom licencijom.
Da bi te slobode bile stvarne, moraju biti trajne i neopozive sve dok ne činite neko zlo; ako razvijatelj programa ima moć opozivanja licencije ili retroaktivnog ograničavanja pravila – a da uzrok tomu nije vaše zlonamjerno djelovanje – program nije slobodan.
Ipak, prihvatljiva su određena pravila o načinu distribuiranja slobodnog softvera sve dok nisu u sukobu s osnovnim slobodama. Na primjer, copyleft je – vrlo pojednostavnjeno – pravilo koje vam pri distribuciji programa zabranjuje ograničavanje slobode drugima. Ovo pravilo nije u sukobu s osnovnim slobodama; zapravo ih štiti.
U projektu GNU koristimo copyleft kako bismo svima pravno zagarantirali četiri slobode. Vjerujemo da postoje jaki razlozi za korištenje copylefta. Ali etičnim smatramo i slobodni softver koji nije zaštićen copyleftom. Pogledajte u kakvom su međusobnom odnosu kategorije slobodni softver, softver zaštićen copyleftom, ali i druge kategorije.
Slobodni softver nije netržišni, nekomercijalni softver. Slobodni softver mora biti dostupan za tržišnu upotrebu, tržišno razvijanje i tržišnu distribuciju. Tržišno razvijanje slobodnog softvera više nije neobično; takav je softver vrlo važan. Možda ste platili kopije slobodnog softvera, možda ste ih dobili besplatno – ma kako vi došli do kopija, uvijek imate slobodu ponovno ih i mijenjati i kopirati – pa čak i prodavati.
Rezultira li izmijena poboljšanjem, subjektivna je stvar. Ako je vaše pravo da mijenjate program ograničeno na izmjene koje netko drugi smatra poboljšanjem, takav se program ne može smatrati slobodnim.
Međutim, prihvatljiva su pravila o načinu pakiranja izmijenjenih inačica ako ona djelotvorno ne sprječavaju vašu slobodu ustupanja izmijenjenih inačica ili vašu slobodu da privatno napravite i koristite izmijenjene inačice. Dakle, prihvatljivo je da licencija traži promjenu imena programa koji se mijenja, odstranjivanje loga ili naznačavanje vaših preinaka sve dok vas ti zahtjevi ne sprječavaju u objavljivanju vaše izmjene; budući da ionako već radite izmjene na programu, vjerojatvno vam neće biti teško napraviti i te.
Pravila koja kažu “ako napravite inačicu dostupnu na ovaj način, morate je isto napraviti dostupnom na onaj način” također mogu biti prihvatljiva pod istim uvjetom. Primjer takvog prihvatljivog pravila je ono koje govori da ako ste distribuirali izmijenjenu inačicu i prijašnji razvijatelj traži kopiju iste – morate kopiju poslati. Valja primijetiti da takvo pravilo još uvijek ostavlja izbor želite li uopće inačicu i distribuirati. prihvatljiva su i pravila koja zahtijevaju objavu izvornog kôda korisnicima za inačice koje ste stavili u javnu upotrebu.
Poseban problem nastaje kada licencija zahtijeva izmjenu imena kojim će se program pozivati iz drugih programa. To vas može sputavati u efektivnom objavljivanju izmijenjene inačice tako što može zamijeniti original pri pozivanju iz drugih programa. Ovakva je vrsta zahtjeva prihvatljiva samo ako postoji pogodno postrojenje za upravljanje pseudonimima koje vam dopušta da odredite ime originala kao pseudonim izmijenjene inačice.
Ponekad vladini propisi o kontroli izvoza i trgovinske sankcije mogu utjecati na slobodu distribuiranja kopija u inozemstvo. Razvijatelji računalnih programa nemaju moć uklanjanja ili nadglasavanja tih restrikcija, ali ono što mogu i moraju napraviti jest odbiti njihovo nametanje kao uvjet korištenja programa. Na taj način restrikcije neće utjecati na aktivnosti i korisnike izvan nadležnosti tih vladâ. Dakle, licencije se slobodnog softvera ne trebaju obvezivati na poslušnost kojem od netrivijalnih propisa o izvozu kao uvjetu za ostvarivanje osnovnih sloboda.
Valja spomenuti kako je postojanje propisâ o izvozu prihvatljivo budući da takvi propisi ne ograničavaju korisnika, ali ne smiju biti uvjet samom licenciranju. Ako je s gledišta slobodnog softvera neki od izvoznih propisa trivijalan, ne predstavlja problem, ali potencijalno može postati problem budući da ga daljnje izmjene u zakonu koji se odnosi na izvoz mogu učiniti netrivijalnim te tako predstaviti program neslobodnim.
Slobodna licencija ne može tražiti prihvaćanje uvjeta korištenja licencija neslobodnih programa. Naprimjer, ako vas licencija traži da prihvatite određene uvjete s obzirom na sve programe koje koristite, a u slučaju da korisnik koristi neslobodan program, to bi značilo prihvaćanje licencije i tih neslobodnih programa; time licencija postaje neslobodnom.
Dozvoljeno je da slobodna licencija navodi pod koju zakonsku nadležnost ulazi, gdje bi se parnice trebale održati, ili oboje.
Većina je licencijâ slobodnog softvera temeljena je na autorskim pravima i postoje granice u vrstama zahtjeva koji mogu biti nametnuti kroz autorsko pravo. Ako licencija temeljena na autorskom pravu poštuje slobodu na ranije opisan način, vjerojatno neće doći do problema koje nismo predvidjeli (iako postoji mogućnost). Međutim, neke licencije slobodnog softvera su temeljene na ugovorima koji mogu nametnuti mnogo veći opseg mogućih ograničenja. To znači da postoje mnogi načini na koje takva licencija može biti neprihvatljivo ograničavajuća i neslobodna.
Nismo u mogućnosti popisati sve načine na koje se to može dogoditi. Ako licencija temeljena na ugovoru ograničava korisnika na uobičajen način, ograničenje koje licencija temeljena na autorskom pravu ne može napraviti i koje nije spomenuto ovdje kao legitimno, morali bismo posebno razmotriti i vjerojatno bismo zaključili da je riječ o neslobodnoj licenciji.
Govoreći o slobodnom softveru, najbolje je izbjegavati riječi poput “dijeliti” ili “dati besplatno”, one impliciraju pitanje cijene, ne slobode. Neki uobičajeni termini kao što je “piratstvo” označavaju način razmišljanja koji, nadamo se, ne odobravate. Pogledajte zbunjujuće riječi i izraze koje je najbolje izbjegavati u takvim raspravama. Također imamo popis ispravnih prijevoda “slobodnog softvera” i na razne jezike.
Napokon, primijetite da kriteriji, kakvi su iskazani u ovoj definiciji slobodnog softvera, zahtijevaju savjesno promišljanje kako bi se ispravno interpretirali. Da bi se došlo do odluke o tome treba li neku softversku licenciju kvalificirati licencijom slobodnog softvera, prosuđujemo na temelju toga odgovara li licencija duhu kriterijâ i njihovim preciznim izrazima. Ako licencija uključuje nesavjesne restrikcije, odbijamo je čak iako nismo predvidjeli takve probleme ovim kriterijima. Ponekad zahtjevi licencije podižu pitanje koje zahtijeva opsežno razmatranje (uključujući i raspravu s odvjetnikom) prije negoli se odluka o prihvatljivosti zahtjeva. Po donošenju zaključaka o novom predmetu, često ažuriramo ove kriterije da bismo olakšali razumijevanje razloga zbog kojih se određene licencije kvalificiraju ili ne kvalificiraju.
Zanima li vas je li neka licencija kvalificirana licencijom slobodnog softvera, pogledajte naš popis. Ako licencija kojom se bavite nije uključena u popis, postavite nam pitanje o toj licenciji na adresu elektroničke pošte <licensing@gnu.org>.
Razmišljate li o pisanju nove licencije, prvo kontaktirajte Zakladu za slobodan softver na navedenu adresu. Proliferacija različitih licencija slobodnog softvera znači povećani napor za korisnike da shvate te licencije; možda vam možemo pomoći predlaganjem postojeće licencije koja odgovara vašim potrebama.
Naravno, postoji li zaista potreba za novom licencijom, uz našu pomoći možete biti sigurni da će nova licencija zaista biti licencija slobodnog softvera te time možete izbjeći različite praktične probleme.
Nakon softvera
Softverski priručnici moraju biti slobodni iz istih razloga zbog kojih softver mora biti slobodan, priručnici su zapravio dio računalnog programa.
Isti argumenti također imaju smisla za druge vrste djela praktične upotrebe, to jest djela koja utjelovljuju korisno znanje kao što su djela za obrazovanje i referentna djela. Wikipedija je najbolje znani primjer.
Svaka vrsta djela može biti slobodna i definicija slobodnog softvera je proširena na definiciju slobodnih kulturoloških djela primjenjivu na bilo koju vrstu djela.
Otvoreni izvorni kod?
Jedna je druga grupa počela koristiti termin “otvoreni izvorni kôd” (en. open source) kako bi označila nešto blisko (ali ne identično) “slobodnom softveru”. Više volimo termin “slobodan softver” jer kada se sloboda spominje i u nazivu, cijeli termin odmah asocira na slobodu. Riječ “otvoreni” nikada ne podsjeća na slobodu.
Povijest
S vremena na vrijeme revidiramo definiciju slobodnog softvera. Ovdje se nalazi popis važnijih izmjena zajedno sa poveznicama kako bi se vidjelo što se točno mijenjalo.
- Inačica 1.131: Slobodna licencija ne mora tražiti suglasnost neslobodne licencije drugog programa.
- Inačica 1.129: Izričito navesti da je dozvoljen odabir nadležnog zakonodavstva i nadležnog suda. (Ovo je oduvijek bilo naše stajalište.)
- Inačica 1.122: Kontrola izvoza postaje problem ako uvjeti izvoza nisu trivijalni, u suprotnom se radi samo potencijalno o problemu.
- Inačica 1.118: Pojašnjenje: proglem je ograničen na vaše pravo na izmjenu, ne na promjene koje ste već napravili. Izmjene nisu ograničene na “poboljšanja”.
- Inačica 1.111: Pojasni 1.77 govoreći da su samo retroaktivne restrikcije neprihvatljive. Vlasnici autorskih prava mogu uvijek dodijeliti dodatna dopuštenja za uporabu djela objavljivanjem djela paralelno na drugi način.
- Inačica 1.105: Pojasni, u kratkoj izjavi slobode 1, svrhu (već izjavljenu u inačici 1.80) da sloboda uistinu uključuje uporabu vaše izmijenjene inačice u vašim računalnim aktivnostima.
- Inačica 1.92: Pojasni da se namjerno višeznačan i nerazumljiv kod ne kvalificira kao izvorni kod.
- Inačica 1.90: Pojasni da sloboda 3 znači pravo distribuiranja kopija vaše vlastite izmijenjene ili poboljšane inačice, ne pravo sudjelovanja u tuđem razvojnom projektu.
- Inačica 1.89: Sloboda 3 uključuje pravo objave izmijenjenih inačica kao slobodnog softvera.
- Inačica 1.80: Sloboda 1 mora biti praktična, ne samo teoretska, to jest, bez tivoizacije.
- Inačica 1.77: Pojasni da su sve retroaktivne izmjene u licenci neprihvatljive, čak iako nisu opisane kao potpune zamjene.
- Inačica
1.74: Četiri pojašnjenja točaka koje nisu bile dovoljno eksplicitne, ili
su navedene na nekim mjestima, ali nisu odražene svugdje:
- "Poboljšanja" ne znači da licenca može nezavisno ograničiti vrste izmijenjenih inačica koje možete objaviti. Sloboda 3 uključuje distribuiranje izmijenjenih inačica, ne samo izmjena.
- Pravo uključivanja postojećih modula se odnosi na one koji su pogodno licencirani.
- Eksplicitno navedi zaključak o smislu kontrole izvoza.
- Nametanje izmjene licence tvori opoziv stare licence.
- Inačica 1.57: Dodaj odjeljak "Nakon softvera".
- Inačica 1.46: Pojasni čija svrha je značajna u slobodi da se pokreće program u bilo koje svrhe.
- Inačica 1.41: Pojasni formulaciju o licencama baziranima na ugovoru.
- Inačica 1.40: Objasni da slobodna licenca mora dopustiti vama da koristite drugi dostupni slobodan softver da biste napravili vaše preinake.
- Inačica 1.39: Primijeti da je prihvatljivo za licencu da zahtijeva od vas da pružite izvorni kod za inačice softvera kojeg stavljate u javnu upotrebu.
- Inačica 1.31: Primijeti da je prihvatljivo za licencu da zahtijeva od vas da se identificirate kao autor preinaka. Druga manja pojašnjenja kroz tekst.
- Inačica 1.23: Adresiraj potencijalne probleme vezane uz licence bazirane na ugovoru.
- Inačica 1.16: Objasni zašto je distribucija binarnih datoteka važna.
- Inačica 1.11: Primijeti da slobodna licenca može zahtijevati od vas da autoru pošaljete kopiju inačice koju distribuirate.
Postoje praznine u brojevima inačica pokazanima iznad jer postoje druge izmjene na stranici koje ne utječu na definiciju ili njezinu interpretaciju. Popis ne sadrži izmjene koje se odnose na pravopis, oblikovanje teksta te neke druge elemente koji se tiču stranice. Možete pregledati potpuni popis izmjena na stranici kroz cvsweb sučelje.
Bilješke prevoditelja
- Engleski jezik ne razlikuje pojam “slobodan” od pojma “besplatan”, nego i za jedno i za drugo koristi riječ free pa se u engleskoj inačici teksta upozorava da bi se na koncept slobodnog softvera (eng. free software) trebalo gledati kao na slobodu govora, a ne kao na besplatno pivo (eng. free beer).