La struttura della Distribuzione: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
m (aggiunti dei link a voci di glossario)
Riga 1: Riga 1:
==Stable, Testing e Unstable==
==Stable, Testing e Unstable==


Debian ha un sistema di sviluppo particolare quanto unico: infatti la sola ad avere tre rami diversi divisi in base alle caratteristiche di stabilit�: Stable, Testing, Unstable ed un repository Experimental.
Debian ha un sistema di sviluppo particolare quanto unico: è infatti la sola ad avere tre rami diversi divisi in base alle caratteristiche di stabilità: ''Stable'', ''Testing'', ''Unstable'' ed un [[repository]] con pacchetti in fase di sviluppo, ''Experimental''.


==Stable ==
==Stable ==
Stable la release '''stabile''' di Debian. Nello sviluppo Debian, una release viene dichiarata stabile quando i bug ad essa associati prima del rilascio sono quasi inesistenti.
''Stable'' è la [[release]] '''stabile''' di Debian. Nello sviluppo Debian, una release viene dichiarata stabile quando i bug ad essa associati prima del rilascio sono quasi inesistenti.
   
   
Una volta rilasciata, viene aperto un repository speciale: '''security''', che ha lo scopo di raccogliere gli aggiornamenti dei pacchetti presenti nella Stable corrente, per quanto riguarda il fattore sicurezza. Questi aggiornamenti, per�, non riguardano la versione del pacchetto: infatti non ci saranno nuove versioni dei programmi disponibili, ma solo aggiornamenti di sicurezza (quindi applicazioni di patch, in linea di massima).  
Una volta rilasciata, viene aperto un repository speciale: '''security''', che ha lo scopo di raccogliere gli aggiornamenti dei pacchetti presenti nella ''Stable'' corrente, per quanto riguarda il fattore sicurezza. Questi aggiornamenti, però, non riguardano la versione del pacchetto: infatti non ci saranno nuove versioni dei programmi disponibili, ma solo aggiornamenti di sicurezza (quindi applicazioni di [[patch[[, in linea di massima).  


Anche se la cosa pu� sembrare inutile, non lo : supponiamo di avere un sistema produttivo, basato su l'ultima Stable... L'aggiornamento di un programma alla versione successiva potrebbe comportare un po' di problemi: <br/>
Anche se la cosa può sembrare inutile, non lo è: supponiamo di avere un sistema produttivo, basato su l'ultima ''Stable''... L'aggiornamento di un programma alla versione successiva potrebbe comportare un po' di problemi: <br/>
* la struttura e/o la sintassi dei file di configurazione potrebbe subire dei cambiamenti, creando delle incompatibilit� con le configurazioni valide per versioni precedenti;<br/>
* la struttura e/o la sintassi dei file di configurazione potrebbe subire dei cambiamenti, creando delle incompatibilità con le configurazioni valide per versioni precedenti;<br/>
* potrebbero essere presenti dei cambiamenti sostanziali alla struttura del pacchetto o del programma;  
* potrebbero essere presenti dei cambiamenti sostanziali alla struttura del pacchetto o del programma;  
* potrebbero presentarsi dei bug non segnalati, a causa della 'giovane et�' del pacchetto. <br/>
* potrebbero presentarsi dei bug non segnalati, a causa della 'giovane età' del pacchetto. <br/>


Anche se i punti sopra citati sembrano banali, non � cos�: una macchina di produzione deve essere solida e stabile, e visto che molto spesso una ottima pratica avere in cron le operazioni di aggiornamento, la probabilit� che un aggiornamento automatico possa creare situazioni di instabilit� o non funzionamento di un servizio non pu� essere accettato.  
Anche se i punti sopra citati sembrano banali, non è così: una macchina di produzione deve essere solida e stabile, e visto che molto spesso è una ottima pratica avere in cron le operazioni di aggiornamento, la probabilità che un aggiornamento automatico possa creare situazioni di instabilità o non funzionamento di un servizio non può essere accettato.  
Questo un motivo per cui, nella release Stable, ci sono solo aggiornamenti riguardantii bugfix.
Questo è un motivo per cui, nella release Stable, ci sono solo aggiornamenti riguardantii bugfix.
   
   
===I Nomi delle Release===
===I Nomi delle Release===
Una domanda diffusa tra gli utenti alle prime armi con Debian riguarda i nomi delle release; a prima vista, infatti, possono sembrare strani, ma la spiegazione molto semplice: sono tutti nomi dei personaggi del film '''ToyStory'''.  
Una domanda diffusa tra gli utenti alle prime armi con Debian riguarda i nomi delle release; a prima vista, infatti, possono sembrare strani, ma la spiegazione è molto semplice: sono tutti nomi dei personaggi del film [http://www.pixar.com/feature/toystory/toystory.html ToyStory].<br>
Questa simpatica tradizione è stata iniziata da [http://perens.com/ Bruce Perens] con il rilascio di Debian 1.1 nel 1996. Perens, all' epoca [http://www.debian.org/devel/leader Debian Project Leader], lavorava anche per [http://www.pixar.com Pixar].
Ecco l'elenco dei nomi delle Stable fino ad ora rilasciate:  
Ecco l'elenco dei nomi delle Stable fino ad ora rilasciate:  


Riga 66: Riga 67:
<tr><td align="center">3.1</td>
<tr><td align="center">3.1</td>
<td align="center">Sarge</td>
<td align="center">Sarge</td>
<td align="center">testing</td>
<td align="center">2005/06/06</td>
<td align="center">il
<td align="center">il
"leader of The Green Plastic Army Men"</td>
"leader of The Green Plastic Army Men"</td>
Riga 83: Riga 84:
</div>
</div>


==Testing ==
==Testing ==
La release Testing quella pi� utilizzata in ambito Desktop, visto che rappresenta il miglior compromesso tra stabilit� � aggiornamento di pacchetti.  
La release Testing è quella più utilizzata in ambito Desktop, visto che rappresenta il miglior compromesso tra stabilità e aggiornamento di pacchetti.  


===Il percorso dei pacchetti===
===Il percorso dei pacchetti===
I pacchetti, prima di entrare nella release di Testing compiono un tragitto per raggiungere un buon grado di maturit�. Quando vengono creati, possono essere inseriti in Experimental, se hanno bisogno di test approfonditi e non sono considerati completamente stabili dall'autore, oppure possono essere inseriti in Unstable, pronti per essere testati dagli sviluppatori4.7. Il pacchetto viene incluso in Testing (sostituendo eventualmente quello pi� vecchio) se: <br/>
I pacchetti, prima di entrare nella release di Testing compiono un tragitto per raggiungere un buon grado di maturità. Quando vengono creati, possono essere inseriti in Experimental, se hanno bisogno di test approfonditi e non sono considerati completamente stabili dall'autore, oppure possono essere inseriti in Unstable, pronti per essere testati dagli sviluppatori4.7. Il pacchetto viene incluso in Testing (sostituendo eventualmente quello più vecchio) se: <br/>
* Deve essere stato in unstable per 10, 5 o 2 giorni, in funzione dell'urgenza dell'upload; <br/>
* Deve essere stato in unstable per 10, 5 o 2 giorni, in funzione dell'urgenza dell'upload; <br/>
* Deve essere stato compilato e deve essere aggiornato su tutte le architetture su cui sia stato compilato in unstable; <br/>
* Deve essere stato compilato e deve essere aggiornato su tutte le architetture su cui sia stato compilato in unstable; <br/>
* Deve avere meno bug release-critical, o lo stesso numero, della versione corrente in "testing" (si veda sotto per maggiori informazioni); <br/>
* Deve avere meno bug release-critical, o lo stesso numero, della versione corrente in "testing" (si veda sotto per maggiori informazioni); <br/>
* Tutte le sue dipendenze devono o essere soddisfatte dai pacchetti gi� in "testing", o essere soddisfatte dall'insieme di pacchetti che verranno installati nel contempo; <br/>
* Tutte le sue dipendenze devono o essere soddisfatte dai pacchetti già in "testing", o essere soddisfatte dall'insieme di pacchetti che verranno installati nel contempo; <br/>
* L'operazione di installazione del pacchetto in "testing" non dovr� danneggiare alcun pacchetto che sia gi� in "testing". <br/>
* L'operazione di installazione del pacchetto in "testing" non dovrà danneggiare alcun pacchetto che sia già in "testing". <br/>


===Da Testing a Stable===
===Da Testing a Stable===
Quando la versione di Testing raggiunge un buon grado di maturit�, avviene il passaggio da Testing a Stable. Prima di tutto viene dicharata una situazione di freeze, in cui non � pi� possibile inserire nuove versioni di un pacchetto (a meno che non sia fondamentale per la correzione di qualche bug) ma solo correggere i bug riscontrati. Quando la versione di Testing verr� valutata come sufficientemente stabile, verr� rilasciata come Stable. Dopo il rilascio della Stable, la nuova Testing verr� ricreata secondo le normali regole a partire da Unstable.
Quando la versione di Testing raggiunge un buon grado di maturità, avviene il passaggio da Testing a Stable. Prima di tutto viene dicharata una situazione di freeze, in cui non è più possibile inserire nuove versioni di un pacchetto (a meno che non sia fondamentale per la correzione di qualche bug) ma solo correggere i bug riscontrati. Quando la versione di Testing verrà valutata come sufficientemente stabile, verrà rilasciata come Stable. Dopo il rilascio della Stable, la nuova Testing verrà ricreata secondo le normali regole a partire da Unstable.


==Unstable==
==Unstable==
Unstable la distribuzione per gli sviluppatori, come indicato sul sito ufficiale Debian, e l'uso di questa release in ambito lavorativo (o comunque produttivo) pu� portare a degli inconvenienti o instabilit�. possibile, infatti, che a causa di qualche aggiornamento vengano introdotti dei bug che possano compromettere il normale funzionamento di qualche applicazione, inoltre possibile che, a causa dell'aggiornamento di alcune librerie o set di programmi, si possano creare delle situazioni di dipendenze non risolte che potrebbero rendere impossibile l'aggiornamento e/o l'instalazione di alcuni pacchetti. Il mio consiglio di non utilizzarla, a meno di non avere una certa dimestichezza e familiarit� con il sistema Debian.  
Unstable è la distribuzione per gli sviluppatori, come indicato sul sito ufficiale Debian, e l'uso di questa release in ambito lavorativo (o comunque produttivo) può portare a degli inconvenienti o instabilità. È possibile, infatti, che a causa di qualche aggiornamento vengano introdotti dei bug che possano compromettere il normale funzionamento di qualche applicazione.
 
E' inoltre possibile che, a causa dell'aggiornamento di alcune librerie o set di programmi, si possano creare delle situazioni di dipendenze non risolte che potrebbero rendere impossibile l'aggiornamento e/o l'instalazione di alcuni pacchetti. Il mio consiglio è di non utilizzarla, a meno di non avere una certa dimestichezza e familiarità con il sistema Debian.<br>
 
E' divertente notare che la versione '''unstable''' di Debian mantiene sempre il medesimo nome e cioè Sid, il ragazzaccio!


==Experimental==
==Experimental==
Experimental un repository (e non una release) che contiene i pacchetti che in fase di testing da parte dei Debian Developer e che necessitano di lavoro prima di essere pronti per entrare in Unstable.
Experimental è un repository (e non una release) che contiene i pacchetti che in fase di testing da parte dei Debian Developer e che necessitano di lavoro prima di essere pronti per entrare in Unstable.
 
 
---- [[User:MaXeR|MaXeR]]

Versione delle 23:16, 24 ago 2005

Stable, Testing e Unstable

Debian ha un sistema di sviluppo particolare quanto unico: è infatti la sola ad avere tre rami diversi divisi in base alle caratteristiche di stabilità: Stable, Testing, Unstable ed un repository con pacchetti in fase di sviluppo, Experimental.

Stable

Stable è la release stabile di Debian. Nello sviluppo Debian, una release viene dichiarata stabile quando i bug ad essa associati prima del rilascio sono quasi inesistenti.

Una volta rilasciata, viene aperto un repository speciale: security, che ha lo scopo di raccogliere gli aggiornamenti dei pacchetti presenti nella Stable corrente, per quanto riguarda il fattore sicurezza. Questi aggiornamenti, però, non riguardano la versione del pacchetto: infatti non ci saranno nuove versioni dei programmi disponibili, ma solo aggiornamenti di sicurezza (quindi applicazioni di [[patch[[, in linea di massima).

Anche se la cosa può sembrare inutile, non lo è: supponiamo di avere un sistema produttivo, basato su l'ultima Stable... L'aggiornamento di un programma alla versione successiva potrebbe comportare un po' di problemi:

  • la struttura e/o la sintassi dei file di configurazione potrebbe subire dei cambiamenti, creando delle incompatibilità con le configurazioni valide per versioni precedenti;
  • potrebbero essere presenti dei cambiamenti sostanziali alla struttura del pacchetto o del programma;
  • potrebbero presentarsi dei bug non segnalati, a causa della 'giovane età' del pacchetto.

Anche se i punti sopra citati sembrano banali, non è così: una macchina di produzione deve essere solida e stabile, e visto che molto spesso è una ottima pratica avere in cron le operazioni di aggiornamento, la probabilità che un aggiornamento automatico possa creare situazioni di instabilità o non funzionamento di un servizio non può essere accettato. Questo è un motivo per cui, nella release Stable, ci sono solo aggiornamenti riguardantii bugfix.

I Nomi delle Release

Una domanda diffusa tra gli utenti alle prime armi con Debian riguarda i nomi delle release; a prima vista, infatti, possono sembrare strani, ma la spiegazione è molto semplice: sono tutti nomi dei personaggi del film ToyStory.
Questa simpatica tradizione è stata iniziata da Bruce Perens con il rilascio di Debian 1.1 nel 1996. Perens, all' epoca Debian Project Leader, lavorava anche per Pixar. Ecco l'elenco dei nomi delle Stable fino ad ora rilasciate:


Versione Nome Anno Significato
1.1 Buzz 1996/06/17 (Buzz Lightyear) l'astronauta
1.2 Rex 1996/12/12 Il tirannosauro
1.3 Bo 1997/06/05 (Bo Peep) la bambina che si prese cura della pecorella
2.0 Hamm 1998/07/23 il porcellino salvadanaio
2.1 Slink 1999/03/09 (Slinky Dog) il cane giocattolo
2.2 Potato 2000/08/15 Mr. Potato
3.0 Woody 2002/07/19 il cowboy
3.1 Sarge 2005/06/06 il "leader of The Green Plastic Army Men"
?? Etch testing (Etch-a-Sketch) la lavagna
N.D. Sid unstable il bambino della porta accanto che rompeva i giocattoli.

Testing

La release Testing è quella più utilizzata in ambito Desktop, visto che rappresenta il miglior compromesso tra stabilità e aggiornamento di pacchetti.

Il percorso dei pacchetti

I pacchetti, prima di entrare nella release di Testing compiono un tragitto per raggiungere un buon grado di maturità. Quando vengono creati, possono essere inseriti in Experimental, se hanno bisogno di test approfonditi e non sono considerati completamente stabili dall'autore, oppure possono essere inseriti in Unstable, pronti per essere testati dagli sviluppatori4.7. Il pacchetto viene incluso in Testing (sostituendo eventualmente quello più vecchio) se:

  • Deve essere stato in unstable per 10, 5 o 2 giorni, in funzione dell'urgenza dell'upload;
  • Deve essere stato compilato e deve essere aggiornato su tutte le architetture su cui sia stato compilato in unstable;
  • Deve avere meno bug release-critical, o lo stesso numero, della versione corrente in "testing" (si veda sotto per maggiori informazioni);
  • Tutte le sue dipendenze devono o essere soddisfatte dai pacchetti già in "testing", o essere soddisfatte dall'insieme di pacchetti che verranno installati nel contempo;
  • L'operazione di installazione del pacchetto in "testing" non dovrà danneggiare alcun pacchetto che sia già in "testing".

Da Testing a Stable

Quando la versione di Testing raggiunge un buon grado di maturità, avviene il passaggio da Testing a Stable. Prima di tutto viene dicharata una situazione di freeze, in cui non è più possibile inserire nuove versioni di un pacchetto (a meno che non sia fondamentale per la correzione di qualche bug) ma solo correggere i bug riscontrati. Quando la versione di Testing verrà valutata come sufficientemente stabile, verrà rilasciata come Stable. Dopo il rilascio della Stable, la nuova Testing verrà ricreata secondo le normali regole a partire da Unstable.

Unstable

Unstable è la distribuzione per gli sviluppatori, come indicato sul sito ufficiale Debian, e l'uso di questa release in ambito lavorativo (o comunque produttivo) può portare a degli inconvenienti o instabilità. È possibile, infatti, che a causa di qualche aggiornamento vengano introdotti dei bug che possano compromettere il normale funzionamento di qualche applicazione.

E' inoltre possibile che, a causa dell'aggiornamento di alcune librerie o set di programmi, si possano creare delle situazioni di dipendenze non risolte che potrebbero rendere impossibile l'aggiornamento e/o l'instalazione di alcuni pacchetti. Il mio consiglio è di non utilizzarla, a meno di non avere una certa dimestichezza e familiarità con il sistema Debian.

E' divertente notare che la versione unstable di Debian mantiene sempre il medesimo nome e cioè Sid, il ragazzaccio!

Experimental

Experimental è un repository (e non una release) che contiene i pacchetti che in fase di testing da parte dei Debian Developer e che necessitano di lavoro prima di essere pronti per entrare in Unstable.



MaXeR