Archive pour mai 2011

Mon passage à Frugalware 1.4 (Nexon)

Dimanche 22 mai 2011

Il y a quelques jours, j’ai mis à jour mon système Frugalware de la version 1.3 (Haven) vers la version 1.4 (Nexon). Une fois n’est pas coutume, je reporte ici mes problèmes et mes impressions.

J’ai d’abord procédé à la mise à jour, en suivant les instructions de mise à jour données par l’équipe de développement. Comme d’habitude, je ne fais une mise à jour massive, comme indiqué dans les instructions, car j’ai un espace disque qui ne permet pas de télécharger tous les paquets à mettre à jour. A la place, je suis obligé d’installer les paquets par groupe de 5 ou 6, en vidant le cache de pacman-g2 régulièrement. Cela fait que je me peux me retrouver à effectuer des opérations avec un système à moitié mis à jour. Dans ce cas-ci, la commande df ne fonctionnait plus (heureusement, elle est redevenue pleinement opérationnelle après la fin de la mise à jour et un redémarrage).

Suite au redémarrage, j’ai malheureusement constaté trois soucis.

Tout d’abord, ma connexion Wifi ne fonctionnait plus. Ma clé USB Wifi était bien reconnue, mais mal configurée. Comme indiqué dans de précédents articles, et en particulier celui concernant la configuration de cette clé, j’ai l’habitude d’utiliser le pilote Windows, via le module ndiswrapper. Or, ce module ne peut plus être chargé. J’ai reporté le problème dans l’outil de suivi des bugs de Frugalware.

Heureusement pour moi, ma clé USB Wifi est reconnue par un autre pilote, le module r8712u. Bien que ce module soit expérimental (staging), il semble parfaitement fonctionner, jusqu’à maintenant, en tout cas. Cependant, j’ai constaté qu’on ne peut assigner un essid à l’interface Wifi qu’à partir du moment où elle est activée. Je devais donc assigner l’essid manuellement, après chaque démarrage du système.

Pour automatiser cela au démarrage du système, j’ai suivi le conseil donné dans la page man de netconfig (l’outil réseau de Frugalware), en ajoutant les deux lignes suivantes dans mon fichier /etc/sysconfig/network/default :

pre_up = ifconfig wlan0 up

post_down = ifconfig wlan0 down

La première ligne a pour effet d’activer l’interface Wifi (wlan0) avant sa configuration proprement dite et, en particulier, le positionnement de l’essid. Symétriquement, la deuxième ligne permet de désactiver l’interface Wifi après que l’interface Wifi soit « dé-configurée ».

Mon deuxième soucis concernait le plantage des applications Web que j’utilise régulièrement: firefox, liferea (aggrégateur de flux RSS, qui une petite fonction de navigation) et uzbl (un navigateur que j’expérimente de temps à autres). Ces trois applications plantaient systématiquement dès qu’une page devait être chargée.
J’ai commencé par désinstaller les plug-ins firefox, et en particulier le plug-in flash, mais ça plantait encore. Je me suis également lancé dans la désinstallation d’un maximum de polices, en pensant que cela pouvait être une chose commune entre ces trois applications, mais cela n’a rien changé. Désespéré, je me suis alors dirigé vers le salon IRC francophone de Frugalware. Les gens ont pris le temps d’écouter mon problème (merci à eux !) et m’ont donné un ou deux conseils, mais qui n’ont pas porté leurs fruits.

Entre temps, un collègue de travail m’a conseillé d’utiliser l’outil strace, que je ne connaissais pas du tout. Il permet de voir tous les appels systèmes (librairies chargées, fichiers accédés, …) effectués par une application. Je l’ai installé en tapant simplement :

# pacman-g2 -S strace

Je l’ai d’abord essayé avec firefox :

# strace firefox

Mais cela ne m’a donné aucune piste. J’ai ensuite essayé avec liferea :

# strace liferea

Et là, quelques lignes ont attiré mon attention. Ces lignes indiquaient que l’application tentait de charger la librairie /usr/lib/firefox/plugins/libflashplayer.so. Ce fichier existait bien et était un lien vers /usr/lib/mozilla/plugins/libflashplayer.so. J’étais étonné car il s’agit de la librairie du plug-in flash, alors que j’avais désinstallé le plug-in flash. J’ai alors vérifié d’où venait ces deux fichiers :

# pacman-g2 -Qo /usr/lib/firefox/plugins/libflashplayer.so

erreur: Aucun paquet ne contient /usr/lib/firefox/plugins/libflashplayer.so

# pacman-g2 -Qo /usr/lib/mozilla/plugins/libflashplayer.so

erreur: Aucun paquet ne contient /usr/lib/mozilla/plugins/libflashplayer.so

J’avais donc deux fichiers fantômes, n’appartenant à aucun paquet. J’ai alors renommé les deux répertoires plugins en plugins.bak. Puis j’ai réessayé les trois applications Web, et là, bingo ! Elles semblaient fonctionner parfaitement.

J’ai alors réinstallé le plug-in flash. Tout fonctionnait encore. De toute évidence, la mise à jour du paquet flashplugin et sa suppression n’ont pas fonctionné, et je ne sais pas pourquoi.

Enfin, mon troisième soucis concerne le fichier rc.local (du répertoire/etc/rc.d/). J’y ai quelques commandes me permettant d’activer des touches spéciales de mon clavier (du genre touche Internet). Suite à la mise à jour, j’ai constaté que ces touches ne fonctionnaient plus.

En analysant le problème, j’ai eu la désagréable surprise de voir que le fichier rc.local avait été écrasé par une version vierge, sans mes modifications. Est-ce normal ? Ai-je fait une mauvaise manipulation ? Y a-t-il un autre fichier plus approprié pour exécuter des commandes à chaque démarrage ? Je ne sais pas. Si quelqu’un a une idée, je serais très content de la connaitre.

En conclusion,  mon passage à Frugalware 1.4 (Nexon) s’est déroulé globalement bien. J’ai eu les trois soucis mentionnés ci-dessus, mais ils ont été finalement vite corrigés. Au final, je n’ai perdu ni en fonctionnalités, ni en stabilité, ni en performance.

J’apprécie le nouvel écran graphique de démarrage, très sobre, avec simplement le logo et le slogan de Frugalware. Je regrette simplement la disparition de la barre de progression.

Il s’agissait de ma sixième mise à jour du système, depuis Frugalware 0.8 (Kalgan). C’est toujours un plaisir de voir que l’on peut mettre à jour son système sans pour autant passer par une réinstallation complète. Je tiens à remercier et à féliciter les contributeurs Frugalware pour cela.

J’espère que cet article vous aura intéressé. N’hésitez pas à me faire part de vos commentaires.