Live manual Debian Live

# Debian Live Manual

# Gestion d'une configuration

328

# 6. Gestion d'une configuration

329

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.

330

6.1 Gérer les modifications de la configuration

331

Les configurations live sont rarement parfaites du premier coup. Il peut être bon de passer des options `lb config` à partir de la ligne de commande pour effectuer une construction unique, mais il est plus courant de réviser ces options et de construire à nouveau jusqu'à ce que vous soyez satisfait. Afin de prendre en charge ces changements, vous aurez besoin des scripts automatiques qui assurent le maintien de votre configuration dans un état cohérent.

332

6.1.1 Pourquoi utiliser des scripts auto? Que font-ils?

333

La commande `lb config` enregistre les options que vous lui passez avec les fichiers dans `config/*` avec beaucoup d'autres options aux valeurs par défaut. Si vous exécutez `lb config` à nouveau, il ne réinitialisera pas l'option qui a été mise par défaut en fonction de vos options initiales. Ainsi, par exemple, si vous exécutez `lb config` à nouveau avec une nouvelle valeur pour `--binary-images`, toutes les options qui ont été mises à leur valeur par défaut pour l'ancien type d'image ne peuvent plus fonctionner avec la nouvelle option. Ces fichiers ne sont pas destinés à être lus ou modifiés. Ils enregistrent des valeurs pour plus d'une centaine d'options, donc personne (y-compris vous) ne pourra voir dans ces options lesquelles vous avez réellement indiquées. Finalement, si vous lancez `lb config`, puis mettez live-build à niveau et que celui-ci renomme une option, `config/*` contiendra toujours des variables nommées en fonction de l'ancienne option et qui ne seront plus valides.

334

Pour toutes ces raisons, les scripts `auto/*` vous rendront la vie plus facile. Ils sont de simples emballages pour les commandes `lb config`, `lb build` et `lb clean` qui sont conçus pour vous aider à gérer votre configuration. Le script `auto/config` enregistre votre commande `lb config` avec toutes les options désirées, le script `auto/clean` supprime les fichiers contenant les valeurs des variables de configuration et le script `auto/build` crée un `build.log` de chaque construction. Et chaque fois que vous lancez la commande `lb` correspondante, ces fichiers sont exécutés automatiquement. En utilisant ces scripts, votre configuration est plus facile à lire et a une cohérence interne d'une révision à l'autre. En outre, il sera plus facile pour vous d'identifier et corriger les options qui doivent changer lorsque vous mettez à niveau live-build après avoir lu la documentation mise à jour.

335

6.1.2 Utiliser les scripts auto d'exemple

336

Pour votre commodité, live-build est fourni avec des scripts shell d'exemple, pour les copier et les modifier. Lancez une nouvelle configuration par défaut, puis copiez les exemples:

337

$ mkdir mylive && cd mylive && lb config
$ mkdir auto
$ cp /usr/share/doc/live-build/examples/auto/* auto/

338

Modifiez `auto/config` en ajoutant des options comme bon vous semble. Par exemple:

339

#!/bin/sh
lb config noauto \
--distribution stable \
--binary-images hdd \
--mirror-bootstrap http://ftp.ch.debian.org/debian/ \
--mirror-binary http://ftp.ch.debian.org/debian/ \
"${@}"

340

Maintenant, chaque fois que vous utilisez `lb config`, `auto/config` réinitialisera la configuration basée sur ces options. Lorsque vous souhaitez effectuer des modifications, modifiez les options dans ce fichier au lieu de les passer à `lb config`. Lorsque vous utilisez `lb clean`, `auto/clean` va nettoyer les fichiers ainsi que tous les autres produits de construction. Et enfin, lorsque vous utilisez `lb build`, un journal de la construction est écrit par `auto/build` dans `build.log`.

341

Remarque: Un paramètre spécial `noauto` est utilisé ici pour éliminer un autre appel à `auto/config`, évitant ainsi une récursion infinie. Assurez-vous que vous ne l'avez pas accidentellement supprimé en modifiant le fichier. Aussi, prenez soin de vous assurer quand vous divisez la commande `lb config` sur plusieurs lignes pour une meilleure lisibilité, comme le montre l'exemple ci-dessus, que vous n'oubliez pas la barre oblique inverse (\) de sorte que chaque ligne continue à la suivante.

342

6.2 Cloner une configuration publiée via Git

343

Use the `lb config --config` option to clone a Git repository that contains a live system configuration. If you would like to base your configuration on one maintained by the Debian Live Project, look at ‹https://salsa.debian.org/live-team/› for the repository named `live-images` in the category `Subgroups and projects`. This repository contains the configurations for the live systems prebuilt images.

344

Par exemple, pour construire une image standard, utilisez le dépôt `live-images` comme suit:

345

$ mkdir live-images && cd live-images
$ lb config --config https://salsa.debian.org/live-team/live-images.git::debian
$ cd images/standard

346

Modifiez `auto/config` et toutes les autres choses dont vous avez besoin dans l'arbre `config` en fonction de vos besoins. Par exemple, les images precompilées non officielles qui contiennent des paquets non-free sont faites en ajoutant simplement `--archive-areas "main contrib non-free"`.

347

Vous pouvez éventuellement définir un raccourci dans votre configuration Git en ajoutant la ligne suivante à votre `${HOME}/.gitconfig`:

348

[url "https://salsa.debian.org/live-team/"]
insteadOf = lso:

349

This enables you to use `lso:` anywhere you need to specify the address of a `salsa.debian.org` git repository. If you also drop the optional `.git` suffix, starting a new image using this configuration is as easy as:

350

$ lb config --config lso:live-images::debian

351

Le clonage de la totalité du dépôt `live-images` copie les configurations utilisées pour plusieurs images. Si vous voulez construire une image différente lorsque vous avez terminé avec la première, changez de répertoire et, éventuellement, faites les modifications dont vous avez besoin.

352

Dans tous les cas, n'oubliez pas qu'il faut à chaque fois construire l'image en tant que superutilisateur: `lb build`