Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
traduction_live_cd_tuto_ubuntu [Le 19/01/2009, 16:06]
Radline
traduction_live_cd_tuto_ubuntu [Le 07/04/2009, 03:43]
YannUbuntu redirection
Ligne 1: Ligne 1:
-{{tag>​liveCD live-CD ISO français traduction Ubuntu Intrepid LoCo Team groupetraducteur traducteur}} +~~REDIRECT>:traduction_live_cd_tuto_ubuntu_jaunty~~
----- +
- +
- +
-====== Méthode de traduction du live-CD Intrepid Ubuntu ====== +
- +
-Dans un but de transparence,​ voici ci-dessous la méthode que l'on va utiliser pour créer l'ISO Ubuntu Intrepid francophone. Elle est issue de la mise en commun de l'​expérience des "​créateurs d'​ISO"​ du projet et de la complète remise à plat par [[utilisateurs:​Kagou]] pour la sortie de la version 8.10. Merci notamment à [[http://​forum.ubuntu-fr.org/​profile.php?​id=40398| smo]] pour avoir rédigé la première version de cette méthode. +
- +
-**Si vous avez des conseils pour l'​améliorer**,​ n'​hésitez pas à laisser un message sur le forum du projet ([[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=207366 |ici]]).  +
- +
-Cette méthode servira de base pour les autres versions (kubuntu, xubuntu...) francophones. +
- +
- +
-Page principale du projet : [[traduction_live_cd]] +
- +
----- +
- +
-**Création du live-CD Ubuntu 8.10 français** +
- +
-<note important>​L'​ensemble de ces opérations a été testé et validé depuis une Ubuntu 8.04 mais doit être valable également depuis une Ubuntu 8.10</​note>​ +
- +
-===== Préparation ===== +
-==== Installation des outils nécessaires ==== +
-Le paquet squashfs est nécessaire afin de pouvoir décompresser le système de fichier embarqué sur le live-cd. Le paquet mkisofs servira à la génération de l'iso finale. +
-<​code>​sudo apt-get install squashfs-tools mkisofs +
-</​code>​ +
- +
-Placer l'iso de la Ubuntu 8.10 version desktop dans le répertoire personnel +
-<​code>​cd ​~ +
-wget http://​cdimage.ubuntu.com/​daily-live/​current/​intrepid-desktop-i386.iso</​code> +
-Nota ce lien est à adapter bien évidemment afin de récupérer l'​image officielle. +
- +
-Création d'un répertoire de travail : +
-<​code>​mkdir ​~/live +
-cd ~/​live</​code>​ +
- +
-==== Utilisation de l'​image iso récupérée ==== +
-Nous allons monter l'​image iso, afin de pouvoir en parcourir son contenu, et nous faisons une copie locale des fichiers de l'iso afin de pouvoir les modifier. +
- +
-Extraction du contenu de l'iso : +
-<​code>​mkdir mnt +
-sudo mount -o loop ~/​intrepid-desktop-i386.iso mnt +
-mkdir extract-cd +
-rsync --exclude=/​casper/​filesystem.squashfs -a mnt/ extract-cd</​code>​ +
-Nota : nom de l'iso à adapter éventuellement +
- +
-Dans la foulée nous décompressons le système de fichier embarqué dans l'iso afin de pouvoir y faire des modifications. Ce système sera celui sous lequel l'​utilisateur se retrouve lorsqu'​il arrive sur la session de test du live-cd. Donc c'est dans ce dernier qu'il faut agir pour ajouter des paquets, changer le fond d'​écran etc. +
- +
-Extraction du système : +
-<​code>​mkdir edit +
-sudo unsquashfs -d edit/. -f mnt/​casper/​filesystem.squashfs</​code>​ +
- +
- +
-Pour finir, on démonte l'iso : +
-<​code>​sudo umount mnt</​code>​ +
- +
-===== Le Chroot ===== +
-Nous allons entrer dans le système de fichier contenu dans le live-cd (et que nous avons décompressé). Mais plus encore nous allons le lancer, faire comme si le live-cd était lancé et nous y connecter. C'est ce à quoi sert un chroot. Nous allons donc nous retrouver dans l'​environnement du live-cd et chacune de nos actions va avoir des répercutions sur l'iso que nous génèrerons au final. Nous allons également monter quelques répertoires afin de nous donner accès au net depuis notre chroot. +
- +
-Quelques réglages préalables puis passage en chroot pour personnaliser le système : +
-<​code>​sudo cp /​etc/​resolv.conf edit/etc/ +
-sudo cp /etc/hosts edit/etc/ +
-sudo mount --bind /dev/ edit/dev +
-sudo chroot edit /bin/bash +
-mount -t proc none /proc +
-mount -t sysfs none /sys +
-export HOME=/​root</​code>​ +
- +
-==== Mises à jour des dépôts ==== +
-Nous sommes dans le chroot. La première étape est de sauvegarder le fichier des dépôts du livecd et d'​ajouter les dépôts universe afin de pouvoir récupérer certains paquets (nous pourrions également ajouter les dépôts multiverse). Une fois ces modifications faites, on met à jour la liste des paquets disponibles (apt-get update). +
- +
-Modification des dépôts : +
-<​code>​cp -a /​etc/​apt/​sources.list /​etc/​apt/​sources.sos +
-echo "deb http://​archive.ubuntu.com/​ubuntu intrepid universe"​ >> /​etc/​apt/​sources.list +
-echo "deb http://​archive.ubuntu.com/​ubuntu intrepid-updates universe"​ >> /​etc/​apt/​sources.list +
-echo "deb http://​archive.ubuntu.com/​ubuntu intrepid-security universe"​ >> /​etc/​apt/​sources.list +
-apt-get update</​code>​ +
- +
-==== Suppression des paquets inutiles ==== +
-Afin de libérer de la place on supprime les paquets linguistiques qui sont déjà installés. +
- +
-<​code>​apt-get remove --purge $(dpkg -l | awk '​{print $2}' | egrep "​language-pack|aspell-|gimp-help-|language-support-|myspell-|language-pack-gnome-|gimp-help-|thunderbird-locale-"​ | xargs)</​code>​ +
- +
-==== Installation des paquets français ==== +
-Maintenant on ajoute les paquets linguistiques pour le français : +
-<​code>​apt-get install language-pack-fr language-pack-fr-base hunspell-fr gimp-help-fr language-support-fr language-support-translations-fr language-support-writing-fr thunderbird-locale-fr language-pack-gnome-fr language-pack-gnome-fr-base manpages-fr manpages-fr-dev openoffice.org-hyphenation openoffice.org-help-fr openoffice.org-l10n-fr wfrench gimp-help-common gimp-help-en hunspell</​code>​ +
- +
-==== Suppression des .mo inutiles ==== +
-On continue notre nettoyage en installant localepurge qui va permettre de supprimer toutes les locales installées pour ne garder au final que celle pour le français. +
- +
-<​code>​apt-get install localepurge</​code>​ +
- +
-Ne sélectionner que fr, fr_FR, fr_fr@euro et fr_FR.UTF-8 +
- +
-On lance la purge et on supprime le paquet : +
-<​code>​localepurge +
-apt-get remove --purge localepurge</​code>​ +
- +
-==== Suppression des docs GNOME et des pages de manuels inutiles ===== +
-Toujours dans notre recherche de place on supprime les fichiers de documentations et de manuel non français. +
- +
-<​code>​find /​usr/​share/​gnome/​help/​ -depth -mindepth 2 -maxdepth 2 -type d ! \( -name "​fr*"​ -o -name "​C"​ -o -name "​en*"​ -o -name "​us"​ \) | xargs rm -rf +
-find /​usr/​share/​man/​ -depth -maxdepth 1 -mindepth 1 -type d ! \( -name "​fr*"​ -o -name "​man?"​ \) | xargs rm -rf</​code>​ +
- +
-==== Modifier le nom d'​utilisateur ==== +
-Lorsque vous être sur le livecd, vous êtes connecté comme étant //Live session user//. Nous remplaceons ça par //Session CD// :-)  +
-<​code>​sed -i "​s/​Live session user/​Session CD/g" /​etc/​casper.conf +
-sed -i "​s/​Live session user/​Session CD/g" /​usr/​share/​initramfs-tools/​scripts/​casper</​code>​ +
-Nota : la re-génération de initrd est nécessaire afin que soit prise en compte cette modification. +
-  +
-==== Marque-page Firefox ==== +
-Firefox 3 a ses menus en français, mais les marque-pages sont ceux de la version anglaise. Nous allons donc récupérer une archive française de firefox et en extraire les marque-pages en remplacement de ceux existant. +
-<​code>​(cd /tmp && wget ftp://​ftp.mozilla.org/​pub/​firefox/​releases/​3.0.3/​linux-i686/​fr/​firefox-3.0.3.tar.bz2 \ +
-&& tar jxvf firefox-3.0.3.tar.bz2 && cp -a firefox/​defaults/​profile/​bookmarks.html /​etc/​firefox-3.0/​profile/​bookmarks.html \ +
-&& rm -rf firefox*)</​code>​ +
- +
-==== Les exemples en français ==== +
-Nous remplaçons ici les exemples du live-cd officiel par ceux traduits par la communauté ubuntu-fr : +
-<​code>​cd /​usr/​share/​example-content +
-rm * +
-wget http://​XXX.XXXXX.XXX/​Exemples2.tar.bz2 +
-tar xvf Exemples2.tar.bz2 +
-rm Exemples2.tar.bz2 +
-cd</​code>​ +
-Nota : cette procédure est donnée à titre d'​exemple ;-) +
- +
-==== Autres... ==== +
-On corrige le nom du dossier //example// en //exemple// : +
-<​code>​mv /​etc/​skel/​Examples /​etc/​skel/​Exemples +
-sed -i '​s/​Desktop/​Bureau/​g;​s/​Examples/​Exemples/​g'​ /​usr/​share/​initramfs-tools/​scripts/​casper-bottom/​10adduser</​code>​ +
- +
-==== Initrd ==== +
-Là nous mettons à jour le initrd afin de prendre en compte les changements fait plus haut dès qu'on touche à casper : +
-<​code>​mkinitramfs -o /initrd.gz 2.6.27-7-generic</​code>​ +
-Nota : il faudra (voir plus loin) faire prendre en compte ce nouvel initrd par le noyau du live-cd. Sinon cela ne sert à rien ;-) +
- +
-==== Vérifications ==== +
-Recherche des logins dont l'uid est supérieur ou égal à 1000 +
- +
-<​code>​grep '​^[^:​]*:​[^:​]*:​[1-9][0-9][0-9][0-9]:'​ /​etc/​passwd +
-grep '​^[^:​]*:​[^:​]*:​[12][0-9][0-9][0-9][0-9]:'​ /​etc/​passwd</​code>​ +
- +
-Si les commandes précédentes renvoient quelque chose, il faut forcer l'uid à une valeur plus faible, sinon le live-cd ne démarrera pas : +
- +
-<​code>​usermod -u 500 $login</​code>​ +
- +
-==== Sortie du chroot et nettoyage ==== +
-On a fini les modifications donc on en sort proprement en enlevant nos traces, qui sinon se retrouveront sur le système final. Comme par exemple les paquets téléchargés qui vont gonfler inutilement la taille de notre système au final. +
-<​code>​apt-get clean +
-rm -rf /tmp/* +
-rm /​etc/​resolv.conf +
-rm /​etc/​hosts +
-umount /proc +
-umount /sys +
-rm /​etc/​apt/​sources.list +
-mv /​etc/​apt/​sources.sos /​etc/​apt/​sources.list +
-exit +
-sudo umount edit/​dev</​code>​ +
- +
-==== On récupère le initrd.gz ==== +
-On récupère le initrd.gz précédemment compilé et on le place au bon emplacement afin qu'il soit utilisé par le noyau du live-cd +
-<​code>​sudo mv edit/​initrd.gz extract-cd/​casper/</​code>​ +
- +
-==== Pour gfxboot ==== +
-Ici nous allons modifier le tout premier écran qui apparait lorsque vous démarrez sur le live-cd. Nous modifions le fichier langlist afin qu'il ne propose plus le choix de toutes les langues et que celle choisi automatiquement soir le français. De plus nous créons le fichier //lang// qui fait en sorte que la langue d'​affichage des menus soit le français.  +
-<​code>​sudo su +
-cd extract-cd/​isolinux +
-echo "​fr"​ > langlist +
-echo "​fr"​ > lang +
-exit</​code>​ +
-<note important>​Le bug #291492 empêche d'​avoir les menus d'​aides en français</​note>​ +
- +
-===== Création du CD ===== +
-==== Pour le manifest ==== +
-<​code>​chmod +w extract-cd/​casper/​filesystem.manifest +
-sudo chroot edit dpkg-query -W --showformat='​${Package} ${Version}\n'​ > extract-cd/​casper/​filesystem.manifest +
-sudo cp extract-cd/​casper/​filesystem.manifest extract-cd/​casper/​filesystem.manifest-desktop +
-sudo sed -i '/​ubiquity/​d'​ extract-cd/​casper/​filesystem.manifest-desktop</​code>​ +
- +
-==== Création du squashfs ==== +
-Nous allons maintenant créer l'​image de notre système de fichier que nous avons personnalisé : +
-<​code>​sudo rm extract-cd/​casper/​filesystem.squashfs +
-sudo mksquashfs edit extract-cd/​casper/​filesystem.squashfs -nolzma</​code>​ +
-Nota : la première commande peut retourner une erreur (aucun fichier). C'est juste pour s'​assurer qu'on est prêt pour la deuxième commande. +
- +
-==== Création du md5sum ==== +
-Ici on reconstruit le fichier md5sum.txt qui sert lors de l'​auto-vérification du cd depuis le menu de boot. +
-<​code>​sudo -s +
-rm extract-cd/​md5sum.txt +
-(cd extract-cd && find . -type f -not -name md5sum.txt -not -path '​*/​isolinux/​*'​ -print0 | xargs -0 -- md5sum > md5sum.txt ) +
-exit</​code>​ +
- +
-==== Création de l'​image iso finale ==== +
-Il est temps de créer notre iso : +
-<​code>​cd extract-cd +
-sudo mkisofs -r -V "​Intrepid 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-8.10-desktop-i386-fr.iso .</​code>​ +
- +
-Vous pouvez maintenant tester votre image Ubuntu-Fr+
  • traduction_live_cd_tuto_ubuntu.txt
  • Dernière modification: Le 07/04/2009, 03:43
  • par YannUbuntu