Anleitung für die Erstellung PING-spezifischer Debian Pakete

/!\ Work in progress /!\

Vorbemerkungen

Benutzung

Um die Pakete benutzen zu können bedarf es dieser Zeile in /etc/apt/sources.list oder /etc/apt/sources.list.d/pingian.list:

deb http://debian.ping.de/pingian lenny local

Um Pakete aus dem reprepro zu entfernen kann wie folgt vorgegangen werden:

sudo reprepro -b /srv/reprepro-neu removesrc lenny exim4

Umgebung

Es bieten sich an, einige Einstellungen auf dem build-System vorzunehmen:

# always include sources in builds
DEBBUILDOPTS="-sa"

export DEBEMAIL="bodo@ping.de"

courier-imap

apt-cache madison courier-imap

apt-get source courier=0.60.0-2

patch -p0 < patches/courier-log113a.diff
patch -p0 < patches/courier-imap-apop.diff

cd courier-0.60.0/

dch --no-auto-nmu -i
        courier (0.60.0-2+ping3) lenny; urgency=low

dpkg-buildpackage -rfakeroot -S

cd ..

debdiff courier_0.60.0-2.dsc courier_0.60.0-2+ping3.dsc

screen

pbuilder-lenny build courier_0.60.0-2+ping3.dsc

sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/courier_0.60.0-2+ping3_i386.changes

courier-imap (squeeze)

dget http://ftp.de.debian.org/debian/pool/main/c/courier/courier_0.65.0-3.dsc

patch -p0 < courier-imap-apop.diff

cd courier-0.65.0

dch --no-auto-nmu -i
        courier (0.65.0-3+ping1) squeeze; urgency=low

dpkg-buildpackage -rfakeroot -sa -S

cd ..

debdiff courier_0.65.0-3.dsc  courier_0.65.0-3+ping1.dsc

screen

pbuilder-squeeze-i386 build courier_0.65.0-3+ping1.dsc
pbuilder-squeeze-amd64 build courier_0.65.0-3+ping1.dsc

sudo reprepro -b /srv/reprepro-neu include squeeze deb/courier_0.65.0-3+ping1_i386.changes
sudo reprepro -b /srv/reprepro-neu include squeeze deb/courier_0.65.0-3+ping1_amd64.changes

courier-imap (wheezy)

dget http://ftp.de.debian.org/debian/pool/main/c/courier/courier_0.68.2-1.dsc

patch -p0 < ../courier-imap-apop.diff

cd courier-0.68.2

dch --no-auto-nmu -i
        courier (0.68.2-1+ping1) wheezy; urgency=low

dpkg-buildpackage -rfakeroot -sa -S

cd ..

debdiff courier_0.68.2-1.dsc courier_0.68.2-1+ping1.dsc

screen

pbuilder-wheezy-i386 build courier_0.68.2-1+ping1.dsc
pbuilder-wheezy-amd64 build courier_0.68.2-1+ping1.dsc

sudo cp courier_0.68.2.orig.tar.gz /srv/reprepro-neu/pool/local/c/courier/courier_0.68.2.orig.tar.gz

sudo reprepro -b /srv/reprepro-neu include wheezy deb/courier_0.68.2-1+ping1_i386.changes
sudo reprepro -b /srv/reprepro-neu include wheezy deb/courier_0.68.2-1+ping1_amd64.changes

courier-imap (jessie)

