salut, On Mon, Aug 25, 2025 at 12:55:52AM +0200, hamster wrote: > Je cherche a faire un paquet .deb mais je peine a trouver un tuto adapté Voici le Makefile avec lequel je maintiens mon paquet "belike-mc" dans lequel je garde trace de tous les paquets que je juge utile: APP = belike-mc ROOT = root CTRL = ${ROOT}/DEBIAN/control VERSION != sed ' /^Version: /!d; s///; q ' ${CTRL} SRC != find ${ROOT} -type f DEB = ${APP}_${VERSION}.deb ${DEB} : ${SRC} ; LANG= dpkg-deb --build --root-owner-group ${ROOT} ${DEB} dir: mkdir ${ROOT}; cd ${ROOT};\ mkdir -p DEBIAN sbin bin usr/share/man/man1 usr/bin * les fichiers qui doivent être installés doivent être copiés dans root à la bonne place. eg. root/bin/maintenance installe la commande /bin/maintenance * le répertoire root/DEBIAN correspond aux repertoires debian dans les sources des paquets. c'est ici que tu places tes fichiers control, post*, pre* … le seul fichier obligatoire dans ce répertoire est root/DEBIAN/control. pour en créer un, trouve un paquet qui ressemble à ton besoin et fais apt show lepaquet > root/DEBIAN/control. le tiens ressemblerait à Package: belike-mc Version: 0.0-17 Architecture: all Section: belike Maintainer: hamster Depends: sshd, x11vncserver, fail2ban, tmux Description: outils de maintenance de hamster tous les outils dont hamster a besoin pour faire des interventions à distance. apres tu as juste à lancer la commande make et ton paquet est créé. par contre: > Pour configurer, ca nécessite de modifier des > fichiers comme /etc/ssh/sshd_config et je vois nettement moins bien comment > le faire. Si tu veux utiliser debconf, je ne suis pas sur que ce soit recommandé de modifier la conf d'autres paquets (je vais regarder le lien que Charles nous a partagé) Si par "configurer" tu entends jouer les bourins et écraser les fichiers de configuration existants (au mépris de debconf et de possibles modifications locales) (façon ansible par exemple), c'est très simple: dans root/DEBIAN/postinst, tu fais un shell avec des heredocs. exemple: <<% cat > /etc/ssh/sshd_config.d/git.conf Match User git X11Forwarding no AllowTcpForwarding no PermitTTY no ExposeAuthInfo yes ForceCommand /srv/git/sh % les heredocs sont de vrais templates puisque les variable expansions y sont possibles <<% cat hostname: $(hostname) home : $HOME ${extra+extra: $extra} % me donne hostname: prometheus home : /home/mc tu peux proteger le boundary avec \ : <<\% cat hostname: $(hostname) home : $HOME ${extra+extra: $extra} % me donne: hostname: $(hostname) home : $HOME ${extra+extra: $extra} > En bref, si quelqu’un a un lien vers un tuto plus adapté a ce que je veux > faire je suis preneur. -- Marc Chantreux Pôle CESAR (Calcul et services avancés à la recherche) Université de Strasbourg 14 rue René Descartes, BP 80010, 67084 STRASBOURG CEDEX 03.68.85.60.79
Attachment:
signature.asc
Description: PGP signature