[RISOLTO] Bugfix facile: chi se ne occupa?

Coordinamento delle attività e informazioni sui progetti del gruppo: creazione, modifica e gestione dei pacchetti di Ubuntu e relative problematiche.

Moderatore: Gruppo Sviluppo

Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

[RISOLTO] Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Dopo l'ottimo risultato ottenuto da Rospo Zoppo con la risoluzione di un bug (e la conseguente pubblicazione su https://launchpad.net/~mariobonino/+packages ;)), vorrei sottoporre all'attenzione degli interessati questo bug di facile risoluzione: https://bugs.launchpad.net/ubuntu/+sour ... bug/108933.
Vorrei mostrare passo passo come fare, una specie di howto per prendere confidenza con le procedure e avere un primo riferimento (che, ovviamente, non intende sostituire le guide e la documentazione già presente). Chi si vuole cimentare?
Ultima modifica di DktrKranz il sabato 11 agosto 2007, 13:16, modificato 1 volta in totale.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

Se vuoi io!

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Prepariamo il campo per compiere il lavoro.
Per prima cosa scarica questo metapacchetto, il quale installerà tutti i software che serviranno per la gestione del bug.
Poi dobbiamo prelevare il pacchetto sorgente del software in questione, dato che tutte le attività di sviluppo si fanno sui sorgenti. Indirizzati su http://packages.ubuntu.com/src:bzflag e, dopo aver cliccato su gutsy (a parte alcune eccezioni, si lavora sempre sui pacchetti della versione di sviluppo), troverai una tabella con i file da scaricare. In questo caso saranno due file con estensione .dsc e .tar.gz, mentre nella stragrande maggioranza dei casi sono presenti i file .diff.gz e .orig.tar.gz (il file .dsc è sempre presente).
Dopo aver scaricato i due file, crea una nuova directory (il nome non è importante) e copia i file al suo interno. Ora è il turno del terminale: posizionati nella directory appena creata e lancia il comando dpkg-source -x bzflag_2.0.8.20060605ubuntu1.dsc. Se tutto va bene, dovresti avere una nuova sottodirectory con i vari file sorgenti.
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Prima di dimenticarmene, è necessario avere un account su Launchpad. Se già l'hai, indirizzati su https://launchpad.net/bugs/108933, clicca su bzflag (Ubuntu) (sulla riga in giallo) e imposta i campi nel seguente modo:
  • Status: In Progress
  • Assigned to: Me
Infine un click su Save changes per confermare il tutto.
Se l'account su Launchpad non l'hai, https://launchpad.net/+login ;)
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

va bene se uso dpkg-buildpackage per fare i pkg???

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

ubu4ever ha scritto: va bene se uso dpkg-buildpackage per fare i pkg???
Si, ma con l'opzione -S. Personalmente uso debuild, ma è sostanzialmente la stessa cosa.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

non devo modificare il rules, vero????

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

In questo caso c'è da modificare proprio il file debian/rules ;)

Siccome il nostro compito è quello di installare un file .desktop all'interno della directory /usr/share/applications (dove risiedono tutti i file di questo tipo), dobbiamo fare in modo che il file già presente nella directory debian (alcune volte è necessario crearlo ex-novo) venga incluso correttamente nel pacchetto. Per realizzare il tutto, dobbiamo fare due cose:
  • creare la directory usr/share/applications per evitare errori di compilazione (no such file or directory)
  • copiare il file .desktop all'interno della directory appena creata
Per creare la directory possiamo avvalerci del già presente comando dh_installdirs, modificando la riga

Codice: Seleziona tutto

dh_installdirs -p$@ usr/games usr/share/bzflag/l10n usr/share/bzflag/fonts usr/share/man/man6
in

Codice: Seleziona tutto

dh_installdirs -p$@ usr/games usr/share/bzflag/l10n usr/share/bzflag/fonts usr/share/man/man6 usr/share/applications
In tutte le directory va omesso lo slash iniziale.

Ora dobbiamo procedere all'installazione del file .desktop vero e proprio, per farlo ci spostiamo poco più in basso, al termine della serie di comandi cp -p, e ne aggiungiamo un altro:

Codice: Seleziona tutto

        cp -p debian/bzflag.desktop debian/$@/usr/share/applications/
