Ajouter un composant à un image live-cd

Il peut être utile d’installer par défaut un programme dans une image live-CD, afin que celui-ci soit disponible dès le démarrage.
Dans le cas qui m’occupait, il s’agissait d’ajouter le support de Brtly (une démon qui permet d’utiliser un afficheur braille comme interface pour lire le texte affiché à l’écran) à la distribution Linux Radio.

Voici ma méthode pour le faire.

1) Télécharger l’iso:
wget http://linuxradio.tools/LinuxRadio.Tools_V1502-64bits-20150123_1247.iso

2) Créer un tas de dossier temporaire pour mes opérations:
sudo mkdir /tmp/Iso_Aldo /tmp/Squashfs_Aldo /tmp/Iso_nouveau

3) Monter l’image live dans un des dossier temporaire:
sudo mount LinuxRadio.Tools_V1502-64bits-20150123_1247.iso /tmp/Iso_aldo

4) Extraire le filesystem du live cd dans un autre dossier temporaire:
cd /tmp/Squashfs_Aldo && unsquashfs /Iso_Aldo/live/filesystem.squashfs

5) Copier hosts et resolv.conf dans l’ex-squashfs pour lui permettre d’installer des paquets:
sudo cp /etc/hosts /etc/resolv.conf squashfs-root/etc/

6) chrooter dans l’ex-squashfs:
sudo chroot squashfs-root/

7)Depuis là, installer brltty
sudo apt-get update && sudo apt-get install brltty

Je ne sais pas si tu as besoin de plus que l’install en elle-même.

8) Remettre tout ça dans un fichier squashfs (s’armer de patience le temps que ça compresse)
sudo mksquashfs squashfs-root filesystem.squashfs -b 1024k -comp xz -Xbcj x86 -e boot

9) Copier le contenu de l’iso vers le troisième dossier temporaire:
sudo cp -aR /tmp/Iso_Aldo/* /tmp/Iso_nouveau/

10) Remplacer le Squashfs par sa nouvelle version dans la nouvelle image:
sudo cp /tmp/Squashfs_Aldo/filesystem.squashfs /tmp/Iso_nouveau/live/filesystem.squashfs

11) Faire un iso du tout:
sudo mkisofs -o ~/Iso-LinuxRadio-met-brltty.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V disks /tmp/Iso_nouveau

Et voilà, c’est dans la poche.