BxLUG groupe des utilisateurs de GNU/Linux de Bruxelles

Espace membres

Cas pratique - corriger un paquet debian existant

Sane ne détectait pas un scanner particulier. Après moultes recherches, un renseignement est trouvé, il faudrait légèrement modifier un fichier des sources.

Pas à pas, la construction d'un paquet Debian contenant cette modification.

D'abord récupérer les sources, apt-get source nom-du-paquet fonctionne quand des lignes deb-src sont présentes dans le fichier sources.list.

 $ apt-get source libsane
 $ cd sane-backends-1.0.14

Ensuite, apporter la modification au fichier.

 $ vi backend/hp5400_internal.c

Tout éditeur conviendrait, il s'agit ici d'ajouter la ligne suivante

#define NO_STRING_VERSION_MATCH

en haut du fichier.

 $ debchange -i

Ça, c'est pour augmenter le numéro de version, ça vient du paquet devscripts; comme numéro de version, je mets 1.0.14-7.0.1, c'est supérieur au -7 actuel mais d'un chouia seulement, ça permettrait à un paquet officiel apportant la correction de s'installer sans soucis…

 $ dpkg-checkbuilddeps

Du paquet dpkg-dev, il vérifie si tous les paquets nécessaires sont installés et affiche ceux qui manqueraient à l'appel. Ensuite, petit détour pour installer ceux-ci:

 # apt-get install dpatch libgphoto2-2-dev libusb-dev ibieee1284-3-dev chrpath

Et le tour est joué,

 $ dpkg-checkbuilddeps

N'affiche plus rien, c'est bon. La construction peut être lancée.

 $ fakeroot debian/rules binary

(fakeroot vient du paquet du même nom)

Maintenant ça compile, crr crr fait le disque, et ça se termine sur un succès total:

dpkg-deb : construction du paquet « sane-utils » dans « ../sane-utils_1.0.14-7.0.1_i386.deb ».
dpkg-deb : construction du paquet « libsane » dans « ../libsane_1.0.14-7.0.1_i386.deb ».
dpkg-deb : construction du paquet « libsane-dev » dans « ../libsane-dev_1.0.14-7.0.1_i386.deb ».

Ne reste plus qu'à installer ces nouveaux paquets.

 $ su
 # dpkg -i ../*sane*.deb

Et voilà.

Bienvenue dans le monde du libre