En aquest capítol s'explica com gestionar una configuració en viu des de la seva creació inicial, a través de revisions i versions successives de tant el programari live-build com de la imatge en viu en si mateixa.
Les configuracions en viu poques vegades són perfectes al primer intent. Passar opcions de lb config des de la línea d'ordres pot estar be per construir una imatge una vegada, però és més típic revisar aquestes opcions i construir de nou fins que se'n estigui satisfet. Per donar suport a aquests canvis, es poden utilitzar scripts auto que assegurin que la seva configuració es manté en un estat coherent.
L'ordre lb config emmagatzema les opcions que se li passen en els fitxers de config/*, juntament amb moltes altres opcions que estan establertes als valors per defecte. Si s'executa un cop més, lb config no restablirà cap de les opcios dependents basades en les opcions inicials. Així, per exemple, si s'executa lb config de nou amb un nou valor per --distribution, totes les opcions que en depenen que es van omplir per a la distribució per defecte ja no poden funcionar amb la nova. Tampoc són aquests fitxers destinats a ser llegits o editats. S'emmagatzemen els valors per més de cent opcions, i ningú serà capaç de veure aquestes opcions que s'han especificat realment. I, finalment, si s'executa lb config i a continuació s'actualitza live-build i canvia el nom d'una opció, config/* encara conté les variables de l'opció vella que ja no són vàlides.
Per totes aquestes raons, els scripts auto/* ens fan la vida més fàcil. Són simples embolcalls per les ordres lb config, lb build i lb clean dissenyats per ajudar a gestionar una configuració. Només cal crear un script auto/config que contingui totes les opcions que es desitgin per a lb config, i un auto/clean que elimini els fitxers que continguin diversos valors de variables de configuració, i el script auto/build guarda un build.log de cada construcció. Cada vegada que s'executi l'ordre lb corresponent, aquests fitxers seran executats automàticament. L'ús d'aquests scripts assegurarà que la configuració sigui més senzilla de llegir i que guardi una coherència interna d'una reversió a una altra. A més a més serà més fàcil identificar i solucionar les opcions que s'han de canviar al actualitzar d'una versió de live-build a la següent després de llegir la documentació.
Per a més comoditat, live-build ve amb uns scripts d'exemple per copiar i editar. Iniciar una nova configuració per defecte, i a continuació, copiar els exemples:
$ mkdir mylive && cd mylive && lb config
$ cp /usr/share/doc/live-build/examples/auto/* auto/
Editar auto/config, afegint les opcions com millor li sembli. Per exemple:
#!/bin/sh
lb config noauto \
--architectures i386 \
--linux-flavours 686-pae \
--binary-images hdd \
--mirror-bootstrap http://ftp.es.debian.org/debian/ \
--mirror-binary http://ftp.es.debian.org/debian/ \
"${@}"
Ara, cada vegada que s'utilitzi lb config, auto/config restablirà la configuració basada en aquestes opcions. Quan es vulguin fer canvis, editar les opcions d'aquest fitxer en lloc de passar-les a lb config. Quan s'utilitza lb clean, auto/clean netejarà els fitxers de config/* juntament amb els altres productes de construcció. I, finalment, quan s'utilitza lb build, es crea un log de la construcció mitjançant auto/build anomenat build.log.
Nota: Aquí s'utilitza un paràmetre especial noauto per suprimir un altra crida a auto/config, la qual cosa impedeix la recursivitat infinita. Assegurar-se de no eliminarlo accidentalment fent canvis. També, tenir cura de que quan es divideix l'ordre lb config a través de diverses línies per facilitar la lectura, com es mostra en l'exemple anterior, no s'oblidi la barra invertida (\) al final de cada línia que segueix a la següent.
Utilitzar l'opció lb config --config per clonar un repositori Git que contingui una configuració de Debian Live. Si es vol basar la configuració en un repositori mantingut pel projecte Debian Live, mirar els repositoris amb el prefix config- a ‹http://live.debian.net/gitweb›
Per exemple, per construir una imatge de rescat, utilitzar el repositori config-rescue de la manera següent:
$ mkdir live-rescue && cd live-rescue
$ lb config --config git://live.debian.net/git/config-rescue.git
Editar auto/config i qualsevol altra cosa necessària dins l'arbre config per satisfer les vostres necessitats.
Si es desitja, es pot definir una drecera en la configuració de Git, afegint el següent a ${HOME}/.gitconfig:
[url "git://live.debian.net/git/"]
insteadOf = ldn:
Això permet utilitzar ldn: en qualsevol lloc on cal especificar la direcció d'un repositori git. També es pot omitir el sufix .git, començar una nova imatge amb aquesta configuració és tan fàcil com:
$ lb config --config ldn:config-rescue