Open source

De la Wiki.lug.ro
Versiunea din 8 noiembrie 2013 00:54, autor: Rz (Discuție | contribuții)

(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)
Salt la: navigare, căutare

Aceasta este o traducere a documentului http://opensource.org/osd-annotated deocamdată traducerea acestui document este în formă brută. Puteți contribui la îmbunătățirea lui.

Definiția Open Source[modificare]

Introducere[modificare]

"Surse deschise" nu înseamnă doar acces la codul sursă. Termenii de distribuție ai programelor Open Source trebuie să se conformeze următoarelor criterii:

1. Redistribuire liberă[modificare]

Licența nu trebuie să impună nimănui restricția de a vinde sau a oferi gratuit programul ca o componentă a unei distribuții software agregate ce conține programe din diferite surse. Licența nu trebuie să solicite vreun tarif autorului sau altă taxă pentru vânzare.

Raționament: Prin constrângerea licenței să necesite redistribuire liberă, eliminăm tentația de a renunța la multe câștiguri pe termen lung pentru câștiguri pe termen scurt. Dacă nu am face asta, ar exista multe presiuni de a dezerta pentru cei care cooperează.

2. Codul sursă[modificare]

Programul trebuie să includă codul sursă și trebuie să permită distribuția atât sub formă de cod sursă cât și sub formă compilată. Atunci când o formă a unui produs nu este distribuită cu codul sursă, trebuie să fie făcut cunoscut modul de a obține codul sursă contra a nu mai mult decât costul de reproducere, preferabil descărcarea de pe Internet fără perceperea unei taxe. Codul sursă trebuie să fie forma preferată în care un programator ar modifica programul. Obscurarea deliberată a codului sursă nu este permisă. Forme intermediare cum ar fi rezultatul unui preprocesor sau translator nu sunt permise.

Raționament: Solicităm accesul la codul sursă în clar pentru că nu poți evolua programe fără să le modifici. De vreme ce scopul nostru este să facilităm evoluția, solicităm ca modificările să fie ușor de făcut.

3. Lucrări derivate[modificare]

Licența trebuie să permită modificări și lucrări derivate și trebuie să permită distribuirea lor sub aceiași termeni ca și licența programului original.

Raționament: Simpla abilitate de a citi codul sursă nu este suficientă pentru a susține revizuirea independentă și selecția evolutivă rapidă. Pentru ca o evoluție rapidă să aibă loc, oamenii trebuie să poată experimenta cu și să distribuie modificările.

4. Integritatea autorului codului sursă[modificare]

Licența poate restricționa codul sursă de la a fi distribuit în formă modiicată doar dacă licența permite distribuirea de "fișiere patch" împreună cu codul sursă cu scopul de a modifica programul la momentul compilării. Licența trebuie să permită explicit distribuirea programului compilat din codul sursă modificat. Licența poate să solicite ca lucrările derivate să poarte alt nume sau număr de versiune față de programul original.

Raționament: Încurajarea unui număr mare de îmbunătățiri este un lucru bun, dar utilizatorii au dreptul să știe cine este responsabil pentru programul pe care îl folosesc. Autorii și maintainerii au dreptul reciproc de a ști ce li se cere să susțină și de a-și proteja reputația.

În consecință, o licență open source trebuie să garanteze că sursele sunt disponibile, dar poate să ceară ca acestea să fie distribuite ca surse originale plus patch-uri. În acest fel, schimbările "neoficiale" pot fi disponibile dar ușor de distins de sursele de bază.

5. Fără discriminare împotriva persoanelor și grupurilor[modificare]

Licența nu trebuie să discrimineze împotriva vreunei persoane sau grup de persoane.

Raționament: Pentru a obține maximum de beneficiu în urma procesului, oricine trebuie să poată contribui la sursele deschise. Prin urmare interzicem oricărei licențe open source de a elimina pe cineva din acest proces.

Unele țări, printre care Statele Unite, au restricții de export pentru anumite tipuri de software. O licență conformă OSD poate avertiza licențiatorii în privința restricțiilor aplicabile și le poate aminti că sunt obligați să urmeze legea; totuși, nu poate încorpora astfel de restricții la rândul său.

6. Fără discriminare împotriva domeniilor de activitate[modificare]

Licența nu trebuie să restricționeze pe nimeni de la a folosi programul în anumite câmpuri de activitate. De exemplu, nu poate restricționa programul de a fi folosit de către o afacere sau pentru cercetări genetice.

Raționament: Intenția majoră a acestei clauze este de a interzice capcane de licențiere care să prevină sursele deschise să fie utilizate comercial. Vrem ca utilizatorii comerciali să se alăture comunității noastre, nu să se simtă excluși.

7. Distribuirea licenței[modificare]

Drepturile atașate programului trebuie să se aplice tuturor celor cărora programul le este distribuit fără a fi nevoie să se suprapună o licență suplimentară de către acele părți.

Raționament: Această clauză se dorește a interzice închiderea software-ului prin mijloace indirecte cum ar fi necesitatea unui acord de confidențialitate.

8. Licența nu trebuie să fie specifică unui produs[modificare]

Drepturile atașate programului nu trebuie să condiționeze programul să fie parte a unei anumite distribuții software. Dacă un program este extras din acea distribuție și folosit sau distribuit în termenii licenței programului, toate părțile cărora programul le este distribuit trebuie să aibă aceleași drepturi ca și cei cărora le este acordat dreptul în conjuncție cu distribuția software originală.

Raționament: Această clauză previne o altă clasă de capcane de licențiere.

9. Licența nu trebuie să restricționeze alte programe[modificare]

Licența nu trebuie să restricționeze alte programe distribuite cu programul licențiat. De exemplu, licența nu trebuie să insiste ca toate celelalte programe distribuite pe același mediu să fie programe open source.

Raționament: Distribuitorii de programe open source au dreptul să facă propriile alegeri în privința programelor proprii.

Da, GPL v2 și v3 sunt conforme acestei cerințe. Programele legate cu librării GPL moștenesc GPL doar dacă formează o singură lucrare, nu orice software cu care doar sunt distribuite împreună.

10. Licența trebuie să fie neutră tehnologic[modificare]

Nicio provizie a licenței nu se poate răsfrânge asupra vreunei tehnologii sau stil de interfață anume.

Raționament: Această provizie se adresează specific acelor licențe care necesită un gest explicit de accept pentru a stabili un contract între licențiator și licențiat. Proviziile care solicită așa-numitul "click-wrap" pot intra în conflict cu metode importante de distribuție software ca descărcarea prin FTP, antologii CD-ROM și mirror-uri web; astfel de provizii pot deasemenea împiedica reutilizarea de cod. Licențele conforme trebuie să permită posibilitatea ca (a) redistribuirea programului să aibă loc pe canale non-web care nu suportă "click-wrapping" pentru descărcare, și ca (b) codul acoperit (sau porțiunile reutilizate ale codului acoperit) să poată rula într-un mediu non-GUI care nu poate suporta dialoguri popup.

Vezi și definiţia de pe Wikipedia în limba română