-
Notifications
You must be signed in to change notification settings - Fork 1
CreerUnPaquetDebian
Dépendances :
build-essential
dh-make
devscripts
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.
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".
man dh_make
man deb-control
Sur le site Debian :
- https://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html
- https://www.debian.org/doc/debian-policy/ch-controlfields.html
- https://www.debian.org/doc/debian-policy/ap-pkg-conffiles.html
Dans le Wiki Debian :
Autres :