HowtoDebian/Packaging: mise en place de l’environnement de développement

This commit is contained in:
David Prevot 2023-10-04 15:55:15 +02:00
parent 8d4543d1d4
commit 8c59c61eb4

View file

@ -1,10 +1,72 @@
## Créer un paquet Debian
---
categories: Debian
title: Howto packaging Debian
...
* Debian Policy : <http://www.debian.org/doc/debian-policy/>
* Debian Dev refs : <http://debian.org/doc/developers-reference/>
* Debian New Maint guide : <http://debian.org/doc/maint-guide/>
* Howto sur le wiki Debian : <http://wiki.debian.org/HowToPackageForDebian>
* Howto de L. Nussbaum : <http://www.debian.org/doc/manuals/packaging-tutorial/packaging-tutorial.en.pdf>
* Charte Debian : <https://www.debian.org/doc/debian-policy/>
* Référence du développeur Debian : <https://debian.org/doc/developers-reference/>
* Guide du nouveau responsable Debian : <https://debian.org/doc/maint-guide/>
* Howto sur le wiki Debian : <https://wiki.debian.org/HowToPackageForDebian>
* Howto de Lucas Nussbaum : <https://www.debian.org/doc/manuals/packaging-tutorial/packaging-tutorial>
* Statut de cette page : test / bookworm
## Mise en place de lenvironnement de développement
### Préambule
Pour construire des paquets sur la machine locale, sans être
superutilisateur ni utiliser `sudo(1)`, `sbuild(1)` (qui est utilisé par
Debian pour son [infrastructure de construction
automatique](https://buildd.debian.org/)) peut être utilisé.
Le wiki Debian donne de nombreuses informations sur [linstallation et
la configuration de sbuild](https://wiki.debian.org/sbuild), ce qui suit
ne présente que le strict nécessaire. Seules les premières étapes (mise
en place) nécessitent dêtre superutilisateur.
### Installation, configuration minimale
~~~
# apt install sbuild schroot git-buildpackage debootstrap debhelper
# sbuild-adduser <user>
~~~
`usermod(8)` ou `addgroup(8)` et `newgrp(1)` peuvent être utilisés à la
place de `sbuild-adduser(8)`.
### Création des chroots nécessaires (Sid, Bookworm, Bullseye, etc.)
~~~
# sbuild-createchroot --include=eatmydata,ccache unstable /srv/chroot/unstable-amd64-sbuild http://mirror.evolix.org/debian
# sbuild-createchroot --include=eatmydata,ccache bookworm /srv/chroot/bullseye-amd64-sbuild http://mirror.evolix.org/debian
# sbuild-createchroot --include=eatmydata,ccache bullseye /srv/chroot/bullseye-amd64-sbuild http://mirror.evolix.org/debian
~~~
### Maintenance : mise à jour des chroots
Cette opération peut être réalisée régulièrement, ou avant de construire
des paquets.
~~~
# sbuild-update -udcar unstable bookworm bullseye
~~~
### Configuration de git-buildpackage
Cette configuration assure que `sbuild(1)` soit appelé par `gbp(1)` lors
de la [construction](#construction).
~~
$ cat > ~/.gbp.conf <<EOF
[DEFAULT]
builder = sbuild
EOF
~~
[comment]: <> (pour vim)
## Création dun paquet
### Génération de l'arborescence _debian/_