224 jours depuis mon retour sous archlinux… Bilan.

3  mai 2009 : je quitte Ubuntu Linux Jaunty Jackalope (alias 9.04) pour retourner sous Archlinux. Au bout d’un peu plus de 7 mois, j’ai eu envie de faire un petit bilan.

Coté logiciels ? Ma machine a connu sans trop de problème :

  • 4 générations de noyau linux : du 2.6.29.2 installé début mai, la version actuelle est la 2.6.32, enfin si on utilise les dépots de tests d’Archlinux 😉
  • 2 générations d’OpenOffice.org : la 3.0.x et la 3.1.x
  • 2 générations de Gnome avec un passage sous KDE 4.3.x entre temps.

Sur le plan pratique : aucune réinstallation depuis 7 mois, alors que je réinstallais tous les 6 mois mon Ubuntu Linux, à l’époque de la version bêta. Autant dire un gain de souplesse incroyable.

Une distribution dont je comprend  à peu près le fonctionnement, que je sais être modularisable, et sur laquelle je peux changer d’environnement de bureau ou de gestionnaire de fenêtre à volonté sans craindre de tout casser.

Un tranquillité d’esprit, et la possibilité de savoir que j’ai une machine rapidement à jour, quite à faire recompiler certains paquets, comme le noyau 2.6.32 avant qu’il ne soit disponible sur le dépot testing…

Bref, pour reprendre le slogan du site Distrowatch : « Put the fun back in computing. Use Linux, BSD », ce qu’on peut traduire par : « Remettez de l’amusement dans l’informatique. Utilisez Linux, BSD »

Une informatique à visage humain, quoi.

Du besoin d’une implémentation puissante et libre d’Adobe Flash – partie 3 – Gnash

Gnash est la deuxième alternative libre au greffon propriétaire Adobe Flash. Pour des raisons pratiques, et surtout pour avoir les résultats les plus à jour possible, j’ai récupéré une version de développement dite « bzr », via le paquet idoine sur aur.archlinux.org :

Pour avoir aussi le greffon flash pour le navigateur, j’ai modifié le fichier PKGBUILD :

# Contributor: Matthew Bauer
pkgname=gnash-bzr
pkgver=1
pkgrel=2
pkgdesc= »Gnash is an open source flashplayer. »
arch=(‘i686’ ‘x86_64’)
url= »http://www.gnu.org/software/gnash/ »
license=(‘GPL’)
depends=(‘agg’ ‘atk’ ‘libxml2’ ‘curl’ ‘libtool’ ‘ffmpeg’ ‘boost’ ‘pango’ ‘libxi’)
#ffmpeg-svn libdc1394
makedepends=(‘bzr’)
provides=(gnash-common gnash-gtk)
conflicts=(gnash-common gnash-gtk)

_bzrbranch=http://bzr.savannah.gnu.org/r/gnash/trunk
_bzrmod=trunk

build() {
cd ${srcdir}

msg « Connecting to the server…. »

bzr branch ${_bzrbranch} -q

msg « BZR checkout done or server timeout »
msg « Starting make… »

[ -d ./${_bzrmod}-build ] && rm -rf ./${_bzrmod}-build
cp -r ./${_bzrmod} ./${_bzrmod}-build
cd ./${_bzrmod}-build

sh autogen.sh
./configure –prefix=/usr \
–with-plugins-install=system \
–with-npapi-plugindir=/usr/lib/mozilla/plugins \
–disable-kparts \
–enable-gui=gtk \
–enable-z –enable-jpeg \
–enable-renderer=agg \
–enable-media=ffmpeg \
–enable-write \
–enable-avm \
–disable-cygnal
make || return 1
make DESTDIR=$pkgdir install install-plugin
}

L’option –enable-avm permet de compiler une version plus récente du langage actionscript.

La compilation se lance avec un petit makepkg.

Après 45 minutes de compilation, le paquet est prêt pour être installé avec un petit :

yaourt -U gnash-bzr-1-2-x86_64.pkg.tar.gz

Après avoir créé un lien symbolique du fichier /usr/lib/mozilla/plugins/libgnashplugin.so vers ~/.mozilla/plugins et relancé le navigateur, j’ai voulu tester les 3 sites que j’utilise principalement avec Adobe Flash : Youtube, Deezer et Dailymotion.

Les résultats ?

Du pire au meilleur.

Youtube : aucun controle pour les vidéos ne sont affichés. Surement une régression de la version de développement ?!

