Comment créer un fork local d'un paquet Debian?

8

Je souhaite conserver un fork local d'un paquet Debian. J'ai besoin de corriger un bug qui sera finalement corrigé dans le paquet officiel, mais pas pour un certain temps.

Comment créer un package .deb et comment l'utiliser pour obtenir mon correctif de bogue utilisé localement?

Le package en question contient des fichiers de script.

John McAleely
la source

Réponses:

8

Cela dépend de la disponibilité d'un dépôt git ou subversion accessible au public. Si c'est le cas, il est probablement judicieux d'utiliser git pour créer une branche du référentiel officiel.

A défaut, avec un peu de chance, le paquet utilise quelque chose comme dpatch ou quilt, donc vous pouvez simplement garder un patch dans debian / patches /.

Si vous n'avez vraiment pas de chance, vous devrez gérer la mise à jour de votre patch à chaque fois qu'un nouveau package est publié à la main. Cela vaut peut-être la peine d'utiliser git pour cela et d'importer chaque nouvelle version.

Lors de la construction de paquets debian, assurez-vous que les paquets build-essential et devscripts sont installés.

Pour réellement effectuer le changement, exécutez

# apt-get source foo

Ensuite, passez dans le répertoire foo-1.2.3 et apportez vos modifications.

Ensuite, exécutez

# debuild -us -uc -b

qui va créer le package. Cela vous permettra de créer immédiatement ou de vous indiquer les dépendances que vous devez installer avant de réessayer. Les packages de construction se retrouveront dans le répertoire au-dessus de la source.

Je recommande fortement de changer le numéro de version du paquet dans le fichier debian / changelog, afin de ne pas confondre votre paquet construit localement avec l'original. Vous pouvez consulter l'outil dch pour faciliter la modification de ce fichier.

David Pashley
la source