:B~ Personalització dels continguts

1~customizing-contents Personalització dels continguts

Aquest capítol tracta d'afinar la personalització dels continguts del
sistema en viu més enllà de simplement triar els paquets que es desitja
incloure. Els «includes» permeten afegir o reemplaçar fitxers arbitraris en
la imatge Debian Live, els scripts ganxo (hooks) permeten executar ordres
arbitràries en diferents etapes de la construcció i en el moment d'arrencar,
i la preconfiguració (preseeding) permet configurar els paquets quan
s'instaŀlen proporcionant respostes a les preguntes de debconf .

2~includes Includes

Tot i que l'ideal seria un sistema Debian Live que inclogués només fitxers
proporcionats per paquets Debian sense modificació, de vegades és convenient
proporcionar o modificar part del contingut a través de fitxers. Amb els
includes, és possible afegir (o substituir) fitxers arbitraris en la imatge
Debian Live. live-build ofereix dos mecanismes per al seu ús:

_* Chroot local includes: Aquests permeten afegir o substituir fitxers
dintre de chroot/Live en el sistema de fitxers. Consultar {Live/chroot local
includes}#live-chroot-local-includes per a més informació.

_* Binary local includes: Aquests permeten afegir o substituir fitxers dins
la imatge binària. Consultar {Binary local includes}#binary-local-includes
per a més informació.

Consultar {Termes}#terms per a més informació sobre la distinció entre les
imatges "Live" and "binary".

3~live-chroot-local-includes Live/chroot local includes

Es poden utilitzar els chroot local includes per afegir o reemplaçar fitxers
en el sistema de fitxers chroot/Live perquè puguin ser utilitzats en el
sistema en viu. Un ús típic és per omplir l'esquelet del directori de
l'usuari (#{/etc/skel}#) utilitzat pel sistema en viu per crear el directori
home de l'usuari en viu. Un altre és el de subministrar fitxers de
configuració que poden ser simplement afegits o reemplaçats en la imatge
sense processar; veure{Live/chroot local hooks}#live-chroot-local-hooks si
es necessita processar-los.

Per incloure fitxers, només s'han d'afegir al directori
#{config/includes.chroot}#. Aquest directori es correspon amb el directori
arrel #{/}# del sistema en viu. Per exemple, per afegir un fitxer
#{/var/www/index.html}# en el sistema en viu, fer:

code{

 $ mkdir -p config/includes.chroot/var/www
 $ cp /path/to/my/index.html config/includes.chroot/var/www

}code

La configuració tindrà llavors l'estructura següent:

code{

 -- config
    [...]
     |-- includes.chroot
     |   `-- var
     |       `-- www
     |           `-- index.html
    [...]

}code

Els chroot local includes s'instaŀlen després de la instaŀlació del paquets
de tal manera que es sobreescriuen els fitxers instaŀlats pels paquets.

3~binary-local-includes Binary local includes

Per incloure material com documentació o vídeos en el sistema de fitxers del
medi en viu de manera que sigui accessible immediatament després de la
inserció del medi sense haver de arrencar el sistema en viu, es pot
utilitzar els binary local includes. Això funciona de manera similar als
chroot local includes. Per exemple, si els fitxers #{~/video_demo.*}# són
vídeos de demostració del sistema en viu descrits i lligats per una pàgina
d'índex HTML. Només cal copiar el material a #{config/includes.binary/}# de
la següent manera:

code{

 $ cp ~/video_demo.* config/includes.binary/

}code

Aquests fitxers apareixeran ara en el directori arrel del medi en viu.

2~hooks Scripts ganxo (Hooks)

Els scripts ganxo permeten executar ordres en les etapes de la construcció
chroot i binary per tal de personalitzar la imatge.

3~live-chroot-local-hooks Live/chroot local hooks

Per executar ordres durant l'etapa chroot, crear un script ganxo que
contingui les ordres amb el sufix #{.chroot}# i afegir-lo al directori
#{config/hooks/}#. El ganxo s'executarà en el chroot després que la resta de
la configuració del chroot s'hagi aplicat, assegurar-se que la configuració
inclou tots els paquets i els fitxers que el ganxo necessita per
funcionar. Veure els scripts chroot d'exemple per a diverses tasques comunes
de personalització que es poden trovar a
#{/usr/share/doc/live-build/examples/hooks}# que es poden copiar o fer un
enllaç simbòlic per utilitzar-los en la pròpia configuració.

3~boot-time-hooks Scripts ganxo durant l'arrencada

Per executar ordres durant l'arrencada, es pot proporcionar scripts ganxo
per live-config com s'explica a la secció "Personalització" de la seva
pàgina del manual. Es poden afegir els ganxos de live-config a
#{/lib/live/config/}#, tenint en compte la seqüència dels números. A
continuació, afegir el script ganxo propi amb un número de seqüència
apropiat com a prefix, ja sigui com a un chroot local include a
#{config/includes.chroot/lib/live/config/}#, o com un paquet personalitzat
com es va discutir a {Instaŀlació de paquets modificats o de
tercers}#installing-modified-or-third-party-packages.

3~ Binary local hooks

Per executar ordres durant l'etapa binary, crear un script ganxo que
contingui les ordres amb un sufix #{.binary}# i afegir-lo al directori
#{config/hooks/}#. El ganxo s'executarà després que s'executin totes les
ordres de l'etapa binary però abans dels binary_checksums, la darrera ordre
de l'etapa binary. Les ordres del ganxo no s'executen al chroot, per tant
tenir cura de no modificar cap fitxer de fora del arbre de construcció, o es
pot fer malbé el sistema de construcció! Veure els scripts ganxo binary
d'exemple per a diverses tasques comunes de personalització a
#{/usr/share/doc/live-build/examples/hooks}# que es poden copiar o fer un
enllaç simbòlic per utilitzar-los en la pròpia configuració.

2~ Preconfiguració de les preguntes de Debconf

Els fitxers del directory #{config/preseed/}# amb el sufix #{.cfg}# seguits
del sufix de l'etapa (#{.chroot}# o #{.binary}#) son considerats fitxers de
preconfiguració de debconf i són instaŀlats per live-build utilitzant
#{debconf-set-selections}# durant l'etapa corresponent.

Per a més informació sobre debconf, veure #{debconf(7)}# del paquet
/{debconf}/.