Al posto degli spazi va inserita una tabulazione, analogamente a quanto accade per tutti i comandi inseriti nel file rules. Usare cp non è indicato (solitamente si usa install o dh_install), ma in questo caso ci adeguiamo a quanto fatto dal manutentore del pacchetto.

Le modifiche al file rules sono terminate, ora rimane da creare la voce di changelog e gestire il campo Maintainer del file debian/control, ma facciamo le cose per gradi ;)
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

ho creato usr nella cartella debian, va bene???

P.S.=Che rompiscatole che sono!

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Se hai creato la directory, no. Ci pensa automaticamente il pacchetto a creare le directory ove necessario. Noi dobbiamo dirgli solo quali.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

due nuovi bug:

Non c'è l'icona nel pkg,
Non si avvia dal desktop, però il file è giusto. Che fare??

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
Rospo Zoppo
Rampante Reduce
Rampante Reduce
Messaggi: 5291
Iscrizione: martedì 16 gennaio 2007, 20:35

Re: Bugfix facile: chi se ne occupa?

Messaggio da Rospo Zoppo »

Io intanto provo a farlo sul mio pc se riesco :D
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Per quanto riguarda l'icona, possiamo risolvere con un trucchetto: un symlink ad un'immagine preesistente. Le varie icone sono solitamente collocate in /usr/share/pixmaps. Se creassimo un collegamento simbolico a /usr/share/bzflag/bzflag-48x48.png (presente nel pacchetto) e lo posizionassimo in quella directory, il problema sarebbe risolto.

Per fare ciò ci serviano del comando dh_link, già presente in debian/rules, modificando quello presente nella sezione bzflag: in questo modo:

Codice: Seleziona tutto

dh_link -p$@ usr/share/bzflag/bzflag-48x48.png usr/share/pixmaps/bzflag-48x48.png
Anche in questo caso vanno omessi gli / iniziali davanti ai due path.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

Niente, non va! (nè l'icona, nè il collegamento)

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Ho fatto una prova e a me funziona, in ogni modo vediamo di fare le ultime due modifiche per chiudere il pacchetto, riservandoci di testarlo in un secondo momento.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

cioè di modificare debian/control e debian/changelog???

Perchè se è per quello io l'ho fatto (però ho aggiunto al changelog il mio nickname (ubu4ever) per alcuni motivi)

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Nel file debian/control devi anche inserire quanto qui elencato: https://wiki.ubuntu.com/DebianMaintainerField.
Avatar utente
ubu4ever
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 675
Iscrizione: sabato 9 giugno 2007, 18:49
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da ubu4ever »

Guida Tradotta??? (Ma quella guida dice che mi devo impostare IO come maintainer?)

ciao
No windows, no end of computer life
Ubuntu user number # 15246
Avatar utente
DktrKranz
Rampante Reduce
Rampante Reduce
Messaggi: 5071
Iscrizione: giovedì 2 novembre 2006, 11:24
Desktop: GNOME Shell
Distribuzione: Debian GNU/Linux sid - x86_64
Località: Guastalla (RE)
Contatti:

Re: Bugfix facile: chi se ne occupa?

Messaggio da DktrKranz »

Non ricordo il nome del maintainer, ne uso uno di fantasia.
Supponendo che il campo Maintainer in debian/control sia questo:

Codice: Seleziona tutto

Maintainer: Nome Cognome <nick@email.com>
lo devi modificare in questo modo:

Codice: Seleziona tutto

Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
XSBC-Original-Maintainer: Nome Cognome <nick@email.com>
Mai, e ripeto MAI, mettere il proprio nome nel campo Maintainer, a meno di essere il maintainer designato. Il proprio nome va messo nel changelog.
DarkSun

Re: Bugfix facile: chi se ne occupa?

Messaggio da DarkSun »

Maintainer: Ubuntu MOTU Developers
Naturalmente, il maintainer sarà Ubuntu MOTU Developers solo se il pacchetto è contenuto negli archivi {uni,multi}verse.
Se il pacchetto facesse parte degli archivi Main o Restricted, il maintainer sarebbe stato:

Codice: Seleziona tutto

Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
Ciao
Scrivi risposta

Ritorna a “Gruppo Sviluppo”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 12 ospiti