Projecte GNU

De Viquipèdia
Dreceres ràpides: navegació, cerca
Mascota de GNU (logotip), per Aurelio A. Heckert[1] (derivat d'una versió més detallada d'Etienne Suvasa)[2]

El Projecte GNU[3] és un projecte de programari lliure presentat  el 27 de setembre de 1983 per Richard Stallman al MIT. L'objectiu del projecte és donar total llibertat i control als usuaris en l'ús dels seus computadors i dispositius proporcionant programari basat en els següents drets: els usuaris són lliures de fer servir el programari, compartir-ho (copiar, distribuir), estudiar-lo i modificar-lo. El programari de GNU garanteix aquestes llibertats legalment amb les seves llicències.

Per tal de garantir que tot el programari d'un computador dóna als seus usuaris totes les llibertat (ús, distribució, estudi, modificació), fins i tot la part més fonamental i important, el sistema operatiu, es necessitava que tot el programari fos lliure. Segons el seu manifest, l'objectiu de crear aquest projecte fou construir un sistema operatiu lliure i, si fos possible,  tan útil com el que normalment ve amb un sistema Unix de manera que pogués funcionar sense programari privatiu. Stallman decidí anomenar aquest  sistema operatiu GNU (un acrònim recursiu que significa "GNU no és Unix"), basant el seu disseny en el de Unix, un sistema operatiu propietari.[4] El desenvolupament es va iniciar el gener de 1984. L'any 1991 aparegué el nucli Linux, desenvolupat fora del Projecte GNU per Linus Torvalds, i al desembre de 1992 va estar disponible sota versió 2 de la GNU General Public License.[5] Combinat amb les utilitats de sistema operatiu ja desenvolupades pel Projecte GNU, va permetre el primer sistema operatiu lliure conegut com a Linux o GNU/Linux.

El treball actual del projecte inclou el  desenvolupament de programari, la sensibilització, campanyes polítiques i la distribució de nou material.

Orígens[modifica | modifica el codi]

Richard Stallman, iniciador del Projecte GNU

Richard Stallman va anunciar la intenció de començar el Projecte GNU en un missatge a una llista d'Usenet al setembre de 1983.[6]

A l'inici, el Projecte GNU  «tenia un editor de text Emacs escrit en Lisp, un depurador de codi font, un analitzador sintàctic compatible amb Yacc, i un enllaçador (linker)».[7] El sistema de GNU necessitava tenir el seu propi compilador de C i eines pròpies per ser considerat programari lliure de manera que també van haver de desenvolupar-se. Pels volts del juny de 1987, el projecte havia aconseguit reunir i desenvolupar programari lliure suficient per disposar d'un assemblador, un gairebé acabat compilador de C (GCC), un editor (GNU Emacs), i diverses utilitats de Unix (com ls, grep, awk, make i ld).[8] També tenia un nucli inicial bastant necessitat de millores.

Un cop acabats el kernel i el compilador, GNU es podia fer servir per al desenvolupament del programa. L'objectiu principal era crear moltes altres aplicacions per semblar-se a Unix. GNU era capaç d'executar programes d'Unix però no va ser idèntic a ell. GNU va incorporar noves capacitats al sistema de fitxers: noms més llargs, números de versió, i un sistema a prova de caigudes. Es va publicar el Manifest GNU per obtenir suport i augmentar la participació en el projecte engrescant als programadors a participar en qualsevol aspecte que els semblés interessar.[9]

L'origen i la major part d'aspectes de l'evolució del Projecte GNU (i del programari lliure en general) es troba descrit amb detall al sistema d'ajuda de l'Emacs (amb l'ordre a l'editor Emacs  describe-gnu-project). La mateixa descripció també es pot trobar al seu lloc de web.

Manifest GNU[modifica | modifica el codi]

Article principal: Manifest GNU

Richard Stallman va escriure el Manifest GNU motivat per «retornar a l'esperit de cooperació que hi havia als temps inicials a la comunitat d'usuaris d'ordinadors» i aconseguir finançament i suport pel Projecte GNU. En el Manifest GNU, Stallman va enunciar les quatre llibertats essencials pel desenvolupament de programari lliure, els drets a «executar, copiar, modificar i distribuir» el codi.[10] Per implementar aquestes llibertats, els usuaris van necessitar ple accés al codi font. Per assegurar que el codi romandria lliure i accessible al públic, Stallman va crear la GNU General Public License (GPL) com a resultat del concepte copyleft.

Filosofia i activisme[modifica | modifica el codi]

Tot i que la major part de les aportacions al Projecte GNU són de caràcter tècnic, aquest es va crear com una iniciativa social, ètica, i política. A més de la producció de programari i llicències, el Projecte GNU ha publicat una sèrie d'escrits, la major part dels quals van ser escrits per en Richard Stallman.