dget http://http.debian.net/debian/pool/main/c/courier/courier_0.73.1-1.6.dsc
patch -p0 < ../patches/courier-imap-apop-jessie.diff
cd courier-0.73.1/
dch -l +ping 'APOP support'
dch -a 'see http://www.ksky.ne.jp/~setoppu2/courier-imap/apop.html'
dch -r -D jessie ""
dpkg-buildpackage -rfakeroot -sa -S -uc -us
cd ..
debdiff courier_0.73.1-1.6.dsc courier_0.73.1-1.6+ping1.dsc
pbuilder-jessie-i386 build courier_0.73.1-1.6+ping1.dsc
pbuilder-jessie-amd64 build courier_0.73.1-1.6+ping1.dsc
sudo reprepro -b /srv/reprepro-neu include jessie courier_0.73.1-1.6+ping1_source.changes
sudo reprepro -b /srv/reprepro-neu includedeb jessie deb/*.deb

courier-authlib

apt-cache madison courier-authlib

apt-get source courier-authlib=0.61.0-1+lenny1

patch -p0 < patches/courier-authlib-apop.diff

cd courier-authlib-0.61.0

dch --no-auto-nmu -i
        courier-authlib (0.61.0-1+lenny1+ping1) lenny; urgency=low

dpkg-buildpackage -rfakeroot -S

cd ..

debdiff courier-authlib_0.61.0-1+lenny1.dsc courier-authlib_0.61.0-1+lenny1+ping1.dsc

screen

pbuilder-lenny build courier-authlib_0.61.0-1+lenny1+ping1.dsc

sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/courier-authlib_0.61.0-1+lenny1+ping1_i386.changes

courier-authlib (squeeze)

dget http://ftp.de.debian.org/debian/pool/main/c/courier-authlib/courier-authlib_0.63.0-3.dsc

patch -p0 < courier-authlib-apop.diff

cd courier-authlib-0.63.0

dch --no-auto-nmu -i
        courier-authlib (0.63.0-3+ping1) squeeze; urgency=low

dpkg-buildpackage -rfakeroot -sa -S

cd ..

debdiff courier-authlib_0.63.0-3.dsc courier-authlib_0.63.0-3+ping1.dsc

screen

pbuilder-squeeze-i386 build courier-authlib_0.63.0-3+ping1.dsc
pbuilder-squeeze-amd64 build courier-authlib_0.63.0-3+ping1.dsc

sudo reprepro -b /srv/reprepro-neu include squeeze deb/courier-authlib_0.63.0-3+ping1_i386.changes
sudo reprepro -b /srv/reprepro-neu include squeeze deb/courier-authlib_0.63.0-3+ping1_amd64.changes

courier-authlib (wheezy)

dget http://ftp.de.debian.org/debian/pool/main/c/courier-authlib/courier-authlib_0.63.0-6.dsc

patch -p0 < ../courier-authlib-apop.diff

cd courier-authlib-0.63.0/

dch --no-auto-nmu -i
        courier-authlib (0.63.0-6+ping1) wheezy; urgency=low

dpkg-buildpackage -rfakeroot -sa -S

cd ..

debdiff courier-authlib_0.63.0-6.dsc courier-authlib_0.63.0-6+ping1.dsc

screen

pbuilder-wheezy-i386 build courier-authlib_0.63.0-6+ping1.dsc
pbuilder-wheezy-amd64 build courier-authlib_0.63.0-6+ping1.dsc

sudo cp courier-authlib_0.63.0.orig.tar.gz /srv/reprepro-neu/pool/local/c/courier-authlib/courier-authlib_0.63.0.orig.tar.gz

sudo reprepro -b /srv/reprepro-neu include wheezy deb/courier-authlib_0.63.0-6+ping1_i386.changes
sudo reprepro -b /srv/reprepro-neu include wheezy deb/courier-authlib_0.63.0-6+ping1_amd64.changes

courier-authlib (jessie)

dget http://http.debian.net/debian/pool/main/c/courier-authlib/courier-authlib_0.66.1-1.dsc
patch -p0 < ../patches/courier-authlib-apop-jessie.diff
cd courier-authlib-0.66.1/
dch -l +ping 'APOP support'
dch -a 'see http://www.ksky.ne.jp/~setoppu2/courier-imap/apop.html'
dch -r -D jessie ""
dpkg-buildpackage -rfakeroot -sa -S -uc -us
cd ..
debdiff courier-authlib_0.66.1-1.dsc courier-authlib_0.66.1-1+ping1.dsc
pbuilder-jessie-i386 build courier-authlib_0.66.1-1+ping1.dsc
pbuilder-jessie-amd64 build courier-authlib_0.66.1-1+ping1.dsc
sudo reprepro -b /srv/reprepro-neu include jessie courier-authlib_0.66.1-1+ping1_source.changes
sudo reprepro -b /srv/reprepro-neu includedeb jessie deb/*.deb

log113ad

dget http://donotdisturb.ping.de/pingian/pool/local/l/log113ad/log113ad_0.34-1.dsc

dpkg-source -x log113ad_0.34-1.dsc
cd log113ad-0.34/
dch --no-auto-nmu -i
        log113ad (0.34-1+lenny1) lenny; urgency=low
dpkg-buildpackage -rfakeroot -S

cd ..

debdiff log113ad_0.34-1.dsc log113ad_0.34-1+lenny1.dsc

pbuilder-lenny build log113ad_0.34-1+lenny1.dsc

sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/log113ad_0.34-1+lenny1_i386.changes

amd64

dget http://donotdisturb.ping.de/pingian/pool/local/l/log113ad/log113ad_0.34-1+lenny1.dsc

pbuilder-lenny build log113ad_0.34-1+lenny1.dsc

scp deb/log113ad_0.34-1+lenny1_amd64.deb donotdisturb:deb/deb
sudo reprepro -b /srv/reprepro-neu includedeb lenny ~bodo/deb/deb/log113ad_0.34-1+lenny1_amd64.deb

exim4-log113a

dget http://donotdisturb.ping.de/pingian/pool/local/e/exim4-log113a/exim4-log113a_0.11-1.dsc

dpkg-source -x exim4-log113a_0.11-1.dsc
cd exim4-log113a-0.11/
dch --no-auto-nmu -i
        exim4-log113a (0.11-1+lenny1) lenny; urgency=low
dpkg-buildpackage -rfakeroot -S
cd ..

debdiff exim4-log113a_0.11-1.dsc exim4-log113a_0.11-1+lenny1.dsc

pbuilder-lenny build exim4-log113a_0.11-1+lenny1.dsc

sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/exim4-log113a_0.11-1+lenny1_i386.changes

amd 64

dget http://donotdisturb.ping.de/pingian/pool/local/e/exim4-log113a/exim4-log113a_0.11-1+lenny1.dsc

pbuilder-lenny build exim4-log113a_0.11-1+lenny1.dsc

scp deb/exim4-log113a_0.11-1+lenny1_amd64.deb donotdisturb:deb/deb
sudo reprepro -b /srv/reprepro-neu includedeb lenny ~bodo/deb/deb/exim4-log113a_0.11-1+lenny1_amd64.deb

exim4 mit OpenSSL

Automatisiert:

mkdir buildtmp
cd buildtmp
/home/ik/build-exim.sh ''dsc-url'' wheezy

manuell:

sudo apt-get update
apt-get source exim4
perl -i -pe 's/^\s*#\s*OPENSSL\s*:=\s*1/OPENSSL:=1/' exim4-*/debian/rules
cd exim4-*
dch -l +openssl 'rebuild with openssl'
dpkg-buildpackage -rfakeroot -S
cd ..
debdiff exim4_4.80-7+deb7u5.dsc exim4_4.80-7+deb7u5openssl1.dsc
pbuilder-wheezy-i386 build exim4_4.80-7+deb7u5openssl1.dsc
sudo reprepro --ignore=wrongdistribution -b /srv/reprepro-neu include wheezy ~ik/buildtmp/exim4_4.80-7+deb7u5openssl1_source.changes
sudo reprepro -b /srv/reprepro-neu includedeb wheezy ~ik/buildtmp/deb/exim4*i386*.deb
# alternativ geht statt den beiden auch ein "include wheezy buildtmp/deb/exim4*i386.changes" ?
pbuilder-wheezy-amd64 build exim4_4.80-7+deb7u5openssl1.dsc
sudo reprepro -b /srv/reprepro-neu includedeb wheezy ~ik/buildtmp/deb/exim4*amd64*.deb

