Modifier Puppy pour les maths en lycée

Avant-propos

Utilisant les logiciels geogebra et xcas en classe, mes élèves ont à les installer chez eux. Face aux soucis d'installations et n'ayant pas trop le temps de faire de l'assistance à distance, j'ai décidé de proposer un CD-Live incluant ces logiciels.

Le choix de la puppy permet

La modification permet d'avoir: Un tableur est déjà présent et me semble-t-il suffit: gnumeric; les logiciels pour écouter de la musique n'ont pas été supprimés.

L'image fait à peu près 150 Mo, taille que l'on pourrait réduire en supprimant quelques logiciels ou augmenter en installer la suite Open Office; il faut toutefois tenir compte que tout sera installé en RAM.

Création de l'image iso

Voilà de mémoire, les principales étapes ayant permis de créer cette image iso à partir de la puppy 3.01 en utilisant la méthode Unleashed. Il est certainement possible d'utiliser un procédé plus rapide.

  1. Création d'un première image iso,
  2. boot sur cette image pour paramétrer les logiciels et obtenir les fichiers de configurations,
  3. création de l'iso finale.

Création de la première image iso

Installer la puppy

La création de l'image iso se fait à partir de la puppy; il faut donc la télécharger et la graver (voir liens).
On peut certainement utiliser la version modifiée.

Installer les sources

