Création d'un paquet Debian pour SPIP

Le SPIP de Chapril est installé via les paquets Debian.

Malheureusement, il nous est arrivé d'avoir besoin de mettre à jour ce paquet pour résoudre une faille de sécurité importante, et le dépôt Debian stable ne proposait pas de version corrective.

Voici comment nous avons pu construire rapidement un paquet pour la version dont nous avions besoin.

Ce sont des instructions brutes, avec juste le minimum d'explications, mais ça marche.

Sur une Debian bookworm :

# plein de packages utiles, mais pas forcément tous nécessaires ici
sudo apt install git-buildpackage dctrl-tools unzip pristine-tar equivs lintian quilt
 
mkdir debianize-spip
cd debianize-spip
git clone -b debian/bookworm git@salsa.debian.org:debian/spip.git .
git remote add upstream https://git.spip.net/spip/spip.git
git fetch --all
 
 
VERSION=4.1.18
git checkout upstream-4.1 ; git switch debian/bookworm # bidouille pour faire plaisir à gbp
wget -O /tmp/spip-v${VERSION?}.zip https://files.spip.net/spip/archives/spip-v${VERSION?}.zip
gbp import-orig /tmp/spip-v${VERSION?}.zip --upstream-version=${VERSION?}
dch --newversion "${VERSION?}-1" "New upstream release"
git commit -m "Start packaging ${VERSION?}" debian/changelog
 
# ... refresh patches, try building, fix problems, try building again, ....
quilt push -a --refresh && quilt pop -a && rm .pc/ -rf
# Si les patchs n'ont pas été modifiés, ignorer la ligne suivante
git commit -m "Refresh patches" debian/patches
 
gbp dch
git commit -m "Release ${VERSION?}-1" debian/changelog
 
gbp buildpackage -us -uc