Cosa fare quando c’è un bug?

A chi non è mai capitato di imbattersi in un bug? Quando si utilizza software libero in caso di bug la procedura è quasi standard.

Se si utilizza un sistema operativo libero:

  1. Si va sul sito della propria distribuzione
  2. Si cerca il sistema di segnalazione problemi, di solito basato su bugzilla
  3. Si cerca nel sistema se qualcuno ha già segnalato (e magari risolto) il problema
  4. Se nessun altro l’ha segnalato si apre una richiesta di assistenza specificando cosa è successo, come è successo, come si può riprodurre il problema e che tipo di sistema si sta utilizzando
  5. Quando uno sviluppatore della distribuzione lavora per correggere il bug si eseguono i test richiesti per aiutare nella risoluzione del problema

Normalmente questo permette di non avere di nuovo a che fare con il bug e fa si che anche le altre persone possano utilizzare il software senza dover incappare nel vostro stesso problema.

Resolved Upstream

In alcuni casi il problema non è di semplice soluzione e chi sviluppa la distribuzione del sistema operativo ritiene che il problema possa essere risolto solo da chi ha effettivamente realizzato il software. In genere quando questo capita lo sviluppatore chiude la richiesta di assistenza con la voce Resolved Upstream. Anche in questo caso la procedura è quasi standard ed è la stessa che viene utilizzata se non si sta utilizzando un sistema operativo libero:

  1. Si legge il file README od il file AUTHORS cercando il sito del programma che ha causato il problema o un indirizzo mail a cui chiedere assistenza
  2. Se il sito del programma ha un sistema di richiesta di assistenza o segnalazione bug si cercano eventuali segnalazioni / soluzioni del problema
  3. Se nessun altro l’ha segnalato si apre una richiesta di assistenza specificando cosa è successo, come è successo, come si può riprodurre il problema e che tipo di sistema si sta utilizzando
  4. Quando uno sviluppatore lavora per correggere il bug si eseguono i test richiesti per aiutare nella risoluzione del problema

Passare da “upstream” anziché dalla distribuzione fa sì che anche le altre distribuzioni che forniscono supporto per il pacchetto in esame possano avvantaggiarsi della soluzione trovata.

Maintainer Wanted

Ma cosa succede se non si usa un sistema operativo libero o la distribuzione non può correggere il problema e lo sviluppatore che ha creato il pacchetto non è più raggiungibile? Vi sembra un caso impossibile? Bè, a me è successo giusto in questi giorni con hotkeys, un software per la gestione dei tasti multimediali della tastiera. Il caso è tutt’altro che raro, come potete vedere sul sito Unmaintained Free Software dove tra l’altro hotkeys non compare ancora.
In un caso come questo potete solo fare una delle seguenti cose:

  • Cercare un software alternativo che soddisfi le vostre necessità
  • Aggiungere il pacchetto all’elenco di Unmaintained Free Software e sperare che qualcuno lo adotti
  • Trovare qualcuno disposto a correggerlo eventualmente a pagamento
  • Correggerlo voi stessi se ne siete in grado e fornire la correzione alle varie distribuzioni
  • Adottare il pacchetto e diventarne il nuovo maintainer

Se vi imbattete in casi che non ricadono tra quelli presentati, o se questa guida vi è stata utile, ricordatevi di lasciare un commento.