Translation(s): English - Italiano


Usare Quilt con i pacchetti sorgenti Debian

Informazioni generali

Documentazione

Concetti base

quilt funziona usando alcune directory: crea una directory .pc/ e una patches/.

Queste directory possono essere create quando si usa

 $ quilt import un_qualche_package.diff.gz

Utilizzare quilt con i pacchetti sorgente Debian

Situazione: è stato scaricato un pacchetto di sorgenti Debian che usa quilt e si vuole correggere un bug per poi presentare una patch al maintainer.

Usare il file di configurazione .quiltrc

Mettere un file di configurazione .quiltrc nella propria directory home, contenente le righe seguenti.

QUILT_PATCHES=debian/patches
QUILT_NO_DIFF_INDEX=1
QUILT_NO_DIFF_TIMESTAMPS=1
QUILT_REFRESH_ARGS="-p ab"

Variabili d'ambiente

In alternativa si possono aggiungere queste righe al file .bashrc, o altrimenti eseguirle nella shell prima di usare quilt.

export QUILT_PATCHES=debian/patches
export QUILT_REFRESH_ARGS="-p ab --no-timestamps --no-index"

Operazioni quilt di base

Creare una nuova patch

Il codice sorgente estratto da apt-get source non ha ancora le patch applicate.

Primo passo: applicare patch esistenti ai sorgenti

quilt push -a

per "inserire" tutte le patch esistenti nell'albero dei sorgenti (quando si crea un pacchetto questo è fatto dagli script di compilazione)

Creare una nuova patch

quilt new miaPatch.diff # questo è il nome della patch

quilt add README # Dove 'README' è il nome del file da modificare. Va fatto preventivamente per tutti i file che saranno modificati, una patch di quilt può modificare più file

Modificare i sorgenti

Apporre i cambiamenti ai file aggiunti alla patch: modificarli o sostituirli con un file già modificato salvato in una directory diversa.

Aggiornare una patch con le modifiche fatte ai file

quilt refresh #si può ripetere quante volte si vuole

Completare la modifica

quilt pop -a #revoca tutte le patch in modo che i sorgenti ritornino alla condizione in cui erano al momento del download

Modificare una patch esistente

quilt gestisce patch multiple ma se ne può modificare solo una, ovvero l'ultima inserita.

Per modificare una patch esistente si comincia con l'inserirla:

quilt push miaPatch.diff

E una volta modificata:

quilt refresh miaPatch.diff  #nota: il completamento automatico fa risparmiare in scrittura ed evita errori

quilt pop -a