Estratto
svn-buildpackage è uno strmento che aiuta nel mantenimento dei pacchetti con Subversion.
HowTo del gruppo di mantenimento
Regole:
- si possono memorizzare le informazioni della struttura nelle proprietà di subversion della directory debian/
- memorizzare le seguenti informazioni nelle informazioni della struttura (attraverso le proprietà svn-bp:* della directory debian)
tarball a monte - informazioni sulla struttura origUrl (riducendosi permetterà un flusso di lavoro come quello descritto nel processo di compilazione)
- impostare tutti i campi URL:
- trunkUrl
- tagsUrl (usa URI per gli utenti autenticati)
- branchesUrl
- specificare le informazioni della struttura utilizzando percorsi relativi
Esempi
specifiche origUrl:
eddy@bounty ~/usr/src/games/trunk/wormux $ svn pl debian/ | grep svn-bp svn-bp:origUrl eddy@bounty ~/usr/src/games/trunk/wormux $ svn pg svn-bp:origUrl debian/ http://pkg-games.alioth.debian.org/tarballs/wormux_0.7.9.orig.tar.gz
Informazioni relative:
origDir=.. trunkDir=. buildArea=../build-area
Trucchi
Solo l'etichetta, senza controlli sulle dipendenze
svn-buildpackage --svn-tag-only -d
Come ottenere il pacchetto sorgente decompresso senza compilare
svn-buildpackage -d --svn-export
oppure
svn-buildpackage -d --svn-builder echo
Modificare facilmente i pacchetti che sono in importati parzialmente (sorgenti che hanno l'opzione mergeWithUpstream impostata)
Tutti i seguenti comandi utilizzano il wrapper svn-do presente in /usr/bin/svn-do (nelle vecchie versioni svn-do era in /usr/share/svn-buildpackage/contrib/svn-do)
# pulisce l'albero (utile se richiede l'albero sorgente completo) % svn-do debclean I: Exporting source tree via svn-buildpackage... [...] I: Running command: debclean [...] I: Copying back the debian/ tree... `debian/control' -> `/home/lool/svn/debian/pkg-gnome/desktop/unstable/nautilus-cd-burner/debian/control'
# usa quilt per aggiornare una patch % QUILT_PATCHES=debian/patches svn-do \ sh -c "quilt push 002_static-linking-dont-build-perf.patch; quilt refresh" [...] I: Copying back the debian/ tree... [...] `debian/patches/002_static-linking-dont-build-perf.patch' -> `/home/lool/svn/debian/pkg-gnome/desktop/experimental/gtk+2.0/debian/patches/002_static-linking-dont-build-perf.patch'
# inizia una sessione di modifica sorgenti e poi decide di non copiare l'albero debian/ % svn-do $SHELL [...] I: Running command: /bin/zsh % exit 1 E: comando terminato con 1; albero debian/ non copiato.
# modifica una patch in un pacchetto basato su simple-patchsys del sistema CDBS % svn-do cdbs-edit-patch 02_pmount.patch [...]
Sviluppo
svn-buildpackage è attualmente manutenuto come parte del repository collab-maint. Per unirsi al team di sviluppo gli si può dare un'occhiata, entrare nel canale #debian-svn-bp su OFTC, iscriversi al sistema tracciamento pacchetti su http://packages.qa.debian.org/s/svn-buildpackage.html.
L'attuale svn-buildpackage è ottenibile tramite il seguente comando:
debcheckout svn-buildpackage
oppure con l'accesso autorizzato (richiede un account su Alioth):
debcheckout -a svn-buildpackage