: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 en viu, 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'instal·len proporcionant respostes a les preguntes de debconf . 2~includes Includes Tot i que l'ideal seria un sistema en viu 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 en viu. 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 a 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 a omplir l'esquelet del directori de l'usuari (#{/etc/skel}#) utilitzat pel sistema en viu per a 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 a 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 a 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'instal·len després de la instal·lació del paquets de tal manera que es sobreescriuen els fitxers instal·lats pels paquets. 3~binary-local-includes Binary local includes Per a 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 a executar ordres durant l'etapa chroot, crear un script ganxo que contingui les ordres amb el sufix #{.hook.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 a utilitzar-los en la pròpia configuració. 3~boot-time-hooks Scripts ganxo durant l'arrencada Per a executar ordres durant l'arrencada, es pot proporcionar scripts ganxo per a 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 {Instal·lació de paquets modificats o de tercers}#installing-modified-or-third-party-packages. 3~ Binary local hooks Per a executar ordres durant l'etapa binary, crear un script ganxo que contingui les ordres amb un sufix #{.hook.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 a 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 instal·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}/.