libtie-handle-csv-perl

dh-make-perl --cpan Tie::Handle::CSV
cd Tie-Handle-CSV-0.09/debian
vi copyright
        remove auto-block
        insert copyright

vi control
        add to Build-Depends: libtext-csv-xs-perl
        add to Depends: libtext-csv-xs-perl
vi changelog
        libtie-handle-csv-perl (0.09-1+ping1) lenny; urgency=low
cd ..
dpkg-buildpackage -rfakeroot -S
cd ..
pbuilder-lenny build libtie-handle-csv-perl_0.09-1+ping1.dsc

lintian -i -I lintian -i -I deb/libtie-handle-csv-perl_0.09-1+ping1_all.deb 
dpkg -c deb/libtie-handle-csv-perl_0.09-1+ping1_all.deb
sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/libtie-handle-csv-perl_0.09-1+ping1_i386.changes

libtie-handle-csv-perl (squeeze)

wget http://search.cpan.org/CPAN/authors/id/D/DA/DANBOO/Tie-Handle-CSV-0.13.tar.gz
tar xzf Tie-Handle-CSV-0.13.tar.gz
dh-make-perl Tie-Handle-CSV-0.13/
cd Tie-Handle-CSV-0.13/debian/
vi copyright
        remove DISCLAIMER

