Ce chapitre explique comment gérer une configuration d'un système live à partir d'une création initiale, à travers des révisions successives et des versions successives du logiciel live-build et de l'image live elle-même.
Les configurations live sont rarement parfaites du premier coup. Vous aurez probablement besoin de faire une série de révisions jusqu'à ce que vous êtes satisfait. Cependant, des incohérences peuvent se glisser dans votre configuration d'une révision à la prochaine si vous ne faites pas attention. Le principal problème est, une fois qu'une variable est donnée une valeur par défaut, cette valeur ne sera pas recalculée à partir d'autres variables qui peuvent changer dans les révisions ultérieures.
Par exemple, lorsque la distribution est d'abord définie, nombreuses variables sont assignées des valeurs par défaut qui conviennent à cette distribution. Cependant, si vous décidez ultérieurement de modifier la distribution, ces variables dépendantes conservent les anciennes valeurs qui ne sont plus appropriées.
Un deuxième problème lié est que si vous exécutez lb config et ensuite mettez à jour une nouvelle version de live-build qui a changée l'un des noms des variables, vous découvrirez ce que par un examen manuel des variables dans votre fichiers dans config/*, que vous devrez ensuite utiliser pour définir l'option appropriée à nouveau.
Tout cela serait une nuisance terrible si ce n'était pas pour les scripts auto/*, simples emballages pour les commandes lb config, lb build et lb clean qui sont conçus pour vous aider à gérer votre configuration. Il suffit de créer un script auto/config contenant la commande lb config avec toutes les options désirées, et un auto/clean qui supprime les fichiers contenant les valeurs des variables de configuration, et chaque fois que vous lancez lb config et lb clean, ces fichiers seront exécutés. Cela permettra d'assurer que votre configuration a une cohérence interne d'une révision à l'autre et d'une version de live-build à la suivante (bien que vous aurez encore de prendre soin et lire la documentation lorsque vous mettez live-build à niveau pour faire les ajustements nécessaires).
Utiliser des exemples de scripts auto tels que les suivants comme point de départ pour votre nouvelle configuration de live-build. Prenez note que lorsque vous appelez la commande lb que votre script auto emballage, vous devez spécifier noauto comme paramètre afin de s'assurer que le script automatique n'est pas appelé à nouveau, de façon récursive. Aussi, n'oubliez pas de s'assurer que les scripts sont exécutables (par exemple chmod 755 auto/*).
auto/config
#!/bin/sh
lb config noauto \
--package-lists "standard" \
"${@}"
auto/clean
#!/bin/sh
lb clean noauto "${@}"
rm -f config/binary config/bootstrap \
config/chroot config/common config/source
rm -f build.log
auto/build
#!/bin/sh
lb build noauto "${@}" 2>&1 | tee build.log
Nous expédions maintenant scripts auto d'exemple avec live-build sur la base des exemples ci-dessus. Vous pouvez copier ces comme point de départ.
$ cp /usr/share/live/build/examples/auto/* auto/
Editer auto/config, en changeant ou en ajoutant des options comme bon vous semble. Dans l'exemple ci-dessus, --package-lists standard est fixé à la valeur par défaut. Changez ce à une valeur appropriée pour votre image (ou le supprimer si vous voulez utiliser par défaut) et ajouter des options supplémentaires dans les lignes suivantes.