Gnash - post 0.8.6 - sur Youtube.

Dailymotion : les controles vidéos sont affichés, mais inactif.

Gnash - post 0.8.6 - sur Dailymotion

Deezer : on peut se connecter, mais rien ne s’affiche 🙁

Gnash - post 0.8.6 - sur Deezer.

Autant dire qu’il y a encore de la progression possible envisageable pour les implémentations libre d’Adobe Flash.

Du besoin d’une implémentation puissante et libre d’Adobe Flash – partie 2 – swfdec

Swfdec est une des deux alternatives libre au greffon propriétaire Adobe Flash. Voulant tester une version récente, j’ai installé la version de développement 0.9.2 disponible sur AUR avec son extension pour être utilisable avec Mozilla Firefox.

Après avoir créé un lien symbolique du fichier /usr/lib/mozilla/plugins/libswfdecmozilla.so vers ~/.mozilla/plugins et relancé le navigateur, j’ai voulu tester les 3 sites que j’utilise principalement avec Adobe Flash : Youtube, Deezer et Dailymotion.

Les résultats ? Ecran noir sur Youtube, Deezer m’annonce que ma version d’Adobe Flash est trop vieille, et Dailymotion me plante le navigateur 🙁

Swfdec 0.9.2 avec Youtube

Swfdec 0.9.2 avec Deezer

J’ai donc voulu voir si c’était mieux du coté des versions de développement… Et le paquet ne se compile pas, que ce soit la version utilisant pulse-audio ou celle utilisant alsa :

libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wold-style-definition -Wdeclaration-after-statement -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Winline -Wformat-nonliteral -Wformat-security -Wswitch-enum -Wswitch-default -Winit-self -Wmissing-include-dirs -Wundef -Waggregate-return -Wmissing-format-attribute -Wnested-externs -Wunsafe-loop-optimizations -Wpacked -Winvalid-pch -Wsync-nand -Wlogical-op -Werror -std=gnu99 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I.. -I./jpeg/ -I/usr/include/liboil-0.3 -pthread -I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -DG_LOG_DOMAIN=\ »Swfdec\ » -march=x86-64 -mtune=generic -O2 -pipe -MT libswfdec_0.9_la-swfdec_as_string.lo -MD -MP -MF .deps/libswfdec_0.9_la-swfdec_as_string.Tpo -c swfdec_as_string.c -fPIC -DPIC -o .libs/libswfdec_0.9_la-swfdec_as_string.o
cc1: warnings being treated as errors
swfdec_as_string.c: In function ‘swfdec_as_string_split_5’:
swfdec_as_string.c:369: erreur: logical ‘&&’ with non-zero constant will always evaluate as true
make[4]: *** [libswfdec_0.9_la-swfdec_as_string.lo] Erreur 1
make[4]: quittant le répertoire « /tmp/yaourt-tmp-fred/aur-swfdec-git/swfdec-git/src/swfdec-build/swfdec »
make[3]: *** [all-recursive] Erreur 1
make[3]: quittant le répertoire « /tmp/yaourt-tmp-fred/aur-swfdec-git/swfdec-git/src/swfdec-build/swfdec »
make[2]: *** [all] Erreur 2
make[2]: quittant le répertoire « /tmp/yaourt-tmp-fred/aur-swfdec-git/swfdec-git/src/swfdec-build/swfdec »
make[1]: *** [all-recursive] Erreur 1
make[1]: quittant le répertoire « /tmp/yaourt-tmp-fred/aur-swfdec-git/swfdec-git/src/swfdec-build »
make: *** [all] Erreur 2

Bref, ce n’est pas la joie. J’espère que Gnash – objet du prochain article – s’en tirera un peu mieux !

Moria pour les linux modernes ? C’est possible ;)

Vers 1994 – 1995, j’ai été un utilisateur d’un Amiga 1200. Parmi les nombreuses disquettes que l’on pouvait acheter par correspondance, je suis un jour tombé sur un jeu auquel j’ai tout de suite accroché : moria.

Seule la version Amiga avait des graphismes, comme le prouve une capture d’écran disponible sur le site « Beej’s Moria Page« , une bible pour ce jeu mythique.

La version originale est en caractères texte, ce qui est un peu plus « rustique » mais tout autant jouable 😉

J’ai vu il y a quelques temps arrivé sur le dépot AUR concernant justement la version unix de moria un paquet à compiler.

