Hier, je me suis amusé à créer un .deb. Je suis parti des sources de Slony, l'outil de réplication pour PostgreSQL. Il existe déjà un package disponible pour Debian mais il est utilisable avec la dernière version de PostgreSQL. Or, j'avais besoin d'un Slony dernière version à utiliser avec un PostgreSQL 8.1 (donc avec une libpq version 4), sur un serveur Debian 3.1. La solution trouvée est un peu alambiquée, mais se fait rapidement (moins d'une demi-journée).

J'ai commencé par installer une Debian 3.1 sur une machine virtuelle (merci VirtualBox !). J'ai installé les paquets nécessaires à la compilation (gcc, make, etc) mais aussi le paquet développeur de PostgreSQL 8.1 (postgresql-8.1-dev). Ensuite j'ai récupéré par wget les sources de la dernière version corrective de Slony sur cette machine virtuelle. Je suis parti récupérer le diff utilisé par Debian. En effet, ce diff contient toutes les déclarations spécifiques pour créer un paquet Debian. Une fois l'archive tar de Slony décompressée et déballée, une fois le diff appliqué sur ce répertoire, il a fallu que je modifie les fichiers spécifiques Debian pour indiquer que je veux des dépendances avec la version 8.1 de PostgreSQL. J'aurais dû modifier le changelog pour indiquer mes manips, mais j'ai eu la flemme. La dernière étape a consisté à installer dh-make, puis à lancer la commande magique : dpkg-buildpackage.

Ceci fait, j'avais les trois paquets Debian : slony1-bin, slony-doc et postgresql-8.1-slony.

J'ai dû retravailler deux/trois points comme le répertoire des traces non créé mais, finalement, ça a été beaucoup plus simple que ce que je craignais.