vi control
        remove dh-make-perl line

vi changelog
        libtie-handle-csv-perl (0.13-1+ping1) squeeze; urgency=low

cd ..
dpkg-buildpackage -rfakeroot -sa -S

cd ..
pbuilder-squeeze-i386 build libtie-handle-csv-perl_0.13-1+ping1.dsc
lintian -i -I lintian -i -I deb/libtie-handle-csv-perl_0.13-1+ping1_all.deb
sudo reprepro -b /srv/reprepro-neu include squeeze deb/libtie-handle-csv-perl_0.13-1+ping1_i386.changes

libtie-handle-csv-perl (wheezy)

wget http://www.cpan.org/authors/id/D/DA/DANBOO/Tie-Handle-CSV-0.15.tar.gz
tar xzf Tie-Handle-CSV-0.15.tar.gz
dh-make-perl Tie-Handle-CSV-0.15/
cd Tie-Handle-CSV-0.15/debian/
vi copyright
        remove DISCLAIMER

vi control
        remove dh-make-perl line

vi changelog
        libtie-handle-csv-perl (0.15-1+ping1) wheezy; urgency=low

cd ..
dpkg-buildpackage -rfakeroot -sa -S

cd ..
pbuilder-wheezy-i386 build libtie-handle-csv-perl_0.15-1+ping1.dsc
lintian -i -I lintian -i -I deb/libtie-handle-csv-perl_0.15-1+ping1_all.deb
sudo reprepro -b /srv/reprepro-neu include wheezy deb/libtie-handle-csv-perl_0.15-1+ping1_i386.changes

exim4

apt-cache madison exim4-daemon-heavy
apt-get source exim4-daemon-heavy
cd exim4-4.69/debian/patches
vi 50_localscan_dlopen.dpatch
        comment visibility statements (CFLAGS, local_scan.h)
cd ../..
dch --no-auto-nmu -i
        exim4 (4.69-9+ping1) lenny; urgency=low
dpkg-buildpackage -rfakeroot -S
cd ..
debdiff exim4_4.69-9.dsc exim4_4.69-9+ping1.dsc
pbuilder-lenny build exim4_4.69-9+ping1.dsc
sudo mkdir -p /srv/reprepro-neu/pool/local/e/exim4
sudo cp /home/bodo/deb/exim4_4.69.orig.tar.gz /srv/reprepro-neu/pool/local/e/exim4/
sudo reprepro -b /srv/reprepro-neu include lenny /home/bodo/deb/deb/exim4_4.69-9+ping1_i386.changes

amd64

dget http://donotdisturb.ping.de/pingian/pool/local/e/exim4/exim4_4.69-9+ping1.dsc
pbuilder-lenny build exim4_4.69-9+ping1.dsc
scp deb/exim*deb donotdisturb:deb/deb
sudo reprepro -b /srv/reprepro-neu includedeb lenny ~bodo/deb/deb/exim*deb

libcgi-lite-perl

dh-make-perl --cpan CGI::Lite
cd CGI-Lite-2.02/debian
vi copyright
        remove auto-block
        insert copyright
vi control
        remove auto part of package description
