Modifications entre les versions 25 et 26
Version 25 à la date du 2008-11-07 15:45:38
Taille: 5879
Éditeur: ThomasNoël
Commentaire: mental, pas rience
Version 26 à la date du 2008-11-14 11:04:39
Taille: 5984
Éditeur: ThomasNoël
Commentaire: aptitude search
Texte supprimé. Texte ajouté.
Ligne 35: Ligne 35:
# A utiliser sur tout poste client AUF (mais ne contient rien à ce
# jo
ur -- 7 nov 2008)
# A utiliser sur tout poste client AUF
#
Voir le contenu : aptitude search '~Oauf'
Ligne 42: Ligne 42:
deb http://apt.auf.org/ hardy-test auf # Voir le contenu : aptitude search '~Oauf-test'
#
deb http://apt.auf.org/ hardy-test auf
Ligne 46: Ligne 47:
deb http://apt.auf.org/ hardy-experimental auf # Voir le contenu : aptitude search '~Oauf-experimental'
#
deb http://apt.auf.org/ hardy-experimental auf

Cette page présente le dépôt de paquets pour Debian et Ubuntu spécifiques à l'AUF.

Accès aux paquets disponibles

Ajout de la clé GPG utilisée pour signer le dépôt

Il faut d'abord installer la clé publique GPG qui signe ce dépôt. Pour cela, ajouter dans le sources.list le dépôt AUF concernant votre distribution :

  • # à ajouter dans /etc/apt/sources.list (ou créer un /etc/apt/sources.list.d/auf) 
    # remplacer "distribution" par etch, lenny, hardy, intrepid, ... selon votre système.
    deb http://apt.auf.org/ distribution-debian-ou-ubuntu auf

Puis installer le paquet auf-keyring :

  • # aptitude update
    # aptitude install auf-keyring

Note : lors de la première installation de auf-keyring aptitude va vous demander de confirmer l'installation car il ne juge pas encore la source "sûre". Confirmez l'installation, la clé sera ajoutée : aptitude fera désormais confiance au dépôt AUF.

Configuration des sources de paquets (sources.list)

Ensuite ajouter les sources qui vous conviennent en fonction de ce que vous avez à mettre en place. Les lignes à ajouter dans le sources.list sont de la forme :

  • # format d'une source Debian :
    deb http://apt.auf.org/ distribution composant

Exemples de sources à ajouter :

  • # Paquets AUF pour Ubuntu Hardy
    # A utiliser sur tout poste client AUF
    # Voir le contenu : aptitude search '~Oauf'
    deb http://apt.auf.org/ hardy auf
    
    # Paquets en cours de tests (validation) pour Ubuntu Hardy
    # A utiliser quand vous désirez/devez participer à un test d'un
    # futur paquet AUF...
    # Voir le contenu : aptitude search '~Oauf-test'
    # deb http://apt.auf.org/ hardy-test auf
    
    # Paquets en cours d'expérimentation pour Ubuntu Hardy
    # Attention : forte potentialité de crash ;)
    # Voir le contenu : aptitude search '~Oauf-experimental'
    # deb http://apt.auf.org/ hardy-experimental auf

Après un aptitude update, vous pouvez installer les nouveaux paquets.

Pour ajouter ses petits paquets dans le dépôt

Si vous savez fabriquer des paquets Debian ou Ubuntu, vous pouvez les mettre à disposition de vos collègue sur ce dépôt.

Pour cela, il faut :

  • savoir faire des beaux paquets Debian : dpkg-buildpackage, dh-make, retroportages, ...

  • savoir à quelle distribution sont destinés les paquets : etch, lenny, hardy, intrepid, ...

Pour envoyer un paquet, on utilise dput (aptitude install dput) que l'on configure ainsi (dans ~/.dput.cf) :

  • # Exemple de configuration de dput. Ce dput est prévu pour envoyer des paquets
    # pour Ubuntu "Hardy" (8.04) dans les sections "experiences" et "tests".
    [DEFAULT]
    hash                    = md5
    allow_unsigned_uploads  = 1
    run_dinstall            = 0
    scp_compress            = 1
    default_host_main       = section-a-preciser
    fqdn                    = apt.auf
    method                  = ftp
    login                   = anonymous
    
    # paquets pour "hardy-tests auf"
    [test]
    incoming                = test/hardy
    
    # paquets pour "hardy-experimental auf"
    [experimental]
    incoming                = experimental/hardy

Pour envoyer un paquet il suffit de faire :

  • $ dput experimental le-nom-du-paquet.changes

Si tout va bien le paquet sera ajouté dans le dépôt 5 minutes plus tard (par cron). Si la version expérimentale fonctionne, envoyez dans test et demandez à des collègues de tester. Une fois que tout est ok, il sera ajouté (manuellement) dans le dépôt officiel "auf".

Pour les curieux : comment ça marche à l'intérieur

[JOINDRE]

Le système est basé sur reprepro (version etch). C'est ce logiciel qui gère le dépot : on lui dit quel paquet ajouter à quel composant de quelle distribution, et il gère le pool, les fichiers Release, Packages, Sources, etc. A côté, un serveur apache2 propose le dépôt en HTTP.

Le principe : il y a un utilisateur virtuel "reprepro" sur le système, qui gère le dépôts. C'est cet utilisateur qui va lancer le logiciel "reprepro" avec les bons arguments. Il est le seul à avoir accès en écriture sur le dépôt.

  • /srv/www/apt.auf.org/pool et .../dists : le dépôt lui-même

  • ~reprepro/conf/ : configuration de reprepro, voir man reprepro pour explication :

  • ~reprepro/db/ : contient les bases de données internes de reprepro

Un script shell appelé reprepro-incoming lance le logiciel reprepro en lui disant d'aller chercher les paquets de tel composant pour telle distribution dans tel répertoire. La liste de ces paramètres est dans ~reprepro/incomings :

  • # Fichier ~reprepro/incomings
    
    # Format d'une ligne :
    # distrib composant repertoire email-pour-rapport
    
    etch-test           auf     /home/ftp/test/etch              root@auf.org
    etch-experimental   auf     /home/ftp/experimental/etch      thomas.noel@auf.org

Le script reprepro-incoming gère l'envoie de rapport par mail (dernier paramètre de chaque ligne d'appel). Il est lancé par cron toutes les 5 minutes.

Pour info, le script dans sa version du 11 février 15h TU : reprepro-incoming

Il reste à faire

  • regarder le backport de reprepro et notamment son "processincoming"

  • mettre tout le code sur git.auf.org

Multi-architecture

Pour proposer un paquet binaires dans plusieurs architectures (typiquement i386 et amd64) :

  • il faut compiler d'abord une architecture classiquement et inclure les sources dans l'upload (donc dpkg-buildpackage avec l'option -sa)

  • envoyer par dput le ...changes

  • puis compiler la ou les autres architectures avec l'option -b qui ne construit que le paquet binaire...

  • envoyer par dput le ou les ...changes obtenus


Notes de bas de page :

DépôtAPT (dernière édition le 2013-12-05 20:21:24 par JeanChristopheAndré)