Skip to content

CreerUnPaquetDebian

sroccaserra edited this page Jan 9, 2015 · 14 revisions

Dépendances :

  • build-essential
  • dh-make
  • devscripts

Créer la conf de base

L'idée est d'avoir un répertoire debian/ (qu'on peut versionner avec le code) avec uniquement la conf debian pour la création du paquet.

Générer le répertoire debian/ :

$ dh_make --createorig --native --single -p my-project_0.0.1

Attention, dans cette arbo minimale, éditer et remplir correctement les fichiers de conf. Les champs du fichier debian/control entre autres sont expliqués ici.

Ensuite, éditer le fichier debian/rules et écrire la règle install:. Lors de la génération du paquet, cette règle utilisera dh_install pour inclure le ou les contenus à livrer, et définir où ils devront s'installer.

Par exemple, la règle ci-dessous incluera le contenu ../dist/contents dans le paquet pour l'installer dans /srv/my-project/contents :

Indiquer également la dépendance entre les tâches binary: et install:.

install:
    dh_install ../dist/contents srv/my-project/

binary: install

Ajouter un fichier debian/conffiles, et y lister tous les fichiers installés par le package qui correspondent à des fichiers de conf.

Générer un paquet

Créer un répertoire temporaire vide (par exemple build) qui servira à préparer une livraison indépendante de l'état de votre espace de travail.

Générer le contenu à livrer à partir des sources dans ce répertoire temporaire. C'est une étape spécifique à votre projet, qui peut inclure une compilation ou un npm install from scratch par exemple.

Le(s) contenu(s) à livrer générés par cette étape seront ensuite ciblés par la règle install: lors de la création du package, donc attention à respecter les chemins indiqués dans debian/rules. Ces chemins sont relatifs au répertoire temporaire.

Copier le répertoire debian/ définit précédemment dans ce répertoire temporaire.

Les étapes suivantes s'exécutent depuis ce répertoire temporaire.

Mettre à jour le numéro de version dans les confs debian avec la commande dch :

$ dch -v "X.X.X" "Petite description"

Lancer la commande de génération du paquet (utilise les fichiers de conf de debian/ définis plus haut, dont le fichier debian/rules) :

$ dpkg-buildpackage -us -uc -b

Note : cette commande génère un paquet non signé "binary-only" (sans paquet "source"). -us -uc pour sauter les signatures gpg, et -b pour "binary-only".

Références

  • man dh_make
  • man deb-control

Sur le site Debian :

Dans le Wiki Debian :

Autres :

Clone this wiki locally