vi changelog
        libcgi-lite-perl (2.02-1+ping1) lenny; urgency=low
cd ..
dpkg-buildpackage -rfakeroot -S
cd ..
pbuilder-lenny build libcgi-lite-perl_2.02-1+ping1.dsc

lintian -i -I lintian -i -I deb/libcgi-lite-perl_2.02-1+ping1_all.deb
dpkg -c deb/libcgi-lite-perl_2.02-1+ping1_all.deb
sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/libcgi-lite-perl_2.02-1+ping1_all.changes

libcgi-lite-perl (squeeze)

wget http://search.cpan.org/CPAN/authors/id/S/SM/SMYLERS/CGI-Lite-2.02.tar.gz
tar xzf CGI-Lite-2.02.tar.gz
dh-make-perl CGI-Lite-2.02/
cd CGI-Lite-2.02/debian/

vi copyright
        remove DISCLAIMER

        Files: *
        Copyright: Smylers <smylers@cpan.org>
        License: Artistic or GPL-1+

vi control
        remove auto part of package description

vi changelog
        libcgi-lite-perl (2.02-1+ping2) squeeze; urgency=low

cd ..
dpkg-buildpackage -rfakeroot -sa -S

cd ..
pbuilder-squeeze-i386 build libcgi-lite-perl_2.02-1+ping2.dsc

lintian -i -I lintian -i -I deb/libcgi-lite-perl_2.02-1+ping2_all.deb
sudo reprepro -b /srv/reprepro-neu include squeeze deb/libcgi-lite-perl_2.02-1+ping2_i386.changes

libcgi-lite-perl (wheezy)

dget -u 'http://debian.ping.de/pingian/pool/local/libc/libcgi-lite-perl/libcgi-lite-perl_2.02-1+ping2.dsc'
rm libcgi-lite-perl*ping2*
cd libcgi-lite-perl-2.02/

dch --no-auto-nmu -i
        libcgi-lite-perl (2.02-1+ping3) wheezy; urgency=low

          * Rebuilt for wheezy, no source changes.

dpkg-buildpackage -rfakeroot -sa -S
cd ..

pbuilder-wheezy-i386 build --debbuildopts "-b" libcgi-lite-perl_2.02-1+ping3.dsc
lintian -i -I lintian -i -I deb/libcgi-lite-perl_2.02-1+ping3_all.deb
sudo reprepro -b /srv/reprepro-neu include wheezy deb/libcgi-lite-perl_2.02-1+ping3_i386.changes

wwwcount

wget http://www.muquit.com/muquit/software/Count/src/wwwcount2.5/wwwcount2.5.tar.gz
mv wwwcount2.5.tar.gz wwwcount_2.5.orig.tar.gz
tar xzf wwwcount_2.5.orig.tar.gz
mv wwwcount2.5 wwwcount-2.5
cd wwwcount-2.5
dh_make -s -c gpl
cd debian
## edit files, remove unnessesary files
cd ..
dpkg-buildpackage -rfakeroot -S
cd ..
pbuilder-lenny build wwwcount_2.5-1+ping1.dsc
lintian -i -I lintian -i -I deb/wwwcount_2.5-1+ping1_i386.deb
dpkg -c deb/wwwcount_2.5-1+ping1_i386.deb

sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/wwwcount_2.5-1+ping1_i386.changes

wwwcount (squeeze)

dget -u 'http://debian.ping.de/pingian/pool/local/w/wwwcount/wwwcount_2.5-1+ping1.dsc'

rm wwwcount*ping1*

cd wwwcount-2.5/
dch --no-auto-nmu -i
        wwwcount (2.5-1+ping2) squeeze; urgency=low

          * Rebuilt for squeeze, no source changes

dpkg-buildpackage -rfakeroot -sa -S

cd ..

pbuilder-squeeze-i386 build --debbuildopts "-b" wwwcount_2.5-1+ping2.dsc
pbuilder-squeeze-amd64 build --debbuildopts "-B" wwwcount_2.5-1+ping2.dsc