Finançament[modifica | modifica el codi]

Procedeix dels associats, de les vendes i de les donacions de qui donen donen suport al Projecte GNU.[11]

Copyleft[modifica | modifica el codi]

La "C inversa" és el símbol del copyleft
Article principal: Copyleft

Com a copyleft es coneix a tot un conjunt de llicències que poden aplicar-se a creacions informàtiques, artístiques, etc. El copyleft en contraposició al copyright, aplicat a la informàtica, dóna dret legal a utilitzar, modificar i redistribuir programes o el codi del programa sempre que les condicions de distribució no canviïn. Aquest concepte, que no el terme, va ser concebut originalment per Richard Stallman.[12]

El Projecte GNU i la FSF diferencien entre copyleft fort i copyleft dèbil. El programari amb copyleft dèbil permet als distribuïdors vincular-lo amb programari de propietat (no lliure), mentre que el copyleft fort prohibeix estrictament aquesta pràctica. La major part de la producció del Projecte GNU es distribueix sota un copyleft fort encara que una petita part s'allibera sota una llicència de programari lliure permissiva (copyleft feble).

Desenvolupament de sistema operatiu[modifica | modifica el codi]

Article principal: GNU
GNU Hurd live CD

El primer objectiu del Projecte GNU era crear un sistema operatiu totalment lliure. Pels volts de l'any 1992, el Projecte GNU havia completat tots els principals components del sistema operatiu a excepció del seu nucli, GNU Hurd. Amb el llançament del nucli de Linux,  iniciat de forma independent per Linus Torvalds en 1991 i alliberat sota la GPL en 1992, per primera vegada va ser possible executar un sistema operatiu integrat per complet per programari lliure.  Tot i que el nucli de Linux no és part del Projecte GNU, que va ser desenvolupat utilitzant GCC i altres eines de programació de GNU i va ser alliberat com a programari lliure amb la llicència GNU General Public License (GPL).[13]

GNU/Linux[modifica | modifica el codi]

Article principal: GNU/Linux

Combinant els paquets de GNU amb el nucli Linux i algunes utilitats lliures externes, s'aconsegueix un sistema operatiu Unix-like. A aquesta combinació el Projecte GNU l'anomena GNU/Linux, i les seves característiques vénen donades per la combinació de:

  • Paquets de GNU (Excepte GNU Hurd)
    Els paquets de GNU son un conjunt de eines i utilitats de sistema operatiu (bash, coreutils, compiladors, biblioteques, etc.)[14][15]  que inclou una llibreria que implementa totes les funcions especificades en POSIX.[16][17] El compilador GCC pot generar codi màquina per a una gran varietat d'arquitectures d'ordinador-.[18]
  • Programari no GNU
    Diversos paquets de programari lliure que no formen part del Projecte GNU però són publicats sota la GNU General Public License (GPL) o una altra llicència de programari lliure aprovada per la FSF.

L'empaquetat de les eines de GNU juntament amb el nucli de Linux i altres programes normalment es coneix com a distribució de Linux (distro). El Projecte GNU anomena aquesta combinació «GNU/Linux» i demana a altres a fer el mateix donant com a resultat una controvèrsia pel nom d'aquest tipus de distribucions.[25]

Actualment, la majoria de distribucions de Linux combinen paquets GNU amb un nucli Linux que conté algun element de propietat i amb una sèrie de programes propietaris.

GNU Free System Distribution Guidelines[modifica | modifica el codi]

GNU Free System Distribution Guidelines (GNU FSDG) són pautes a seguir per les distribucions de programari lliures. L'objectiu d'aquestes pautes és explicar què significa per a una distribució preparada per ser instal·lada (com una distribució GNU / Linux) que la qualifiqui com a lliure i ajudar als desenvolupadors a aconseguir que les seves distribucions puguin ser qualificades com a lliures.

