Gràcies per les respostes, encara estic llegint els enllaços del Narcís,
No recordo de on vaig agafar la recepte, però els paquets els faig
directament amb fakeroot dpkg --build CARPETA, on tinc ja creada la
estructura del paquet, un directori DEBIAN, amb els conffiles, config,
control i postinst..., i els etc i usr que corresponguin al paquet.
Normalment es un script bash o un conjunt de script, que no em cal
compilar ni fer res especial a banda de configurar usuari, paths.... Per
això feia servir el script postinst.
En temps d'instal·lació vull personalitzar les rutes. Si es una variable
no n'hi ha problema. He trobat la solució amb debconf. El problema es,
per exemple, editar la llista d'arxius a fer backup. Es una llista
variable i amb debconf no he trobat la manera. Abans ho solucionava
directament amb vi /etc/configuracio/llista.conf, però a part de ser una
mica cafre, no es compatible amb ansible i es aquí on volia trobar la
manera "elegant" de fer-ho.
Trobo que fer-ho amb makefiles es complicar massa la cosa, però potser
es la única manera.
Salut i agraït per qualsevol idea,
Daniel
El 22/6/21 a les 14:11, Alex Muntada ha escrit:
Hola, Daniel
Mirant-me una mica més la documentació he començat a fer servir
debconf i els templates per demanar els paràmetres, però no
trobo cap manera fàcil quan tinc que modificar un arxiu sencer.
Em sembla intuir que el que vols és parametritzar l'execució de
l'script segons l'entorn en què es trobi, però em falta context.
Podries explicar amb més detall el problema que vols resoldre?
No acabo d'entendre per què el postinst hauria de modificar un
fitxer sencer que ja vingui empaquetat.
Amb un exemple senzill d'un dels scripts serà suficient.
Quina es la forma elegant de fer-ho? O alguna guia una mica
avançada de crear paquets debs per scripts (només he trobat per
crear paquets compilats, i les que estan orientades a fer-ho de
manera manual son molt bàsiques)
Si el codi té un Makefile, en general és força senzill fer un
paquet que l'utilitzi per instal·lar el resultat d'executar
«make && make install».
A la wiki https://wiki.debian.org/Packaging/Intro tens un exemple
basat en codi compilat però fer-ho per un script seria encara més
fàcil perquè la part del «make» segurament no haurà de fer res.
Salut,
Alex
--
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Alex Muntada <[email protected]>
⢿⡄⠘⠷⠚⠋ Debian Developer 🍥 log.alexm.org
⠈⠳⣄⠀⠀⠀⠀