====== Machine virtuelle Debianpkgs (container proxmox) ====== La machine debianpkgs dispose d'une zone de travail pour mettre au point le dépôt local de paquets Debian. Sur lpmmc-debian il y a une copie chiffrée des sources de la zone de travail. Cela permet une sauvegarde et la possibilité de travailler depuis plusieurs origines. ===== Connexion ===== * se connecter en ssh -X adlpmmc@debianpkgs * le «X11 forwarding» est nécéssaire pour la synchronisation avec unison, les dialogues des scripts de gestion et utile pour l'édition en mode graphique (gvim) * c'est une machine dédiée uniquement à l'administration du dépôt, adlpmmc a les droits sudo et le fichier .Xauthority est copié dans /root à la connexion sudo -i pour l'accès au applications graphiques en root. * le script .bash_profile : * lance ssh-agent pour avoir des connexionx ssh avec lpmmc-debian sans mot de passe dans les scripts * demande valider la clé ssh pour le ssh-agent * lance le script de synchronisation des sources * monte la zone chiffrée sur lpmmc-debian * lance unison pour valider la synchronisation * se met dans le dossier de travail ~/LINUX-lpmmc * le script .bash_logout relance une synchronisation si on ferme le terminal avec ctrl-D. ==== Utilisation résumée ==== * [[perso:jddubois:debianlocal:lpmmc-dpkg-tools|manipulation de paquets Debian]] (exemple de création pour un code de calcul) * [[perso:jddubois:debianlocal:buggnomecalculator|bug gnome calculator]] (exemple de modification d'un paquet externe) * De façon générale : * créer un nouveau paquet : * utiliser equivs-control nompaquet.equivs * modifier nompaquet.equivs (sections Package:, Version: AA.MM.JJa, Maintainer:, Description: ...) * si le paquet n'est qu'une liste de dépendances remplir Depends:, Recommends, * si il n'y a que des opérations postinst ajouter des champs :\\ ''Postinst: nompaquet.postinst''\\ ''Postrm: nompaquet.postrm''\\ et créer les fichiers correspondants dans le même dossier. * générer la première version du paquet equivs-build nompaquet.equivs * si le paquet est destiné à installer des fichiers * dpkg-extract-deb nompaquet_version.deb * effacer le fichier paquet.equivs pour qu'il n'y ait pas d’ambiguïté * et faire les modifications de paquet... * modifier un paquet à partir de son dossier * créer ou modifier une arborescence de fichiers qui sera installée à la racine du système ( etc/, usr/bin, usr/local ...) * la configuration du paquet est dans le dossier DEBIAN et notamment : * le fichier control définissant le paquet et sa version à mettre à jour/incrémenter à chaque modification * les scripts postinst et postrm exécutés à l'installation et désinstallation. * créer la nouvelle version avec dpkg-build-deb * mettre à jour le dépôt avec le script * rsync-DIST.sh