Loliwin est une compilation de logiciels libres pour MS-Windows. Vous trouverez ici la marche à suivre pour réaliser le disque.
Pour plus d'information, vous pouvez vous rendre sur le site officiel de Loliwin.
La création de l'autorun.ini est très simple. elle consiste juste à modifier l'icône du disque et à lancer le fichier index.html à travers le firefox portable contenu dans le dvd.
Voici le contenu :
[autorun] open=FirefoxPortable\FirefoxPortable.exe loliwin\index.html icon=loliwin.ico label=LoLiWin
La version de firefox portable que j'ai choisi est celle du site portableapps.com. L'avantage de cette version, est qu'elle est capable de se lancer depuis un support en lecture seul.
Pour cela il faut faire une copie du fichier FirefoxPortable.ini qui se trouve dans Other/Source/ directement à la racine. Il faut ensuite modifier la valeur “RunLocally” pour la mettre sur “true”.
Loliwin est rédigé en html.
Pour modifier ce disque, nous allons avoir besoin de dossiers de travail. Dans le home, nous allons créer un dossier sources dans lequel nous créerons deux sous dossiers iso et squashfs. En suite nous nous placerons dans le dossier sources et toutes les opérations seront réalisées à partir de là.
cd /home/user/ mkdir sources cd sources mkdir iso squashfs
Dans un premier temps, il faut télécharger le live sur le site ubuntu-fr. On suppose qu'il sera téléchargé dans le dossier sources. Ensuite il faut le monter :
mount ubuntu-xxx.iso /mnt/iso/ -o loop
On va copier l'ensemble des fichiers contenu dans l'image dans notre dossier iso puis on démonte l'image.
cp -av /mnt/iso/. iso/ umount /mnt/iso
Mise à jour du live et ajout/suppression de programe
On commence par monter le fichier squashfs:
mount iso/casper/filesystem.squashfs /mnt/iso/ -o loop
On copie alors le contenu de cette image dans notre dossier squashfs puis on la démonte:
cp /mnt/iso/. squashfs/ -av umount /mnt/iso/
On va maintenant “chrooter” le dossier squashfs pour pouvoir faire nos modifications. On va donc préparer le chroot:
mount --bind /proc squashfs/proc mount --bind /sys squashfs/sys
Pour accéder au réseau de l'hôte on va copier des fichiers :
cp /etc/resolv.conf squashfs/etc/ cp /etc/hosts squashfs/etc/
Et on rentre dans le chroot:
chroot squashfs/
Lors des mises à jours, une erreur est renvoyé. Le système ne peut créer un fichier temporaire à cause du manque du dossier /root/tmp/. Pour résoudre ce problème il suffit de le créer :
mkdir /root/tmp
Ajout du média Medibuntu dans le sources.list:
deb http://fr.packages.medibuntu.org/ karmic free non-free
Ensuite il faut récupérer la clé du dépot. Pour ca taper dans une console :
wget -q http://fr.packages.medibuntu.org/medibuntu-key.gpg -O- | sudo apt-key add -
On met à jour le système:
apt-get update && apt-get dist-upgrade
C'est à ce moment qu'il faut ajouter ou supprimer des programmes :
apt-get install mon_programme apt-get remove --purge mon_programme
Paquet à supprimer :
Paquet à ajouter :
Depuis Medibuntu :
On fait un peu de ménage:
rm /etc/resolv.conf /etc/hosts rm /root/tmp/ -rf apt-get clean
Et on sort proprement du chroot:
umount -lf /proc/ umount -lf /sys/ exit
On peut ajouter des fichiers dans le dossier de l'utilisateur en faisant une copie de ces fichiers dans le dossier squashfs/etc/skel/
vérifier la présence du paquet squashfs-tools
On supprime l'ancien fichier squashfs:
rm iso/casper/filesystem.squashfs
On commence par régénérer le fichier manifest pour qu'il prenne en compte les modifications dans les paquets:
chmod a+w iso/casper/filesystem.manifest chroot squashfs/ dpkg-query -W --showformat='${Package} ${Version}\n' > iso/casper/filesystem.manifest chmod go-w iso/casper/filesystem.manifest chmod a+w iso/casper/filesystem.manifest-desktop chroot squashfs/ dpkg-query -W --showformat='${Package} ${Version}\n' > iso/casper/filesystem.manifest-desktop chmod go-w iso/casper/filesystem.manifest-desktop
Maintenant on va recompresser le squashfs:
cd squashfs mksquashfs . ../iso/casper/filesystem.squashfs -info
On a changé de version de noyal lors de la mise à jour. Il faut donc copier les fichier initrd.img-xxx et vmlinux-xxx (ou xxx représente la version du noyal installé) pour remplacer les anciens fichiers initrd.gz et vmlinuz:
cp squashfs/boot/initrd.img-2.6.28-13-generic iso/casper/initrd.gz cp squashfs/boot/vmlinuz-2.6.28-13-generic iso/casper/vmlinuz
On peut supprimer le fichier md5sum.txt qui ne correspond plus maintenant :
rm iso/md5sum.txt
Pour forcer le francais au démarrage, il faut créer un fichier texte lang dans le dossier iso/isolinux/ qui ne contient que fr
Il faut maintenant
dans le dossier “/home/user/sources/iso/”.
Puis on créé le nouveau fichier iso:
mkisofs -r -V "Nom du volume" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o custom-live-cd-i386.iso iso
Pour le nom du fichier iso, on respectera la syntaxe suivante :
Loliwin_vXX.XX_ix86.iso
Pour personnaliser son livecd, il faut déjà avoir créé une iso. Il faut la lancer dans une machine (virtuelle ou non). Une fois sur le bureau, on va faire toutes les modifications :
Depuis la Ubuntu 10.04, les boutons de fenetres (fermer réduire et minimiser) sont passés à gauche. Pour les remettre dans la position “traditionnelle”, il y a une petite modification à faire.
Quand vous vous trouvez dans votre live et que vous faites vos modifications (marques pages firefox, papier peint, etc.) Il faut taper dans une console :
gconftool-2 --set /apps/metacity/general/button_layout --type string "menu:minimize,maximize,close"
Vous verrez alors vos boutons reprendre leur place habituelle.
Une fois les modifications terminées, il faut récupérer le dossier /home/ubuntu/ pour faire une copie de son contenu dans squashfs/etc/skel/
Nous n'avons plus qu'à recommencer la création de l'iso à partir de l'étape : Construction du fichier squashfs
Documentations qui m'ont aidées à réaliser la mienne : Documentation d'ubuntu-fr Documentation de David Hautbois