Recompiler un paquet Debian
Par zokar le lundi, février 25 2013, 12:11 - Sysadmin - Lien permanent
Un petit post pour vous expliquer comment décompiler un paquet Debian.
Cela vous permettra de modifier son contenu, du simple fichier aux dépendances
En premier lieu, il vous faut 2 choses :
- un paquet debian sous sa forme .deb (chef-server 11.0.6 pour mon exemple : https://opscode-omnitruck-release.s3.amazonaws.com/ubuntu/12.04/x86_64/chef-server_11.0.6-1.ubuntu.12.04_amd64.deb)
- les paquets build-essential et devscripts (apt-get install build-essential descripts)
Une fois récupéré, je créer un dossier dans lequel je vais décompresser mon paquet:
mkdir chef-server_11.0.6-1.ubuntu.12.04_amd64~perso001
Ensuite, il faut décompresser le .deb via la commande :
dpkg-deb -x chef-server_11.0.6-1.ubuntu.12.04_amd64.deb chef-server_11.0.6-1.ubuntu.12.04_amd64~perso001
On oublie pas de récupérer les données de contrôle du paquet :
dpkg-deb --control chef-server_11.0.6-1.ubuntu.12.04_amd64.deb chef-server_11.0.6-1.ubuntu.12.04_amd64~perso001/DEBIAN
On effectue des modifications dans le DEBIAN/control par exemple pour changer le maintainer, les fichiers dans le paquet directement ou tout ce que vous aurez besoin.
Enfin, on recompile le paquet :
dpkg -b chef-server_11.0.6-1.ubuntu.12.04_amd64perso001.deb
Et voilà, vous pouvez maintenant installer votre paquet via la commande :
dpkg -i chef-server_11.0.6-1.ubuntu.12.04_amd64~perso001.deb
Si les modifications apportées ne sont pas erronées, tout devrait bien se passer... Sinon... Il faut corriger
@ Bientôt pour un prochain billet !