Linux, con o senza GNU? Per free s'intende gratis, o qualcos'altro? Open source significa che non si paga, no?
Domande lecite per chi non ha mai approfondito l'argomento e che, spesso, ha anche poche conoscenze tecniche. Certamente Google risponde a tutte queste domande, ma un rissuntino molto semplificato può tornare utile
Senza alcuna pretesa di completezza nè di precisione maniacale, penso che gettare le basi per orientarsi nella terminologia del mondo Open sia un buon modo per invogliare all'approfondimento. Per le persone interessate un buon motore di ricerca e il web faranno il resto; chi, invece, non crede che l'argomento valga la pena di un seppur minimo sforzo, potrebbe cambiare idea... speriamo :P
- TERMINOLOGIA
Seguitemi con lo schemino qui in allegato, contiene forti approssimazioni ma almeno è comprensibile senza troppo legalese.
- Pubblico Dominio: tutto ciò che esiste ed è fruibile è di pubblico dominio, ovvero non esiste alcuna regolamentazione sul suo uso e consumo
- Copyright: per regolamentare la cosa è stata eretta la barriera dei 'diritti d'autore' - inizialmente per proteggere gli autori, ma poi la cosa è nettamente degenerata, tanto che oggi più spesso gli autori sono invece danneggiati dai diritti che, invece, favoriscono le major che nulla hanno prodotto; ed è sintomatico il fatto che abbiano piegato il significato stesso della parola "produrre = generare, fabbricare" ad un "produrre = finanziare, distribuire" che è del tutto arbitriario e fuorviante.
- Copyleft: in tempi ben più recenti è nata l'esigenza di liberarsi da questi vincoli sempre più iniqui. Grazie a Richard Stallman e alla sua Free Software Foundation nasce il concetto di copyleft. Gioco di parole tra "right = diritto | destra", ma anche tra "left = sinistra / leave = lasciare (libero)", il concetto regola con licenze più o meno restrittive tutto ciò che è libero, ma non più di pubblico dominio - si noti (e capiremo più avanti), che spesso le licenze copyleft sono fautrici di diritti rovesciati, anche qui gioco di parole dall'espressione inglese "rights reserved <-> reversed", nel senso che il termine 'restrittivo' assume significato opposto al consueto, in quanto a venir confinate sono le libertà dell'autore (che comunque lo fa consapevolmente) e poi del possessore, in favore di un allargamento (tutela) di quelle dell'utilizzatore.
- Open source: sorgente aperto, ovvero un programma il cui codice sorgente è visionabile e modificabile; di base non pone altri vincoli.
Vediamo allora che i primi due termini sono utilizzabili (ed utilizzati) in più ambiti, nonostante il secondo sia nato specificatamente per quello tecno-informatico. Il terzo, invece, è molto settoriale in quanto si riferisce esclusivamente all'ambito software, anche se è stato allargato, con licenza 'poetico-terminologica', anche a quello hardware; ma è una cosa appena nata e indefinita per ora, non ne parlerò.
Guardando lo schemino focalizziamo l'attenzione sulle due barriere che si contrappongono nella nostra trattazione: quella del software proprietario e quella dell'intero ambito copyleft.
- IL SOFTWARE PROPRIETARIO
- assoluto: la maggior parte; a pagamento e con ampi vincoli restrittivi (EULA), il più delle volte il compratore non ne diventa proprietario, che rimane il detentore dei diritti (quasi sempre non è l'autore stesso) - da qui il termine, per indicare che il proprietario è una figura giuridica a sè stante ed indipendente dalla diffusione fisica del programma
- condiviso: ovvero il software viene rilasciato sotto clausole che permettono una certa condivisione dell'esecutivo compilato; in particolare...
- shareware: la condivisione è limitata nel tempo
- freeware: la condivisione non ha limiti di tempo ma, si noti, è relativa al solo esecutivo ed inoltre non fornisce alcun diritto all'utilizzatore di distribuzione (anzi, quasi sempre lo vieta espressamente) - spesso esistono altri vincoli quali, per esempio, il divieto dell'uso per fini commerciali e/o professionali
- IL SOFTWARE LIBERO
Tuttavia il software libero è molto di più. In sintesi, deve aderire ad (almeno) i quattro punti fissati da Stallmann:
- Libertà 0: Libertà di eseguire il programma per qualsiasi scopo.
- Libertà 1: Libertà di studiare il programma e modificarlo.
- Libertà 2: Libertà di ridistribuire copie del programma in modo da aiutare il prossimo.
- Libertà 3: Libertà di migliorare il programma e di distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga beneficio
- LE LICENZE
Le più famose, che ho messo anche in schema, sono le licenze GNU (gestite dall'omonima organizzazione, costola della FSF) e quelle Creative Commons, gestite dall'omonima organizzazione no-profit.
La prima è nata col progetto del sistema operativo GNU, ma poi si è allargata alla documentazione ed è oggi utilizzabile per scritti di vario tipo: Wikipedia è il caso più eclatante di documentazione rilasciata sotto questa licenza.
La seconda, invece, è nata per trasportare i concetti del software libero in ambito non informatico, in particolare quello artistico, adattandola ove necessario.
Entrambe constano di più varianti, in base alle clausole aggiuntive. Entrambe sono, come detto, utilizzabili anche in ambiti non informatici, ma quando riguardano il software includono per loro natura il vincolo di open source.
- OPEN SOURCE
Nello schemino ho cercato di collocarlo in modo che si noti come questo modo di ditribuzione (l'open source non è una licenza in senso stretto), non ponendo molti vincoli, è collocabile/utilizzabile in tutti e tre i domini: pubblico dominio, copyright e copyleft.
Anche se assurdo, tuttavia non esiste restrizione per cui un software proprietario non possa essere distribuito coi codici sorgenti; così, nessuna restrizione sul fatto di rendere proprietario un sorgente ottenuto tramite distribuzione open source.
Quindi vediamo come queste filosofie di distribuzione sovvertano i concetti a cui siamo abituati. Alle volte più libertà può significare maggiori vincoli, altre volte pochi vincoli potrebbero portare alla negazione della libertà.
La discussione tra la comunità open source e quella del software libero è aperta e spesso vivace. Per quel che mi riguarda, l'importante è che sia sempre costruttiva: in fondo, entrambe lavorano per il riconoscimento della libertà di tutti.
- SCHEMA RIASSUNTIVO
- Software proprietario: quello a cui ci hanno abituato, si compra e si usa esclusivamente da utilizzatore; non si può copiare, distribuire, modificare, ecc...
- Shareware: come sopra, me per un breve periodo possiamo provarlo senza acquistarlo
- Freeware: è gratis, ma vigono tutte le altre restrizioni
- Open source: un programma distribuito assieme al suo codice sorgente
- Libero: un programma (ma come abbiamo visto, il concetto è allargabile a qualsiasi opera intellettuale) che, oltre ad essere open source, è rilasciato sotto una licenza di tipo copyleft
- E FINALMENTE... GNU/Linux!
Storicamente nasce prima il progetto GNU, grazie al solito Stallman. Richard fece il 'contorno' ma la bistecca, il sistema HURD, si sta facendo ancora attendere.
Nel frattempo uno studente di nome Linus Torvalds iniziò, con un semplice upload FTP ed un post in un forum, lo sviluppo comunitario del kernel Linux.
L'unione fa la forza, e così come mostra lo schema in figura, il kernel Linux divenne il cuore dell'OS GNU, andando a costituire quello che è appunto il sistema operativo completo GNU/Linux. Quindi, in effetti, parlare del solo Linux è improprio ma, di fatto, è una contrazione ormai accettata... purchè sia chiara la differenza ;)
- DISTRIBUZIONI
Nascono dunque le distribuzioni linux (distro), ovvero sistemi e comunità che condividono lo stesso modo di vedere (il più possibile almeno). Le storiche sono Debian e Slackware, poi RedHat, SuSE, Gentoo e via così. Ad oggi sembra siano più di 300 (!), di cui 'usabili' (nell'ottica dell'utente medio) almeno un centinaio; di fatto, credo che le più diffuse siano una ventina.
Alle volte le differenze sono abbastanza marcate, altre volte impercettibili. Fondamentalmente è una questione di 'pelle' e di esigenze personali; soprattutto ultimamente le specifiche esigenze di prodotto (leggerezza per i netbook, compattezza per uso off-line, essenzialità e per installazioni da pen-drive, ecc...) sono quelle che hanno dato più fermento alla produzione di nuove distro e al remixaggio di quelle esistenti.
Le principali le trovate nel box dei link qui a fianco, quello chiamato appunto Distribuzioni Linux. ^^
- DESKTOP ENVIROMENT
Ma non è solo questione d'estetica. Gli utenti, sempre più abituati alle interfacce grafiche, tendono a legarsi al modus operandi di queste. Ogni DE ha le sue metodologie di gestione delle risorse, configurazione delle cartelle, dei programmi, ecc... Deve essere chiaro che, in realtà, questi sono solo i particolari di cose che vengono gestite dagli strati sottostanti, che fanno poi la reale differenza.
Purtroppo succede che certi utenti appena approdati al mondo GNU/Linux rimangano sfavorevolemnte impressionati dalla semplice differenza nel posizionamento di un programma o di un'opzione; ma è anche normale, se tanti non sanno nemmeno che è possibile cambiare DE!
I più famosi sono: Gnome (Ubuntu, Debian, ecc...), KDE (RedHat, Slackware, Kubuntu, ecc...). XFCE (Xubuntu, ecc...), OpenBox, FluxBox, ecc...
- SHELL: AMORE E ODIO
Per questo nello schema un pezzettino di GNU spunta fuori: quella è la shell, capace di fornire un'interfaccia senza passare dal DE. Ma anche i DE stessi forniscono una shell (che poi fa da interfaccia con quella reale sottostante), a riprova di quanto sia ancora fondamentale l'approccio da linea di comando.
- RICAPITOLANDO
Questo OS viene fornito da varie distro, ovvero 'impacchettature' con una determinata coerenza (di soluzioni tecniche, grafica, filosofia di rilascio, ecc...)
Spesso ogni distro ha un certo Desktop Enviroment, ma comunque si può sempre scegliere tra diversi DE, ovvero l'interfaccia grafica con la quale s'interagisce.
Tuttavia, tenete presente che il DE non è indispensabile, la shell sa fare tutto (e anche di più) e più velocemente, anche se di solito meno intuitivamente.