Debian Paket - Befehlsreferenz

System aufsetzen

Pakete Installieren

sudo aptitude install build-essential dpkg-dev

Vorstellung

cat >> ~/.bashrc<< EOF

DEBEMAIL="deine.email@proggen.org"
DEBFULLNAME="Dein Name"
export DEBEMAIL DEBFULLNAME

EOF
. ~/.bashrc


gpg --gen-key # Eine der angehängten E-Mail adressen muss der $DEBEMAIL entsprechen

Auschecken

mkdir dedupe && cd dedupe
svn co svn://svn.proggen.org/dedupe/branches/debian dedupe-svn

Paket aktualisieren

Debian Branch auschecken

svn switch ^/dedupe/branches/debian

Letzte Debian-Revision notieren:

svn log | head
OLDREV=244

Letzte Trunk-Revision notieren:

svn log ^/trunk | head
REV=261

Merge durchführen (eigentlich nicht unbedingt notwendig!)

svn merge -r $OLDREV:$REV ^/trunk .

Noch nicht commiten!! Zuerst bauen und überprüfen!

Tarball erstellen, siehe orig tarball erstellen

Debian changelog aktualisieren:

dch -v 0.0~svn$REV-1

Paket bauen und testen, siehe Paket bauen

Wenn alles in Ordnung, merge commiten:

svn ci -m "Debian: update svn snapshot"

Paket Bauen

Abhängigkeiten installieren

sudo aptitude install build-essential debhelper cdbs \
libboost-filesystem-dev libboost-system-dev libboost-program-options-dev \
libboost-test-dev \
libsqlite3-dev \
libncurses5-dev

orig tarball erstellen

REV=244
TEMPDIR=$(mktemp -d)
svn export -r $REV ^/trunk $TEMPDIR/dedupe
tar -C $TEMPDIR -czf dedupe_0.0~svn$REV.orig.tar.gz dedupe
rm -rf $TEMPDIR

Bauen ohne pbuilder

Quellpaket

cd dedupe-svn
debuild -S -sa

-S: baue quellpaket
-sa: Inkludiere „orig.tar.gz“ in .changes file. Benötigt für Upload in archiv.

Binärpaket

cd dedupe-svn
debuild

Bauen mit pbuilder

pbuilder einrichten

sudo aptitude install pbuilder

Der Benutzer benötigt entweder root rechte oder muss in /etc/sudoers eingetragen sein.

sudo pbuilder --create \
--basetgz /var/cache/pbuilder/base-i386.tgz \
--distribution testing \
--debootstrapopts --arch  --debootstrapopts i386
sudo pbuilder --create \
--basetgz /var/cache/pbuilder/base-amd64.tgz \
--distribution testing \
--debootstrapopts --arch  --debootstrapopts amd64
cat > ~/.pbuilderrc << EOF
DEBEMAIL="Dein Name <dein.name@proggen.org>"
BASETGZ=/var/cache/pbuilder/base-amd64.tgz
EOF

Oder base-i386.tgz, je nachdem für welche Architektur ihr standardmäßig bauen wollt.

bauen

Erstelle ein Quellpaket

ARCH=amd64
REV=244
DEBREV=2
sudo pbuilder --build \
--architecture $ARCH --basetgz /var/cache/pbuilder/base-$ARCH.tgz \
dedupe_0.0~svn$REV-$DEBREV.dsc

Warten…
… warten …
… warten …
… warten.

Resultat befindet sich in /var/cache/pbuilder/result