Personnalisation du DVD¶
Modifier le fond d'écran du bootloader (CD)¶
Pour la version fondée sur ubuntu 10.04 il faut supprimer tous les fichiers .pcx du Live pour que seul le splash.pcx soit pris en compte.
convert image/isolinux/splash.png -colors 250 image/isolinux/splash.pcx
Ensuite, pour éviter l'affichage du clavier/souris qui propose d'ensuite afficher le menu de boot:
- gfxboot.cfg
.../... hidden-timeout=0 .../...
Modifier le fond d'écran de la session gnome (live):¶
Pour faire vite et ne pas perdre de temps, je modifie le fichier chroot/usr/share/backgrounds/warty-final-ubuntu.png tout simplement. Pour avoir des fonds d'écrans aléatoires c'est le script /usr/local/bin/random_wallpaper.py qui s'en charge, il va piocher dans la liste des fonds d'écrans qui sont choisis par l'utilisateur.
Modification du usplash¶
Pour avoir le usplash abuledu il suffit d'installer dans le chroot le paquet usplash-theme-abuledu_0.23_i386.deb, ensuite modifier sa priorité d'installation
- jaunty
update-alternatives --install /usr/lib/usplash/usplash-artwork.so usplash-artwork.so /usr/lib/usplash/usplash-theme-abuledu.so 20 update-initramfs -u
- lucid
update-alternatives --install /lib/plymouth/themes/default.plymouth default.plymouth /lib/plymouth/themes/abuledu/abuledu.plymouth 150 update-initramfs -u
Ensuite il faut copier le fichier initrd dans le bon endroit du cd image
cp chroot/boot/initrd.img-2.6.28-18-generic image/casper/initrd.gz
Définition de la taille de la partition minimale d'ubuntu (partitionnement assisté)¶
- Fichier chroot/lib/partman/automatically_partition/10resize_use_free/do_option
# Limit to sizes that will allow enough room for the installation. # ryxeo taille 8,5 Go semble etre un minimal correct maxsize="$(expr "$maxsize" - \( 8 \* 1024 + 510 \) \* 1024 \* 1024)" if ! longint_le $minsize $maxsize; then
Modification du slideshow affiché durant l'installation¶
- Fichiers chroot/usr/share/ubiquity-slideshow/slides/loc.fr
Ajout de ryxeo-stuff a la fin de la procédure d'installation¶
- Fichier /usr/lib/ubiquity/apt-setup/finish-install
Paquet spécial ubiquity¶
Modification du fichier de traduction fr.po pour améliorer l'assistant d'installation ubiquity (abuledu/nouva a la place de ubuntu, et conseil pour ne pas importer de comptes utilisateurs)
- debian/po/fr.po (messages)
- d-i/source/migration-assistant/ma-search-users.c (modif le retour des comptes utilisateurs windows pour que ça ne retourne rien)
- desktop/ubiquity-gtkui.desktop ou desktop/ubiquity-gtkui.desktop.in pour remplacer RELEASE par "AbulEdu 11.04"
Modification du lanceur de ubiquity: wrapper personnalisé¶
Modification de chroot/usr/share/applications/ubiquity-gtkui.desktop:
Exec=/bin/bash /usr/local/bin/install_wrapper.sh
install_wrapper.sh¶
#!/bin/bash #reset sources.list sudo rm -f /etc/apt/sources.list cat > /tmp/sources.list.new <<EOF deb file:/mnt ./ EOF sudo cp /tmp/sources.list.new /etc/apt/sources.list #es-ce qu'un serveur abuledu est joignable ? TESTSERVECOLE=`ping servecole -c1 2>&1 > /dev/null` if [ "${?}" = "0" ]; then zenity --question --title="Attention" --text="Ce DVD permet d'installer la version cliente d'AbulÉdu et nécessite d'avoir un serveur 9.08 pour fonctionner correctement. Si vous n'avez pas cette version sur le serveur, contactez la société RyXéo ou votre revendeur le plus proche.\n\nwww.abuledu.com -- www.ryxeo.com -- tel. 05 35 54 01 18" --ok-label="Continuer" --cancel-label="Annuler" if [ "${?}" = "1" ]; then exit fi touch /tmp/installclientlourd else zenity --question --title="Attention" --text="Votre ordinateur ne semble pas être connecté à un serveur AbulÉdu. Vous pouvez décider de faire une installation en mode monoposte mais vous n'aurez alors pas accès aux services suivants qui sont fournis par un serveur AbulÉdu: - Respecter la loi tout simplement pour une installation scolaire (filtrage, gestion des logs, stockage); - Annuaire LDAP permettant l'authentification des utilisateurs; - Espaces de stockages individuels et partagés sur le serveur; - Accéder aux documents depuis n'importe quel ordinateur du réseau; - Respecter le référenciel S2i2e du ministère; Un descriptif plus complet est présent dans les documents PDF que vous pouvez trouver sur le bureau." --ok-label="Installer la version monoposte" --cancel-label="Annuler" if [ "${?}" = "1" ]; then exit fi touch /tmp/installmonoposte fi zenity --question --title="SAUVEGARDE" --text="Je confirme avoir fait une <b>sauvegarde de mes données</b> (sur un disque débranché ou une clé usb) et suis pleinement informé(e) que l'installation d'AbulÉdu Live risque de détruire les données présentes sur mon disque dur (surtout si je me trompe à l'étape de partionnement du disque dur).\n\n<i>Dans le doute nous vous conseillons de demander de l'aide à une personne habituée à faire des installation de systèmes Linux ou à demander de l'aide sur le forum.abuledu.org</i>." --ok-label="Continuer l'installation" --cancel-label="Annuler" if [ "${?}" = "1" ]; then exit fi #on lance ubiquity pour l'installation ubiquity --desktop %k gtk_ui
Ajout des paquets spéciaux abuledu¶
- mettre tous les .deb dans le répertoire ryxeo/deb du dvd
- créer le Packages
dpkg-scanpackages ./ > Packages cat Packages | gzip -f9 > Packages.gz
Création des comptes utilisateurs dans la session live¶
Tout se passe dans le fichier chroot/usr/share/initramfs-tools/scripts/casper-bottom
- on ne touche pas à 15autologin, normalement on re(dé)configure l'autologin de gdm dans le 50adduser_abuledu (ça fait moins de fichiers à trafiquer) mais c'est une bonne idée de regarder si gdm n'a pas changé (exemple jaunty gdm.conf, lucid custom.conf)
- 25configure_init -> pas mal de ligne à mettre en commentaires pour éviter qu'on ait des consoles ouvertes (ctrl+F2)
- 50adduser_abuledu forcément :)
Il faut ensuite penser à reconstruire l'initrd
mount --bind /dev chroot/dev mount --bind /proc chroot/proc chroot chroot update-initramfs -u logout (sortir du chroot) cp chroot/boot/initrd.img-2.6.28-11-generic image/casper/initrd.gz
Ouverture de session GDM sans mot de passe¶
- /etc/pam.d/gdm.conf
- #%PAM-1.0
- auth requisite pam_nologin.so
- auth required pam_env.so readenv=1
- auth required pam_env.so readenv=1 envfile=/etc/default/locale
- auth sufficient pam_listfile.so item=user sense=allow file=/etc/gdm/nopassusers.txt onerr=fail
- @include common-auth
- auth optional pam_gnome_keyring.so
- @include common-account
- session required pam_limits.so
- @include common-session
- session optional pam_gnome_keyring.so auto_start
- @include common-password
- modification du script qui ajoute les comptes utilisateurs "live" pour ajouter les login dans le fichier nopassusers.txt
Les skels utilisateurs, trombines etc.¶
Tout se copie dans- chroot/etc/skel
- chroot/usr/share/skels/
- chroot/usr/share/pixmaps/faces/
- image/isolinux
- chroot/usr/share/icons/AbulEdu
- chroot/usr/local/bin
Nom de la machine¶
- scripts/casper-bottom/18hostname
GDM 2.30¶
Trombines¶
- cf #1084
Modification du thème¶
- chroot/usr/share/gdm/gdm-greeter-login-window.ui
- cf #1558