Il suffit de deux étapes pour installer moria sur une archlinux moderne – ou toute autre distribution ayant les outils de compilation préinstallé. La première est d’ajouter à son compte utilisateur le groupe games :

sudo gpasswd -a nom-utilisateur games

Il faut se déconnecter et se reconnecter pour que la modification soit pris en compte.

Et ensuite, de compiler le paquet, ce qui est simplissime avec yaourt :

yaourt -S umoria

Pour les autres distributions, il suffira d’appliquer le patch, et de faire un duo make ; make install pour installer le jeu.

Le jeu compilé se lance dans une console en entrant la commande moria

Voici quelques captures d’écran : l’intro, l’interface de création de personnage, le village, un niveau, et la page de décès, ayant honteusement perdu au premier niveau, victime d’une horde de rats géants 🙁

Le pavé numérique sert pour les déplacements du personnage, donc, pour les portables sans pavé numérique, c’est infernal à utiliser 🙁

Un jeu à découvrir, surtout pour les nombreux fans de jeu comme World Of Warcraft, ou pour les plus vétérans, un certain Diablo !

Et si le modèle d’une version tous les 6 mois était en voie d’essoufflement ?

Dans un article assez saignant, Cyrille Borne parle de manière peu élogieuse des distributions comme les ubuntu-like, je cite :

Conclusion Linuxienne. Après ma petite semaine de vagabondage en famille, un coup de yum update, yum upgrade et me voilà en firefox 3.5.4, je me dis que ce n’est pas si mal, lorsque l’on sait que Léonidas est une version qui sera dépassée d’ici une quinzaine de jours. Quand au mois de décembre, on rappellera aux ubunteros qu’il est possible d’installer openoffice par les paquets deb, ou qu’on donnera des méthodes de compilation pour installer de nouvelles versions, sous Fedora si on garde le cap qui a l’air d’être celui de cette distribution, on sera certainement à jour dans les logiciels sans effort. A méditer.

Continuer la lecture de « Et si le modèle d’une version tous les 6 mois était en voie d’essoufflement ? »

Une archlinux au gout de Fedora ?

Depuis la Fedora Linux 10, sous réserve de compatibilité matérielle, on peut avoir un écran de démarrage animé qui change un peu des « bêtes » barres de progression.

J’avais jadis parlé de FBSplash, mais on peut très bien avoir Plymouth sur une Archlinux.

Continuer la lecture de « Une archlinux au gout de Fedora ? »

Chakra Linux « Fuzzy » : de la concurrence pour Kubuntu ?

En cette journée de sortie de Microsoft Windows Vista 2 alias Microsoft Windows 7, j’ai voulu parler de quelque chose de plus intéressant.

Lisant le flux RSS de Distrowatch, je suis tombé sur cette annonce :

Une version post-alpha3 de la distribution Chakra Linux (ArchLinux + KDE) est disponible. En dehors des inévitables évolution lié à une distribution qui utilise le modèle du « rolling release », certaines nouveautés ont attiré mon attention : l’arrivée de Chase, un module qui permet la détection des mises à jour et de leur mise en place.

Continuer la lecture de « Chakra Linux « Fuzzy » : de la concurrence pour Kubuntu ? »

Dis, cela prend combien de temps pour compiler un Mozilla Firefox ?

Adepte des versions de développement des logiciels de la Fondation Mozilla depuis Mozilla 0.8 (en gros depuis février 2001), j’ai toujours voulu connaître le temps nécessaire à la compilation d’une version « from scratch », en clair, en repartant de zéro.

Ayant récupéré le code source en utilisant les instructions disponibles à l’adresse https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial, en clair en entrant sur une ligne de commande :

hg clone http://hg.mozilla.org/mozilla-central/ src
cd src

Puis en actualisant le code source avec un petit :

hg --verbose pull -u

J’ai ensuite utilisé le fichier .mozconfig suivant :

#
# See http://www.mozilla.org/build/ for build instructions.
#

export AUTOCONF=autoconf-2.13

. $topsrcdir/browser/config/mozconfig

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-fx

# Options for ‘configure’ (same as command-line options).
ac_add_options –enable-optimize
ac_add_options –disable-debug
ac_add_options –disable-tests

Pour des raisons techniques, il faut installer l’ancienne version d’autoconf, connue sous le nom d’autoconf-compat sur Archlinux.

J’ai divisé la compilation en deux temps : un pour les dépendances, l’autre pour la compilation proprement dite.

Pour les dépendances :

