Ceci est une ancienne révision du document !
Méthode de traduction du live-CD Hardy Xubuntu
Dans un but de transparence, voici ci-dessous la méthode que l'on va utiliser pour créer l'ISO Xubuntu Hardy francophone. Elle est issue de la mise en commun de l'expérience des "créateurs d'ISO" du projet. Merci notamment à PauseKawa 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 (ici).
Cette méthode est basée sur la méthode utilisée pour créer l'ISO Ubuntu francophone.
Page principale du projet : traduction_live_cd
Méthode
a mettre en forme d'apres les posts de PauseKawa (sur le forum)
Préparation
Installation des outils nécessaires
Dans un premier temps nous allons récupérer les outils nécessaires.
sudo apt-get install squashfs-tools mkisofs sudo modprobe squashfs
Puis créer le répertoire de travail et télécharger l'iso.
mkdir ~/live cd ~/live wget "http://cdimages.ubuntu.com/xubuntu/releases/8.04.1/release/xubuntu-8.04.1-desktop-i386.iso"
Récupération des informations du CD
Extraction du contenu du CD
mkdir mnt sudo mount -o loop xubuntu-8.04.1-desktop-i386.iso mnt mkdir extract-cd rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
Extraction du systéme
mkdir squashfs sudo mount -t squashfs -o loop mnt/casper/filesystem.squashfs squashfs mkdir edit sudo cp -a squashfs/* edit/
Le Chroot
Quelques réglages préalable puis passage en chroot pour modifier le systéme
sudo cp /etc/resolv.conf edit/etc/ sudo cp /etc/hosts edit/etc/ sudo mount --bind /dev/ edit/dev sudo chroot edit /bin/bash cp -a /etc/apt/sources.list /etc/apt/sources.sos echo "deb http://archive.ubuntu.com/ubuntu hardy universe" >> /etc/apt/sources.list echo "deb http://archive.ubuntu.com/ubuntu hardy-updates universe" >> /etc/apt/sources.list echo "deb http://archive.ubuntu.com/ubuntu hardy-security universe" >> /etc/apt/sources.list mount -t proc none /proc mount -t sysfs none /sys export HOME=/root
Mises à jour & divers
Mise a jour de la liste des paquets
apt-get update
Utilisation du clavier français
apt-get install console-data
choisir le clavier azerty fr
Suppréssion des paquets inutiles et installation de ceux en français
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) apt-get install language-pack-fr language-pack-fr-base aspell-fr gimp-help-fr ifrench-gut language-support-fr language-support-translations-fr language-support-writing-fr myspell-fr-gut thunderbird-locale-fr wfrench language-pack-gnome-fr language-pack-gnome-fr-base manpages-fr manpages-fr-dev manpages-fr-extra
Mise a jour générale pour avoir un cd a jour
apt-get upgrade
Suppression des .mo inutiles
apt-get install localepurge
Choisir fr, fr_FR, fr_fr@euro et fr_FR.UTF-8
Puis on purge et enleve le paquet
localepurge apt-get remove --purge localepurge
Suppression des docs GNOME et des pages de manuels inutiles
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
Traduction des lanceurs et du menu Xfce
Modification des noms en Anglais dans les .rc
sed -i "s/Name=Web browser/Name=Navigateur Internet/g" /etc/xdg/xfce4/panel/launcher-2.rc sed -i "s/Comment=Firefox web browser/Comment=Navigateur Firefox/g" /etc/xdg/xfce4/panel/launcher-2.rc sed -i "s/Name=Help/Name=Aide/g" /etc/xdg/xfce4/panel/launcher-3.rc sed -i "s/Comment=Xubuntu Desktop Guide/Comment=Guide de Xubuntu/g" /etc/xdg/xfce4/panel/launcher-3.rc sed -i "s/label=Places/label=Raccourcis/g" /etc/xdg/xfce4/panel/places-2.rc
Et une petite épuration au passage
mkdir /etc/xdg/xfce4/desktop/temp cp -av /etc/xdg/xfce4/desktop/menu.xml /etc/xdg/xfce4/desktop/temp/ cp -av /etc/xdg/xfce4/desktop/menu.xml.fr /etc/xdg/xfce4/desktop/temp/ cp -av /etc/xdg/xfce4/desktop/menudefs.hook /etc/xdg/xfce4/desktop/temp/ cp -av /etc/xdg/xfce4/desktop/xfce-registered-categories.xml /etc/xdg/xfce4/desktop/temp/ cp -av /etc/xdg/xfce4/desktop/xfce-registered-categories.xml.fr /etc/xdg/xfce4/desktop/temp/ rm /etc/xdg/xfce4/desktop/* cp -av /etc/xdg/xfce4/desktop/temp/. /etc/xdg/xfce4/desktop/ rm -r /etc/xdg/xfce4/desktop/temp
Ajout des traductions manquantes pour les .desktop
Rajout des variables [fr] non incluses a ce jour
echo "Name[fr]=Recherche de nouveaux pilotes" >> /etc/xdg/autostart/jockey-gtk.desktop echo "Comment[fr]=Notification de disponibilité de nouveaux pilotes pour le système" >> /etc/xdg/autostart/jockey-gtk.desktop echo "Name[fr]=Gestion du réseau" >> /etc/xdg/autostart/nm-applet.desktop echo "Comment[fr]=Applet de gestion du réseau" >> /etc/xdg/autostart/nm-applet.desktop echo "Name[fr]=Notification de mise à jour" >> /etc/xdg/autostart/update-notifier.desktop echo "Comment[fr]=Utilitaire de notification de mise à jour" >> /etc/xdg/autostart/update-notifier.desktop echo "Name[fr]=Permissions" >> /usr/share/applications/polkit-gnome-authorization.desktop echo "Comment[fr]=Configuration des permissions" >> /usr/share/applications/polkit-gnome-authorization.desktop echo "Name[fr]=éditeur de partition" >> /usr/share/applications/gparted.desktop echo "Comment[fr]=Gérer vos partitions" >> /usr/share/applications/gparted.desktop echo "Name[fr]=Pilotes Propriétaires" >> /usr/share/applications/jockey-gtk.desktop echo "Comment[fr]=Gestion des pilotes propriétaires et de tierce-partie" >> /usr/share/applications/jockey-gtk.desktop echo "Name[fr]=Editeur d'image GIMP" >> /usr/share/applications/gimp.desktop echo "Name[fr]=Traitement de texte AbiWord" >> /usr/share/applications/abiword.desktop echo "Comment[fr]=Traitement de texte AbiWord" >> /usr/share/applications/abiword.desktop
Correction d'un bug de xubuntu-default-settings
Profitons en pour corriger un bug au passage
sed -i 's/default.desktop/xfce4.desktop/' /etc/xdg/xubuntu/gdm/gdm.conf sed -i 's/gqview.desktop/ristretto.desktop/' /etc/xdg/xubuntu/applications/defaults.list
Modifier le nom d'utilisateur
En effet un Session CD c'est quand même mieux qu'un Live session user…
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
Locale pour Casper
Mise en place des locales Fr pour casper
export BASELANG="fr" export BASEUTF="fr_FR.UTF-8" sed -i "s/kbd=us/kbd=$BASELANG/g" \ /usr/share/initramfs-tools/scripts/casper-bottom/19keyboard sed -i "s/en_US.UTF-8/$BASEUTF/g" \ /usr/share/initramfs-tools/scripts/casper-bottom/14locales sed -i "s/en_US.UTF-8/$BASEUTF/g" \ /usr/share/initramfs-tools/scripts/casper-bottom/20xconfig sed -i "s/UTC/Europe\/Paris/" \ /usr/share/initramfs-tools/scripts/casper-bottom/02timezone
Marque-page Firefox
Firefox 3 étant en Français un marque page Fr n'est pas de trop
(cd /tmp && wget ftp://ftp.mozilla.org/pub/firefox/releases/3.0/linux-i686/fr/firefox-3.0.tar.bz2 \ && tar jxvf firefox-3.0.tar.bz2 && cp -a firefox/defaults/profile/bookmarks.html /etc/firefox-3.0/profile/bookmarks.html \ && rm -rf firefox*)
Dossiers utilisateur XDG
Xfdesktop ne supporte pas d'avoir le bureau dans $HOME/Bureau, il faut laisser $HOME/Desktop ! (Voir http://bugzilla.xfce.org/show_bug.cgi?id=4062 et http://forum.ubuntu-fr.org/viewtopic.php?id=227023) Pour le reste :
sed -i 's/Examples/Exemples/g' /usr/share/initramfs-tools/scripts/casper-bottom/10adduser mkdir /etc/skel/Documents /etc/skel/Vidéos /etc/skel/Musique /etc/skel/Images /etc/skel/Public /etc/skel/Modèles /etc/skel/Exemples mkdir -pv /etc/skel/.config echo "fr_FR" > /etc/skel/.config/user-dirs.locale cat << EOF > /etc/skel/.config/user-dirs.dirs # This file is written by xdg-user-dirs-update # If you want to change or add directories, just edit the line you're # interested in. All local changes will be retained on the next run # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an # absolute path. No other format is supported. # XDG_DESKTOP_DIR="$HOME/Desktop" XDG_DOWNLOAD_DIR="$HOME/Desktop" XDG_TEMPLATES_DIR="$HOME/Modèles" XDG_PUBLICSHARE_DIR="$HOME/Public" XDG_DOCUMENTS_DIR="$HOME/Documents" XDG_MUSIC_DIR="$HOME/Musique" XDG_PICTURES_DIR="$HOME/Images" XDG_VIDEOS_DIR="$HOME/Vidéos" EOF
Présentation de Xubuntu en fr
Le fichier html de présentation de Xubuntu n'est pas en Français. Il est donc nécessaire de remplacer le contenu de /usr/share/xubuntu-docs/about/xubuntu-index.html par:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Bienvenue dans Xubuntu 8.04 !</title> <link rel="stylesheet" href="/usr/share/xubuntu-docs/about/xubuntu.css" type="text/css" /> </head> <body> <div class="xubuntu-header"> <img src="/usr/share/xubuntu-docs/common/images/headerlogo.png"> </div> <div id="content" class="xubuntu-content"> <h1 class="title"><a id="art-about-ubuntu" name= "art-about-ubuntu"></a>Bienvenu dans Xubuntu 8.04!</h1> <p>Xubuntu est une distribution dérivée d'Ubuntu basée sur xfce4. </p> <p>Le projet Ubuntu est construit autour de l'idée contenue dans la <a href="http://www.ubuntu.com/ubuntu/philosophy">philosophie Ubuntu</a> : Les logiciels doivent être disponible sans frais de licence, les logiciels doivent pouvoir être utilisés dans la langue de l'utilisateur et les utilisateurs doivent avoir la liberté d'améliorer et de modifier le logiciels comme ils le souhaitent.</p> <h2 class="title" style="clear: both">Obtenir de l'aide pour Xubuntu:</h2> <p>Lire la <a href="file:///usr/share/xubuntu-docs/index.html">Documentation Xubuntu</a>. </p> <p>Vous pouvez obtenir de l'aide spécifique à Xubuntu sur le canal #xubuntu du réseau IRC Freenode, .</p> <p>Merci de reporter les bugs sur <a href="http://bugs.launchpad.net/ubuntu">Launchpad</a>.</p> <h2 class="title" style="clear: both">Aide générale pour Ubuntu :</h2> La plupart de l'aide pour Ubuntu s'applique également pour Ubuntu. Veuillez consulter le <a href= "http://help.ubuntu.com">site officiel de la documentation d'Ubuntu </a> et la <a href= "http://doc.ubuntu-fr.org/">documentation crée par la communauté </a>.</p> <p>Si vous préférez les contacts humains, vous pouvez utiliser les <a href= "http://lists.ubuntu.com">listes de diffusion par mail</a>, <a href="http://forum.ubuntu-fr.org/">le forum</a>, ou le chat avec la communauté sur le canal #ubuntu du réseau IRC Freenode.</p> <p>Vous pouvez obtenir également un <a href="http://www.ubuntu.com/support/supportoptions/paidsupport">support commercial</a> pour Ubuntu.</p> <h2 class="title" style="clear: both">Contribuer à Ubuntu :</h2> <p>La communauté Ubuntu est constituée de développeurs de logiciels, de rédacteurs de la documentation, de traducteurs, de graphistes et le plus important, de tous les utilisateurs d'Ubuntu dans leur vie quotidienne. Nous vous invitons à rejoindre cette communauté et de permettre qu'Ubuntu soit un système d'exploitation qui comble complètement vos attentes.</p> <p>Pour savoir comment participer, visitez <a href= "http://doc.ubuntu-fr.org/comment_participer">la page "Participation" de la communauté</a>!</p> </div> </body> </html>
Vérifications
Recherche des logins dont l'uid est supérieur ou égal à 1000
grep '^[^:]*:[^:]*:[1-9][0-9][0-9][0-9]:' /etc/passwd grep '^[^:]*:[^:]*:[12][0-9][0-9][0-9][0-9]:' /etc/passwd
Si les commandes précédentes renvoient quelquechose, il faut forcer l'uid à une valeur plus faible, sinon le live-cd ne démarrera pas :
usermod -u 500 $login
Sortie du chroot et nettoyage
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
Pour gfxboot
Modification de la langue par défaut de gfxboot
Petit bug d'affichage avec celui disponible sur le launchpad a l'heure actuelle. Nous utilisont donc celui des archives
echo "deb-src http://archive.ubuntu.com/ubuntu hardy main\ndeb-src http://archive.ubuntu.com/ubuntu hardy-updates main" | sudo tee -a /etc/apt/sources.list sudo apt-get update sudo apt-get install dpkg-dev apt-get source gfxboot-theme-ubuntu gfxboot cd gfxboot-theme-ubuntu*/ make DEFAULT_LANG=fr sudo cp -af boot/* ../extract-cd/isolinux/
Nettoyage de gfxboot
sudo su cd extract-cd/isolinux mkdir tmp mv boot* 16x16.fnt back.jpg f*.txt splash.* isolinux.* *.withgtk gfxboot.cfg langlist fr* en* ./tmp/ rm * mv ./tmp/* . rmdir tmp echo "fr" > langlist exit
Mise a jour de Wubi
Il est toujours bien d'avoir les derniers outils
cd extract-cd sudo rm -f wubi.exe && sudo wget http://downloads.sourceforge.net/wubi/Wubi-8.04.1.exe -O wubi.exe
Création du CD
Pour le manifest
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
Création du squashfs
sudo rm extract-cd/casper/filesystem.squashfs sudo mksquashfs edit extract-cd/casper/filesystem.squashfs -nolzma
Optionnel
Vous pouvais modifier README.diskdefines pour changer le nom du cd.
sudo vim extract-cd/README.diskdefines
Création du md5sum
sudo -s rm extract-cd/md5sum.txt (cd extract-cd && find . -type f -print0 | xargs -0 md5sum > md5sum.txt) exit
Création de l'image
Il est temps de créer l'iso
cd extract-cd sudo mkisofs -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../xubuntu-8.04.1-desktop-i386-fr.iso .
Vous pouvez maintenant tester votre Xubuntu Fr