:B~ Segnalare bug

1~bugs Segnalare bug

Debian Live è lungi dall'essere perfetta, ma con il vostro aiuto vogliamo
avvicinarci il più possibile a questo livello. Non esitare a segnalare un
bug; è meglio farlo due volte che mai. Questo capitolo include alcune
raccomandazioni su come presentare una buona segnalazione.

Per gli impazienti

_* Per i problemi noti verificare sempre lo stato degli aggiornamenti
dell'immagine sulla nostra pagina iniziale http://live.debian.net/.

_* Prima di inviare una segnalazione di bug provare a riprodurlo con le
*{versione più recenti}* di live-build, live-boot, live-config e live-tools.

_* Si cerchi di fornire *{informazioni il più dettagliate possibile}*
riguardo il bug. Questo comprende (almeno) la versione di live-build,
live-boot, live-config e live-tools utilizzata e la distribuzione del
sistema live che si sta creando.

2~ Problemi noti

Giacché Debian *{testing}* e Debian *{unstable}* subiscono cambiamenti
continui, quando si specifica l'una o l'altra come sistema di destinazione,
può non essere sempre possibile una compilazione che vada a buon fine.

% FIXME:

Se questo causa troppe difficoltà, non creare un sistema basato su
*{testing}* o *{unstable}* ma usare piuttosto *{stable}*. live-build si basa
su *{stable}* in modo predefinito.

I problemi noti al momento sono elencati sotto la sezione "status" della
nostra pagina iniziale http://live.debian.net/

Questo manuale non intende insegnare come identificare e risolvere
correttamente i problemi dei pacchetti delle distribuzioni di sviluppo,
tuttavia ci sono un paio di cose da provare: se la creazione di *{testing}*
non va a buon fine provare con *{unstable}*; se non funziona nemmeno
*{unstable}* tornare a *{testing}* ed effettuare il pinning da *{unstable}*
alla nuova versione del pacchetto corrotto (si veda {APT
pinning}#apt-pinning per i dettagli).

2~ Ricompilare da zero

Per essere certi che un particolare bug non sia causato dalla creazione di
un sistema non pulito, ricostruire sempre l'intero sistema da zero per
vedere se il bug sia riproducibile.

2~ Usare pacchetti aggiornati

L'utilizzo di pacchetti datati può causare notevoli complicazioni nel
tentativo di riprodurre (e alla fine risolvere) il problema. Assicurarsi che
il sistema creato sia aggiornato e ogni pacchetto incluso nell'immagine lo
sia a sua volta.

2~collect-information Raccogliere informazioni

Nella segnalazione si invita a fornire informazioni sufficienti. Dovrebbe
almeno contenere l'esatta versione di live-build nella quale si è trovato il
bug e i passi per riprodurlo. Con un po' di buon senso si può includere
qualsiasi altro dettaglio rilevante che si ritiene utile per la risoluzione
del problema.

Affinché la segnalazione del bug sia migliore possibile, si richiedono
almeno le seguenti informazioni:

_* Architettura del sistema ospitante

_* Versione di live-build sul sistema ospitante

_* Versione di /{debootstrap}/ o /{cdebootstrap}/ sul sistema ospitante

_* Architettura del sistema live

_* Distribuzione del sistema live

_* Versione di live-boot sul sistema ospitante

_* Versione di live-config sul sistema live

_* Versione di live-tools sul sistema ospitante

È possibile generare un registro del processo di costruzione usando il
comando #{tee}#. Si raccomanda di farlo automaticamente con uno script
#{auto/build}#; (si veda {Gestire una
configurazione}#managing-a-configuration per i dettagli).

code{

 # lb build 2>&1 | tee build.log

}code

All'avvio, live-boot e live-config conservano i loro registri in
#{/var/log/live/}#. Controllarvi gli errori.

Inoltre, per escludere altri errori è sempre una buona idea creare un tar
della propria directory #{config/}# e caricarlo da qualche parte (*{non}*
inviarlo come allegato alla mailing list), in modo che sia per noi possibile
riprodurre gli errori incontrati. Se ciò causa problemi (ad esempio a causa
della dimensione) si può utilizzare l'output di #{lb config --dump}# che
produce un sommario dell'albero di configurazione (elenca i file nelle
sottodirectory di #{config/}# ma non le include).

Ricordarsi che i file di registro da inviare vanno creati con l'impostazione
della lingua inglese, ad esempio eseguendo il comando live-build preponendo
#{LC_ALL=C}# oppure #{LC_ALL=en_US}#.

2~ Se possibile isolare il caso non andato a buon fine