sudo reprepro -b /srv/reprepro-neu include squeeze deb/wwwcount_2.5-1+ping2_i386.changes
sudo reprepro -b /srv/reprepro-neu include squeeze deb/wwwcount_2.5-1+ping2_amd64.changes

wwwcount (wheezy)

dget -u 'http://debian.ping.de/pingian/pool/local/w/wwwcount/wwwcount_2.5-1+ping1.dsc'

rm wwwcount*ping1*

cd wwwcount-2.5/
dch --no-auto-nmu -i
        wwwcount (2.5-1+ping3) wheezy; urgency=low

          * Rebuilt for wheezy, no source changes.

dpkg-buildpackage -rfakeroot -sa -S

cd ..

pbuilder-wheezy-i386 build --debbuildopts "-b" wwwcount_2.5-1+ping3.dsc
pbuilder-wheezy-amd64 build --debbuildopts "-B" wwwcount_2.5-1+ping3.dsc

sudo reprepro -b /srv/reprepro-neu include wheezy deb/wwwcount_2.5-1+ping3_i386.changes
sudo reprepro -b /srv/reprepro-neu include wheezy deb/wwwcount_2.5-1+ping3_amd64.changes

apache2 Backport

dget http://ftp.de.debian.org/debian/pool/main/a/apache2/apache2_2.2.14-2.dsc
cd apache2-2.2.14
vi debian/control
   remove version from libapr1-dev in Build-Deps:
dch -i
   apache2 (2.2.14-2+ping1) lenny; urgency=low
dpkg-buildpackage -rfakeroot -S
cd ..
screen
pbuilder-lenny build apache2_2.2.14-2+ping1.dsc
sudo reprepro -b /srv/reprepro-neu include lenny ~bodo/deb/deb/apache2_2.2.14-2+ping1_i386.changes

majordomo (squeeze)

dget -u 'http://debian.ping.de/pingian/pool/local/m/majordomo/majordomo_1.94.5-0+ping1.dsc'

rm majordomo*ping1*

cd majordomo-1.94.5/
dch --no-auto-nmu -i
        majordomo (1.94.5-0+ping2) squeeze; urgency=low

          * Rebuilt for squeeze, no source changes

dpkg-buildpackage -rfakeroot -sa -S

cd ..

pbuilder-squeeze-i386 build --debbuildopts "-b" majordomo_1.94.5-0+ping2.dsc
pbuilder-squeeze-amd64 build --debbuildopts "-B" majordomo_1.94.5-0+ping2.dsc

sudo reprepro -b /srv/reprepro-neu include squeeze deb/majordomo_1.94.5-0+ping2_i386.changes
sudo reprepro -b /srv/reprepro-neu include squeeze deb/majordomo_1.94.5-0+ping2_amd64.changes

majordomo (wheezy)

dget -u 'http://debian.ping.de/pingian/pool/local/m/majordomo/majordomo_1.94.5-0+ping1.dsc'

rm majordomo*ping1*

patch -p0 < majordomo-perl.patch

cd majordomo-1.94.5/
dch --no-auto-nmu -i
        majordomo (1.94.5-0+ping3) wheezy; urgency=low

          * Rebuilt for wheezy, no source changes

dpkg-buildpackage -rfakeroot -S

cd ..

pbuilder-wheezy-i386 build majordomo_1.94.5-0+ping3.dsc
pbuilder-wheezy-amd64 build majordomo_1.94.5-0+ping3.dsc

sudo reprepro -b /srv/reprepro-neu include wheezy deb/majordomo_1.94.5-0+ping3_i386.changes
sudo reprepro -b /srv/reprepro-neu include wheezy deb/majordomo_1.94.5-0+ping3_amd64.changes

logcheck-database-ping

git clone git+ssh://leary.ping.de/srv/git/logcheck-database-ping.git
cd logcheck-database-ping
dch --no-auto-nmu -i
git commit -a
git push
dpkg-buildpackage -rfakeroot -us -uc
cd ..
sudo reprepro -b /srv/reprepro-neu include stretch logcheck-database-ping_*.changes

Software/Debian_Pakete_bauen (zuletzt geändert am 2018-11-25 01:56:37 durch BodoBellut)