On suit la procédure indiquée sur le site officiel et décrite brièvement ci-dessous, seule la partie dédiée à Firefox a été rajoutée:

  1. création d'une partition ext3 de 1,5 Go et d'une partition swap de 500 Mo, si besoin utiliser pour cela le logiciel gparted disponible sur la puppy;
  2. démarrer votre ordinateur avec puppy et monter la partition ext3 (clic sur l'icône drive);
  3. aller sur ftp://ibiblio.org/pub/linux/distributions/puppylinux/ pour télécharger puppy-unleashed-core-3.01.tar.gz et copier ce fichier dans la partition ext3 de votre disque dur;
  4. décompresser ce fichier
    # sync
    # tar -zxf puppy-unleashed-core-3.01.tar.gz

    Un répertoire nommé puppy-unleashed est créé lors de cette décompression;
  5. utiliser un logiciel ftp tel que gftp pour accéder à ibiblio.org (utilisateur: anonymous) et copier tous les fichiers situés dans le répertoire /pub/linux/distributions/puppylinux/pet_packages-3/ vers le répertoire local puppy-unleashed/packages/.

  6. Pour Firefox, on télécharge le package pet donné à partir de ce lien http://www.murga-linux.com/puppy/ et on le copie dans puppy-unleashed/packages/;
  7. décompresser ensuite ces fichiers en se plaçant dans le répertoire puppy-unleashed et en tapant
    # sync
    # ./expandtarballs.sh
On s'arrête à cette étape et on retrousse ses manches.

Modifications

Il va falloir rajouter les packages des logiciels et modifier des fichiers avant de lancer la création de l'image iso.
Ayant la chance d'avoir un système linux sur mon pc avec accès au répertoire puppy-unleashed, j'ai préféré utiliser celui-ci et éviter ainsi l'usage de la ligne de commandes et de puppy.

En fait, on installe ces nouveaux packages, on grave une image iso, on boote dessus pour lancer les applications afin d'obtenir les fichiers de configurations que l'on récupérera pour graver l'iso final.

On se place dorénavant dans puppy-unleashed/packages/.
Une commande de ce genre permet d'y accéder (ou utiliser une interface graphique)
# cd ./puppy-unleashed/packages/

xcas
  1. Téléchargement de la version xcas_root.tgz à partir du site officiel (voir liens),
  2. création du répertoire xcas,
  3. On se place dans le répertoire xcas.
  4. Décompression de xcas_root.tgz dans ce répertoire.
  5. Rajout d'une icône à xcas, extension xpm, en le plaçant dans /usr/local/lib/X11/pixmaps/ (sous-chemin à créer).
  6. On rajoute xcas dans le menu en plaçant dans /usr/share/applications/ (sous-chemin à créer) le fichier Xcas.desktop contenant
    [Desktop Entry]
    Version=1.0
    Encoding=UTF-8
    Name=Xcas
    Icon=/usr/local/lib/X11/pixmaps/xcas.xpm
    Comment=Logiciel de calcul formel
    Exec=/usr/local/bin/xcas
    Terminal=false
    Type=Application
    Categories=Calculator
    GenericName=Xcas
    GenericName[fr_FR]=Xcas
  7. On mettra un icône sur le bureau (voir rox-filer)
geogebra
  1. Téléchargement de la version linux à partir du site officiel (voir liens) et installation dans un répertoire temporaire pour récupérer les fichiers qui vont bien.
  2. Création du répertoire geogebra,
  3. On se place dans le répertoire geogebra.
  4. Copie des 5 fichiers geogebra.jar, geogebra_cas.jar, geogebra_export.jar, geogebra_gui.jar et geogebra_properties.jar dans /usr/share/geogebra/ (sous-répertoire à créer),.
  5. On rajoute dans /usr/bin/ (sous-répertoire à créer) le fichier mygeogebra contenant
    #!/bin/bash
    java -jar /usr/share/geogebra/geogebra.jar
  6. On rajoute une icône à geogebra, extension xpm, en le plaçant dans /usr/local/lib/X11/pixmaps/ (sous-chemin à créer).
  7. On rajoute geogebra dans le menu en plaçant dans /usr/share/applications/ (sous-chemin à créer) le fichier Geogebra.desktop contenant
    [Desktop Entry]
    Version=1.0
    Encoding=UTF-8
    Name=Xcas
    Icon=/usr/local/lib/X11/pixmaps/geogebra.xpm
    Comment=Dynamic Mathematics for Schools
    Exec=/usr/bin/mygeogebra
    Terminal=false
    Type=Application
    Categories=Calculator
    GenericName=GeoGebra
  8. On mettra un icône sur le bureau (voir rox-filer)
Firefox

On se place dans le répertoire firefox. On va activer l'usage de java webstart et définir la page d'accueil.

  1. Création du lien symbolique /usr/java/bin/javaws vers /usr/bin/javaws
    # ln -s /usr/java/bin/javaws /usr/bin/javaws
  2. Modification de la page d'accueil par modification du fichier /usr/lib/firefox/browser_properties
Locale
  1. Faire une sauvegarde du package glibc-i18n-2.5
  2. Dans ce package, on installe les locales fr_FR et fr_FR@euro en les recopiant à partir du package glibc_locales-2.5; on peut en profiter pour supprimer les autres locales en gardant toutefois en_GB et en_US (sait-on jamais).
  3. Dans le package 0rootfs_skeleton-3.01, éditer le fichier /etc/profile et modifier la ligne définissant les locales ainsi:
    LANG=fr_FR@euro
Rox-filer
Dans le package rox_filer-2.6.1-pup2, aller dans root/Choices/ROX-Filer/ pour
Autres

On peut changer le message au boot en modifiant le fichier puppy-unleashed/isolinux-builds/boot.msg.

Le premier iso

On reboote sur la puppy, on se place dans le répertoire puppy-unleashed et on lance le script magique
# sync
./createpuppy

On installe bien entendu les paquets modifiés et on pourra en supprimer pour alléger la taille de l'image iso.

Récupérer les fichiers de configuration

On boote sur l'iso nouvellement créée.

Firefox

Lançons Firefox

  1. On active javaws.
  2. On modifie le Marque-page
  3. Les fichiers mimeTypes.rdf et bookmarks.html de votre profil firefox situés dans ~/.mozilla
  4. (il faut activer l'affichage des fichiers cachés) seront recopiés dans puppy-unleashed/packages/firefox/usr/lib/firefox/default.

xcas

On lance XCAS et on le paramètre correctement

Le fichier ~/.xcasrc sera recopié dans puppy-unleashed/packages/xcas/root.

Position des icônes

On place les icônes du bureau comme on le désire et on pourra récupérer le fichier ~/Choice/ROX-Filer/PuppyPin

Création de l'iso finale

Et on lance une autre fois le script magique
# sync
./createpuppy

Remarques

Pour mon premier essai, et n'ayant testé puppy qu'un jour avant, j'ai préféré être prudent et ne pas partir de la toutou (un dérivé de puppy en français). Si prochaine version il y a, je pense l'utiliser, ce qui permettra d'avoir déjà les bonnes locales.

Firefox me semble lourd par rapport au navigateur proposé par défaut (seamonkey). Si tel est le cas, il faudra voir si quelqu'un propose ce dernier avec java et flash, ou que je tente moi-même ces installations.

J'espère que gnumeric suffit parce qu'il est plus confortable d'avoir les trois outils, tableur, géométrie dynamique et calcul formel sur un même système.

Liens