make -f client.mk depend

Pour la compilation :

make -f client.mk build

Et le temps nécessaire ? Il suffit d’ajouter la commande time devant les commandes make.

Pour les dépendances :

real    2m49.202s
user    1m30.977s
sys    0m44.534s

Pour la compilation :

real    43m33.043s
user    39m33.562s
sys    3m38.266s

Pour info, ma configuration :

Acer Aspire 5520, donc :

  • AMD Athlon X2 TK 55 (800 à 1800 Mhz)
  • 2 GiO de mémoire vive
  • 120 GiO de disque dur
  • Circuit vidéo GeForce7000M

Sur le plan logiciel :

  • Archlinux 2009.02 à jour avec le dépot testing activé
  • Gnome 2.28.0
  • gcc / g++ 4.4.1

45 minutes, sur un portable acheté en février 2008, ce n’est pas si mal que cela 😉

Incroyable, Ubuntu a un installateur texte :)

Dans un article environ vieux d’un mois, Cyrille Borne, blogueur dont j’apprécie la prose – et qui me soutient quand je me fais incendier par des fanboys – a lancé une pique que j’avais oublié entre temps :

« Pour les plus geeks d’entre vous, ceux qui ne sont pas intéressés par ces grandes distributions si user friendly comme on peut le lire ici Brakbabord qui sort la tête de ses nuages fait le test d’une Archlinux ce qui n’arrivera certainement ici que dans cinq ou dix ans quand la distribution aura changé son installateur. »

La mise en gras souligne le noeud du problème : l’installateur en mode texte…

On loue souvent les distributions modernes pour leur installateur en mode graphique…

Cependant, toutes – ou presque – ont deux faces, un peu comme la tomate qui est à la fois fruit et légume. Et donc aussi bien des installateurs graphiques que des installateurs en mode texte.

Je vais prendre l’exemple de la distribution moderne la plus connue actuellement, j’ai nommé la reine Ubuntu.

Si on fouille sur cdimage.ubuntu.com, on peut voir deux répertoire : daily-live et daily tout court.

Dans le répertoire daily, on a des images qui ont « alternate » dans leur nom. Ce sont des installateurs en mode texte.

L’installateur en mode texte de la Ubuntu Karmic Koala

La preuve en image. Il suffit de récupérer une image récente, et dans une machine virtuelle KVM :

fred ~/download $ qemu-img create -f qcow2 ubu.img 32G
Formatting 'ubu.img', fmt=qcow2 size=34359738368 encryption=off cluster_size=0
fred ~/download $ qemu-kvm -k fr -localtime -m 1024 -soundhw all -hda ubu.img -cdrom karmic-alternate-amd64.iso -boot d &

Et il est vraiment compliqué à utiliser.

Par exemple, la définition du pays : suffit d’appuyer sur entrée pour confirmer son choix…

D’autres captures d’écran on ne peut plus parlantes sont présentées. Le temps d’installation est en gros le même que cela de la version « user-friendly » tout en graphique.

Par exemple, le partitionnement du disque :

Ou encore l’ajout d’un utilisateur :

Et une fois l’installation finie, on demande à l’utilisateur de bien vouloir redémarrer la machine :

Et de quoi être rassuré :

L’installateur texte est surement moins « sexy » que l’installateur graphique, mais il n’en est pas moins simple à l’utilisation…

Mais est-ce si grave ? Etant donné que c’est le genre de logiciel qu’on ne voit en moyenne qu’une fois par an 🙂

Connexion automatisée avec GDM 2.28

Pour des raisons liées à mon travail, j’ai du configurer une archlinux virtuelle avec 256 Mo, et un Gnome allégé et simplifié. Le gros problème ? L’impossibilité de lancer automatiquement Gnome avec un utilisateur précis.

Fouillant sur le site de gnome, j’ai trouvé la réponse : il suffit de modifier – en tant que root – le fichier /etc/gdm/custom.conf, et de rajouter les lignes suivantes :

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=

La deuxième ligne étant celle qui doit contenir le nom de l’utilisateur à connecter. Je sais, c’est pas très joli sur le plan de la sécurité, mais comme c’est pour une borne internet limité à la consultation de site et du courrier en ligne 😉

Et après mes tests, si tout est bon pour le service, cette archlinux remplacera la ubuntu Gutsy Gibbon qui se traine sur la machine… Car Ubuntu de nos jours avec seulement 256 MiO, cela fait court 🙁