Créer un repository Debian
Contents
1 Introduction
Je suis co-concepteur du projet MySecureShell. Le problème, c'est que pour que son projet se fasse accepté dans les depos Debian/Ubuntu, il faut en chier un peu. C'est pourquoi, en attendant, nous avons décidé de créer notre propre repository. Ici, je vais donc décrire la marche à suivre pour créer son repos.
2 Préparation
Cet article part du principe que les paquets qui seront disponibles sur le dépôt sont déja générés. En supposant que le paquet s’intitule "mysecureshell", vous devriez avoir les fichiers suivants :
- mysecureshell.orig.tar.gz
- mysecureshell.diff.gz
- mysecureshell.dsc
- mysecureshell.changes
- mysecureshell.deb
3 Génération du dépôt
3.1 Génération de la structure
Dans un premier temps, il faut générer l’arborescence du dépôt avec les commandes suivantes :
mkdir -p /var/www/mss/debian/dists/testing/main/{binary-i386,source}
Il faut copier les fichiers de vos paquets dans votre dépôt :
cp mysecureshell_1.0.dsc mysecureshell_1.0_i386.deb /var/www/mss/debian/dists/testing/main/binary-i386/ cp mysecureshell.diff.gz mysecureshell.dsc mysecureshell.orig.tar.gz mysecureshell.orig.changes /var/www/mss/debian/dists/testing/main/source
3.2 Génération des fichiers du dépôt
Ensuite il faut générer les deux fichiers Packages.gz et Sources.gz nécessaires au dépôt :
cd /var/www/mss/debian/dists/testing/main dpkg-scanpackages binary-i386 /dev/null dists/testing/main/ | gzip -f9 > binary-i386/Packages.gz dpkg-scansources source /dev/null dists/testing/main/ | gzip -f9 > source/Sources.gz
3.3 Génération des fichiers de description
Ces deux fichiers doivent être régénérés à chaque fois qu’il faudra mettre une nouvelle version de votre paquet sur le dépôt.
Pour finir il faut créer deux fichiers de description pour votre dépôt. Le premier fichier est à mettre dans le répertoire binary-i386, s’appellera Release et contiendra :
Archive : testing Version : 1.0 Component : main Origin : MySecureShell Label : mysecureshell Architecture : i386
Le second fichier doit être mis dans le répertoire source, s’appellera également Release et contiendra :
Archive : testing Version : 1.0 Component : main Origin : MySecureShell Label : mysecureshell Architecture : source
Votre dépôt Debian est enfin prêt !! Il faut maintenant le déposer sur votre serveur HTTP (je vous laisse le faire ;-) ).
4 Utilisation
C’est bien beau d’avoir créé un dépôt de paquets Debian. Mais il faut s’en servir tout de même.
Les utilisateurs qui veulent utiliser votre dépôt doivent ajouter une des deux lignes suivantes dans le fichier /etc/apt/sources.list :
deb http://mysecureshell.free.fr/debian testing main deb-src http://mysecureshell.free.fr/debian testing main
Ensuite la procédure est la même que d’habitude pour que le système de gestion des paquets connaisse tous les paquets disponibles sur votre dépôts :
apt-get update
Et pour finir, l’installation du paquet à partir du dépôt se fait avec la commande usuelle pour tous les utilisateurs de Debian :
apt-get install mysecureshell
5 References
http://www.debian.org/doc/manuals/repository-howto/repository-howto.fr.html
http://www.debianaddict.org/article31.html