lintian e linda
Lancia lintian(1) e linda(1) sul tuo file .changes;
questo programma fa una verifica in merito a molti comuni errori di
pacchettizzazione. I comando sono:
lintian -i gentoo_0.9.12-1_i386.changes
linda -i gentoo_0.9.12-1_i386.changes
Ovviamente, sostituisci il nome del file con il nome del file changes generato per il tuo pacchetto. Se sembra che ci siano errori (le righe che iniziano con E:), leggi la spiegazione (le righe con N:), correggi e ricostruisci come descritto in Costruzione completa, Sezione 6.1. Se ci sono righe che iniziano con W:, si tratta di warning, per cui aggiusta il pacchetto o verifica che i warning siano spuri (e crea gli ovverrides per Lintian; vedi la documentazione per i dettagli)
Nota che puoi creare il pacchetto con dpkg-buildpackage , lanciare
lintian , e linda con un solo comando con
debuild(1).
mc
Puoi spacchettare il contenuto di un pacchetto *.deb con il
comando dpkg-deb(1) command. Puoi vedere il contenuto di un
pacchetto Debian con debc(1).
Tutto ciò può essere fatto in modo intuitivo usando un file manager come
mc(1) che permette non solo l'esame di un pacchetto
*.deb ma anche di file *.diff.gz e
*.tar.gz
Fa attenzione a file non necessari extra o di dimensione nulla, sia nei pacchetti binari che sorgenti. Spesso le cose non vengono ripulite come dovrebbero: modifica il tuo file rules per farlo.
Suggerimento: `zgrep ^+++ ../gentoo_0.9.12-1.diff.gz' ti fornirà una lista delle modifiche/aggiunte ai file sorgenti, e `dpkg-deb -c gentoo_0.9.12-1_i386.deb' o `debc gentoo_0.9.12-1_i386.changes' ti fornirà l'elenco dei file nel pacchetto binario.
debdiff
Puoi confrontare le liste dei file in due pacchetti binari Debian con il
comando debdiff(1). Questo è utile per verificare che nessun file
sia stato non intenzionalmente spostato o rimosso, e non siano state fatte
modifiche inavvertite nell'aggiornamento del pacchetto. Puoi verificare gruppi
di file *.deb semplicemente con `debdiff old-package.change
new-package.change'.
interdiff
Puoi confrontare due file diff.gz con il comando
interdiff(1). Questo è utile per verificare che non ci siano
modifiche inavvertite fatte sui sorgenti dal maintainer aggiornando i
pacchetti. Esegui `interdiff -z old-package.diff.gz
new-package.diff.gz'.
debi
Installa il pacchetto per testarlo tu stesso, per esempio usando il comando
debi(1) come root. Prova a installarlo e lanciarlo su una
macchina che non sia la tua, e verifica qualsiasi errore o warning durante
l'installazione o l'esecuzione.
pbuilder
Il pacchetto pbuilder è molto utile per verificare le dipendenze
di creazione del pacchetto da un ambiente di compilazione sano e minimale
(chroot). Questo assicura compilazioni pulite dai sorgenti sotto un
compilatore automatico (auto-builder) per differenti architetture ed evita i
bug FTBS (Fails To Build from Source) di severità seria, che sono sempre di
categoria RC (Critici per il Rilascio). Vedi http://buildd.debian.org/ per
maggiori informazioni sul compilatore automatico di pacchetti Debian.
L'uso di base più importante del pacchetto pbuilder è la
invocazione diretta del comando pbuilder come root. Per esempio,
scrivi i comandi che seguono nella directory in cui si trovano i file
.orig.tar.gz, .diff.gz, e .dsc per
creare un pacchetto.
root # pbuilder create # if second time, pbuilder update
root # pbuilder build foo.dsc
Il nuovo pacchetto così creato sarà localizzato in
/var/cache/pbuilder/result/ con proprietà assegnata a root.
Il comando pdebuild aiuta ad usare le funzioni del pacchetto
pbuilder come utente ordinario. In questo modo, dalla radice
dell'albero dei sorgenti, avendo il file orig.tar.gz nella
directory superiore, puoi eseguire i comandi seguenti:
$ sudo pbuilder create # if second time, sudo pbuilder update
$ pdebuild
I pacchetti creati saranno collocati in
/var/cache/pbuilder/result/ con proprietario non-root. [2]
Se vuoi aggiungere una sorgente apt addizionale da usare con il pacchetto
pbuilder, configura OTHERMIRROR in
~/.pbuilderrc o /etc/pbuilderrc ed esegui (per sarge)
$ sudo pbuilder update --distribution sarge --override-config
L'impiego di --override-config è necessario per aggiornare la sorgente apt all'interno dell'ambiente chroot.
Vedi http://www.netfort.gr.jp/~dancer/software/pbuilder.html,
pdebuild(1), pbuilderrc(5), e
pbuilder(8) .
Guida per il nuovo Maintainer
versione 1.2.3, 18 January 2005.joy-mg@debian.orgfrankie@debian.org