Se possibile, isolare il caso non andato a buon fine alla variazione più
piccola che lo causa. Non è sempre facile da fare, perciò non preoccupatevi
se non riuscite a gestirlo per la vostra segnalazione. Tuttavia, se si
pianifica bene il ciclo di sviluppo adottando piccole modifiche per ogni
iterazione, si riuscirà ad isolare il problema creando una configurazione
semplificata che si avvicina all'attuale con l'aggiunta delle sole modifiche
problematiche. Se si incontrano serie difficoltà nel trovare la causa,
potrebbe essere che sono stati inseriti troppi cambiamenti in una sola volta
e bisogna cambiare approccio.

2~ Segnalare il bug del pacchetto giusto

Se non si sa quale sia il componente responsabile del bug o se il bug è uno
generico riguardante il sistema live, si può fare una segnalazione per lo
pseudo-pacchetto debian-live.

Tuttavia vi saremmo grati se tentate di restringere il campo in base a dove
appare il bug.

3~ Durante la compilazione mentre esegue il bootstrap

live-build avvia inizialmente un sistema Debian di base con /{debootstrap}/
o /{cdebootstrap}/; può fallire a seconda dello strumento utilizzato e della
distribuzione Debian che si sta avviando. Se il bug appare a questo punto
controllare che l'errore sia relativo ad uno specifico pacchetto Debian (più
probabile) o allo strumento di avvio stesso.

In entrambi i casi non è un bug in Debian Live, ma piuttosto in Debian
stessa che probabilmente non può essere risolto direttamente. Si prega di
inviare una segnalazione di bug riguardo l'utilità di avvio o il pacchetto
che ha fallito.

3~ Durante la compilazione mentre installa i pacchetti

live-build installa pacchetti aggiuntivi dall'archivio Debian e può fallire
a seconda della distribuzione Debian e lo stato dell'archivio giornaliero.Se
il bug appare a questo punto, controllare che l'errore sia riproducibile su
un sistema normale.

In questo caso non è un bug in Debian Live, ma piuttosto in Debian, inviare
una segnalazione sul pacchetto che ha fallito. Si otterranno maggiori
informazioni eseguendo /{debootstrap}/ separatamente dal sistema live o
eseguendo #{lb bootstrap --debug}#.

Se si verifica un problema utilizzando un mirror locale o un qualsiasi tipo
di proxy è bene riprodurlo avviando da un mirror ufficiale.

3~ In fase di avvio

Se l'immagine non si avvia segnalarlo alla mailing list con le informazioni
richieste in {Raccogliere informazioni}#collect-information. Non dimenticare
di menzionare esattamente come e quando l'immagine fallisce, utilizzando la
virtualizzazione o hardware reale. Se si utilizza un qualsiasi sistema di
virtualizzazione provare sempre su hardware reale prima di segnalare un bug;
anche fornire un'istantanea dello schermo può essere molto utile.

3~ In fase di esecuzione

Se un pacchetto è stato installato con successo ma fallisce durante
l'esecuzione del sistema live, si tratta probabilmente di un bug in Debian
Live. Tuttavia:

2~ Fare la ricerca

Prima di riportare il bug si prega di cercare sul web il messaggio d'errore
o il sintomo ottenuti. Poiché è altamente improbabile essere l'unica persona
ad incontrare un certo problema, c'è sempre la possibilità che sia stato
discusso altrove e che siano stati proposte una soluzione, una patch o
soluzione temporanea.

Si dovrebbe prestare particolare attenzione alla mailing list di Debian Live
così come la pagina iniziale del sito, in quanto contengono informazioni più
aggiornate. Se tale informazione esiste si includa sempre un riferimento
nella segnalazione del bug.

In aggiunta bisogna controllare l'attuale elenco dei bug riguardanti
live-build, live-boot, live-config e live-tools per vedere se sia già stato
segnalato qualcosa di simile.

2~ Dove segnalare i bug

Il progetto Debian Live tiene traccia di tutti i bug sul Debian Bug Tracking
System (BTS, sistema di tracciamento dei bug Debian), si veda
http://bugs.debian.org/ per le informazioni su come usarlo. È anche
possibile utilizzare il comando #{reportbug}# dall'omonimo pacchetto.

In genere bisogna riportare gli errori in fase di compilazione verso il
pacchetto live-build, quelli di avvio verso live-boot e quelli in fase di
esecuzione a live-config. Se non siete certi di quale sia il pacchetto
appropriato o serve maggiore aiuto prima della segnalazione, inviate una
segnalazione per lo pseudo-pacchetto debian-live. Ce ne occuperemo
riassegnandolo dove più appropriato.

Si noti che i bug trovati nelle distribuzioni derivate da Debian (come
Ubuntu e altre) *{non}* vanno segnalati a Debian BTS a meno che non siano
riproducibili anche su un sistema Debian utilizzando pacchetti ufficiali
Debian.
