===== Création d'un dépôt personnalisé =====
* Objet : Création d'un dépôt personnalisé
* Niveau requis :{{tag>avisé}}
* Commentaires : //Créer son propre dépôt Debian//
* Suivi : {{tag>à-tester}}
* Suivi : {{tag>à-compléter}}
* Création par [[user>gutts]] le 12/11/2009
* Testé par .... le ....
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=12042 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== Présentation =====
Cette page explique comment créer son propre dépôt Debian. Je n'ai validé cette procédure qu'une seule fois, donc il est possible que j'ai oublié de noter certaines étapes. Merci d'en faire part dans le forum.
===== Installation =====
On commence par installer apache2, de manière basique :
apt-get install apache2
Puis on installe debarchiver et dpkg-scanpackages :
apt-get install debarchiver devscripts
===== Configuration =====
Ensuite il faut créer les répertoires qui accueilleront les paquets :
mkdir -p /var/www/debian
mkdir /var/www/debian/dists/
mkdir /var/www/debian/_incoming/
Le répertoire dists contiendra l'arborescence du dépôt et _incoming sera le répertoire où debarchiver viendra chercher les nouveaux paquets pour les placer au sein de l'arborescence.
Enfin il suffit d'éditer le fichier /etc/debarchiver.conf et de modifier les paramètres suivants :
$destdir = "/var/www/debian/dists";
$inputdir = "/var/www/debian/_incoming";
@distributions = ('etch', 'lenny', 'testing', 'unstable');
@sections = ('main', 'universe', 'multiverse');
Si vous souhaitez recevoir un message lorsqu'un paquet est ajouté remplissez la section :
@mailtos = ('Maintainer', The Maintainer field in control file
'Uploaders', The Uploaders field in control file
'@bar.com', User id @bar.com that own the changes file
'installer@foo.com', An explicit email address
'Changed-By'); The email in the changelog file
===== Initialisation =====
Il faut maintenant créer l'arborescence du dépôt :
debarchiver
Vérifier le résultat :
ls -lR /var/www/debian/dists
Un script cron se trouve dans /etc/cron.d/debarchiver.\\
Par défaut debarchiver est executé toutes les 5 minutes.\\
Le répertoire _incoming est alors scanné à la recherche de nouveaux paquets à ajouter sur le dépôt.
===== Publier le dépôt =====
L'arborescence peut être rendue publique par HTTP ou FTP.\\
Nous prenons ici l'exemple d'un serveur apache2.
Voici la configuration d'un virtual host (ubuntu.votredomaine.com)
ServerName debian.votredomaine.com
ServerAlias debian.votredomaine.com
ServerAdmin webmaster@votredomaine.com
DocumentRoot /var/www/debian
ErrorLog /var/log/apache2/debian-error.log
CustomLog /var/log/apache2/debian-access.log combined
"/data/www/debian"
Options Indexes Includes FollowSymLinks MultiViews
IndexOptions FancyIndexing SuppressHTMLPreamble NameWidth=*
IndexIgnore _incoming _style
HeaderName /_style/HEADER.html
ReadmeName /_style/README.html
La commande IndexIgnore permet de cacher le répertoire _incoming.\\
HEADER.html et README.html permettent d'améliorer le rendu visuel de l'aborescence.
===== Ajouter un paquet =====
Placez tous les fichiers générés pendant la création du paquet (pas uniquement le .deb) dans le répertoire _incoming et attendre 5 minutes.
Si vous êtes pressé exécutez directement la commande :
debarchiver -so
===== Utiliser le dépôt =====
Ajoutez les dépôts créés:
echo " deb http://@IP_SERVEUR/depots debian main " >> /etc/apt/sources.list
apt-get update