Ceci est une ancienne révision du document !
Ubuntu MATE 18.04 - beta
Premiers tests
- Pré-recquis : sudo apt-get install squashfs-tools schroot genisoimage
1. Extraction
mkdir ~/livecd && cd ~/livecd && mkdir iso squashfs && sudo mkdir /mnt/isolive
dossier iso pour l'iso, squashfs = système chrooté
sudo mount -o loop ubuntu-mate-18.04-beta2-desktop-amd64.iso /mnt/isolive rsync -arz /mnt/isolive/. iso/ sudo umount /mnt/isolive
Copie du squashfs
sudo unsquashfs ./iso/casper/filesystem.squashfs
2. Chrootage
sudo mount --bind /proc squashfs-root/proc sudo mount --bind /sys squashfs-root/sys sudo mount --bind /dev squashfs-root/dev sudo mount --bind none squashfs-root/dev/pts sudo cp /etc/resolv.conf squashfs-root/etc/resolv.conf sudo chroot squashfs-root apt update apt upgrade
3. Personnalisation
Récupération du dépot git et personnalisation selon les outils voulus
Ex pour fond d'ecran :
dconf write /org/mate/desktop/background/picture-filename '/usr/share/backgrounds/backgrounds-cemea/default.jpg'
(Meme : dconf list / dconf read / dconf write)
Créer un dossier /etc/dconf/profile/user contenant
user-db:user system-db:site
et un /etc/dconf/db/site.d/00_bg_settings
[org/mate/desktop/background] picture-filename='/usr/share/backgrounds/backgrounds-cemea/default.jpg'
Puis dconf update
Personnalisation fine (dossier perso…) : Copie des images de fonds d'écran dans un dossier du chroot ~/live/squashfs-root/usr/share/backgrounds/backgrounds-cemea/
4. Nettoyage et sortie
rm -r /var/cache/apt/archives/ echo ""> /etc/resolv.conf exit sudo umount squashfs-root/dev/pts squashfs-root/dev squashfs-root/proc squashfs-root/sys
Personnalisation avant reconstruction de l'ISO
Editer Extraire l'archive cpio “bootlogo” dans un dossier.
iso/isolinux/isolinux.cfg et remplacer : ui gfxboot bootlogo par ui vesamenu.c32
- Remplacer le fond d'ecran
splash.pcxpar une autre image PCX indexée à 255 couleurs. - modifier la liste des langues affichées dans le fichier
langlist - choisir le français par défaut avec un fichier
langcontenantfr(sans retour à la ligne final)
echo "fr" | tee bootlogo/lang
- Reconstruire l'archive avec :
ls bootlogo/. | cpio -o> bootlogo
et replacer le nouveau fichier bootlogo dans le dossier ~livecd/iso/isolinux/ Editer iso/isolinux/txt.cfg et remplacer le texte du menu en français par ce qu'on veut.
Optionnel pour forcer le fr coûte que coûte : Ajouter locale=fr_FR.UTF-8 keyboard-configuration/layoutcode=fr avant le '—' final sur chaque ligne.
Ajouter une image de fond en .PNG (640×400) dans iso/isolinux/ et modifier la valeur du background dans iso/isolinux/stdmenu.cfg. On peut aussi modifier les couleurs des textes dans ce fichier.
Changer le nom de la distribution en modifiant A vérifier
squashfs-root/etc/casper.conf les valeurs des champs USERNAME, USERFULLNAME et FLAVOUR
5. Reconstruction de l'ISO
sudo chmod 744 iso/casper/filesystem.manifest
sudo chroot squashfs-root/ dpkg-query -W --showformat='${Package} ${Version}\n'> iso/casper/filesystem.manifest
sudo rm iso/casper/filesystem.squashfs
sudo mksquashfs squashfs-root iso/casper/filesystem.squashfs -comp xz
chmod 744 iso/casper/filesystem.size
printf $(du -s --block-size=1 iso/casper/filesystem.squashfs)> iso/casper/filesystem.size
cd iso
chmod 744 md5sum.txt
find . -path ./isolinux -prune -o -type f -not -name md5sum.txt -print0 | xargs -0 md5sum> md5sum.txt
cd ..
Construction de l'ISO - à personnaliser
sudo genisoimage -D -r -V "Ubuntu-MATE-CEMEA" -A "Ubuntu installation" -publisher "support@cemea.asso.fr" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ubuntu-cemea.iso iso/.
On fait les tests avec Virtualbox par exemple en activant nomodeset (F6) ou on laisse le boot par défaut pour avoir un mode vesa compatible.
Si ça ne va pas, on reprend à l'étape du “2. chrootage”