Principalment això inclou distribucions que són una combinació de paquets de GNU amb un nucli Linux-libre (un nucli Linux modificat, al que se'l ha tret tot el programari que no inclou codi font, així com el codi font ofuscat o el que estigui publicat amb llicències privatives).[26][27][28] Entre les distribucions que han adoptat el GNU FSDG podem trobar gNewSense, Paràbola GNU/Linux-libre, Trisquel GNU/Linux, Ututo i uns quants altres.[29]

Les directrius de la llicència de distribució del Projecte Fedora van servir com a base per a la FSDG.[30]

Projectes estratègics[modifica | modifica el codi]

Des de mitjans de 1990 en endavant, amb moltes empreses invertint en desenvolupament de programari lliure, la Free Software Foundation (FSF) ha reorientat els seus fons cap al suport legal i la política de desenvolupament de programari lliure. El  desenvolupament de programari a partir d'aquell moment es va centrar en el manteniment dels projectes existents, començant nous projectes només quan hi ha una greu amenaça a la comunitat del programari lliure. Un dels projectes més notables del Projecte GNU és la GNU Compiler Collection,  col·lecció de compiladors de GNU, els components han estat adoptats com el sistema compilador estàndard en molts sistemes Unix-like.

GNOME[modifica | modifica el codi]

Logotip de GNOME
Article principal: GNOME

L'escriptori GNOME  es va iniciar pel Projecte GNU perquè un altre sistema d'escriptori, el KDE, esdevenia popular però requeria als usuaris instal·lar les llibreries de Qt que en aquell temps era programari propietari. Per evitar la temptació d'instal·lar KDE i Qt, el Projecte GNU va llançar simultàniament dos projectes. Un era l'Harmony toolkit que va ser un intent de crear un substitut lliure per a Qt. Si aquest projecte hagués reeixit, el problema de percepció de KDE s'hauria solucionat. El segon projecte va ser GNOME, que va abordar el mateix tema des d'un angle diferent. El seu objectiu era fer un substitut per a KDE que no tingués dependències de programari propietari.  El projecte Harmony no va fer molts progressos però GNOME es va desenvolupar molt bé. Finalment, el component de propietat del que KDE depenia (Qt) va ser alliberat com a programari lliure.[31]

GNU Enterprise[modifica | modifica el codi]

GNU Enterprise (GNUe) és un meta-projecte començat l'any 1996, i pot ser considerat com a sub-projecte del Projecte GNU.[32] L'objectiu de GNUe és crear aplicacions per a dades de classe empresarial lliures" (Planificació de Recursos Empresarials, etc.). GNUe està pensat per recopilar programari empresarial per al Porjecte GNU en un sol lloc (igual que el projecte GNOME recull programari d'escriptori).

Reconeixement[modifica | modifica el codi]

L'any 2001, el Projecte de GNU va rebre el premi USENIX Lifetime Achievement Award per "la ubiqüitat, l'amplitud i la qualitat del seu programari redistribuïble i modificable lliurement, el que ha permès generació de recerca i desenvolupament comercial".[33]

Vegeu també[modifica | modifica el codi]

Referències[modifica | modifica el codi]

  1. «Un cap de GNU amb més contrast». gnu.org. [Consulta: 10 desembre 2015].
  2. «Un cap de GNU». gnu.org. [Consulta: 10 desembre 2015].
  3. «Què és GNU?». gnu.org. [Consulta: 10 desembre 2015].
  4. «El manifest GNU». gnu.org. [Consulta: 10 desembre 2015].
  5. Linus Benedict Torvalds. «What would you like to see most in minix?» (en anglès), 25-08-1991. [Consulta: 10 desembre 2015].
  6. Richard Stallman. «new UNIX implementation» (en anglès), 27-11-1983. [Consulta: 10 desembre 2015].
  7. Wardrip-Fruin, Noah; and Nick Montfort.
  8. "GNU's Bulletin, vol. 1 no. 3". gnu.org.
  9. "The GNU Manifesto".
  10. Weber, S. (2004).
  11. Helping the GNU Project and the Free Software Movement – GNU Project – Free Software Foundation. gnu.org.
  12. «Richard Matthew Stallman». L'Enciclopèdia.cat. Barcelona: Grup Enciclopèdia Catalana. [Consulta: 10 desembre 2015].
  13. Linus Benedict Torvalds (26 August 1991).
  14. "All GNU packages". gnu.org. 
  15. GNU @ Free Software Directory (fsf.org)
  16. POSIX - The GNU C Library
  17. GNU C Library#A temporary fork
  18. GCC Architectures
  19. The Linux Kernel Archives
  20. Release Notes for Linux v0.12
  21. Should the GNU/name convention be applied to all programs that are GPL'ed?
  22. Why do you write “GNU/Linux” instead of “GNU Linux”?
  23. Isn't it wrong for us to label Linus Torvalds' work as GNU?
  24. Does Linus Torvalds agree that Linux is just the kernel?
  25. Why do you call it GNU/Linux and not Linux?
  26. "Guidelines for Free System Distributions". gnu.org. 
  27. "Avoiding Ruinous Compromises". gnu.org. 
  28. "Explaining Why We Don't Endorse Other Systems". gnu.org. 
  29. "List of Free GNU/Linux Distributions – GNU Project – Free Software Foundation". gnu.org.
  30. "Free System Distribution Guidelines (GNU FSDG) - GNU Project". gnu.org. publisher.
  31. Richard Stallman (5 September 2000).
  32. Community History
  33. "USENIX Lifetime Achievement Award ("The Flame")".

Enllaços externs[modifica | modifica el codi]