La diversité du monde linux : force ou faiblesse ?

Lisant un article de l’excellent Cyrille Borne, un paragraphe m’a sauté aux yeux. Je cite :

« Je garde ma réserve car notre Linux prétendument indestructible s’il devenait du jour au lendemain la cible de tous les bandits du monde et bien peut être qu’il se ferait méchamment « marrave ». Finalement cette situation des 1% me convient bien, j’ai quelque part l’impression d’avoir trouvé un restaurant parisien à 7 € face à la tour Eiffel où l’on mange très bien, une espèce de secret que nous partagerions entre gens de bon goût. Si du jour au lendemain on devenait trop nombreux je suis persuadé qu’on y mangerait plus mal et qu’il y aurait des gens qui gâcheraient l’ambiance, on voit déjà un peu ce phénomène quand on sait ce qu’Ubuntu a apporté à l’univers Linux, pas que de la facilité c’est bien sûr. »

Je pense que la « tranquillité » de linux est surtout basée sur une chose : sa diversité.

Je m’explique. Déjà, contrairement au monde windows, il y a une foultitude de distribution. La bible Distrowatch en compte plusieurs dizaines (pour ne pas dire plusieurs centaines). Si en crois la dernière gazette en date :

* Number of all distributions in the database: 645
* Number of all active distributions in the database: 306
* Number of dormant distributions: 49
* Number of discontinued distributions: 290
* Number of distributions on the waiting list: 197

Traduit rapidement : 645 distributions recensées, 306 actives (dont une soixantaine plus ou moins dérivées de la distribution reine actuelle, j’ai nommé Ubuntu), 49 en hibernation, 290 abandonnées, 197 attendant d’être recensées.

Et si on simplifie à l’extrême, le trait, il y a en gros 3 familles :

  • Celles basées sur du .deb
  • Celles basées sur du .rpm
  • Les autres qui regroupent aussi bien les paquets sources compilés (tar.gz, tar.xz, etc…) que des formats exotiques comme le Conary de rPath.

Donc, si une personne malintentionnée veut toujours un maximum de personnes, il faudrait que son logiciel « malin » soit disponible au moins dans 2 formats, voire plus. Il y a bien le projet autopackage, mais c’est pas franchement la joie.

Ensuite, comme 99,9% des distributions utilisent des dépots, il faudrait infecter les dits dépots, et donc contourner une série de sommes de vérifications plus ou moins puissantes (md5, sha).

Et si je me souviens, un seul cas a été recensé : celui de RedHat courant août 2008?

Il est vrai qu’il est assez ennuyeux pour un programmeur de devoir faire un paquet rpm, un paquet deb, etc… pour son logiciel. Mais cela permet d’avoir une sécurité et d’éviter qu’un sal…petit malin ne corrompe toutes les distributions.

Le vrai danger, c’est le manque de formation des utilisateurs qui utilisent root pour l’utilisation courante, mais cela est du à la conception de Windows qui jusqu’à récemment (en gros jusqu’à Vista) n’était utilisable qu’avec des droits complets sur l’ensemble de la machine.

Je ne prétends pas qu’avec la montée en puissance du logiciel libre au niveau OS de bureau la situation va devenir plus dangeureuse, mais les risques sont limités.

Avis personnel, que je partage 😉

Bretelle et ceinture : de l’intérêt d’avoir à la fois networkmanager et wicd installés.

Le dépot testing d’Archlinux est très rarement « explosif ». Sauf que récemment, une version de développement de NetworkManager est venue mettre une mouise pas possible dans les connexions. J’ai rapporté un bug (qui s’est révelé être le doublon d’un autre) dans lequel le dernier NetworkManager en date (0.7.998) bloquait entièrement Gnome 🙁

Heureusement, j’avais conservé sur mon disque l’outil Wicd dont je n’avais désactivé que l’applet d’affichage et de gestion de réseau. J’ai donc utilisé la séquence ctrl + alt + F2 pour ouvrir une console en mode texte. J’ai ensuite désactivé NetworkManager, réactivé Wicd, fermé la session. Les commandes ?

sudo /etc/rc.d/networkmanager stop
sudo /etc/rc.d/wicd start

La combinaison ctrl + alt + F7 m’ayant permis de me retrouver à nouveau en mode graphique.

Pour que la modification soit prise en compte à chaque démarrage, j’ai désactivé le daemon networkmanager en lui rajoutant un ! avant son son nom dans la ligne DAEMONS de mon /etc/rc.conf :

DAEMONS=(syslog-ng !network netfs crond hal @alsa wicd !networkmanager cpufreq @iptables avahi-daemon avahi-dnsconfd pulseaudio @cups @openntpd sensors gdm)

Bref, une manipulation qui a pris, quoi, 5 minutes 🙂

Compiler Minefield sur les distributions linux « moins grand publics » – Partie 3 – ArchLinux.

Après la Frugalware Linux et la Slackware Linux, voici le dernier volet : La ArchLinux. J’ai installé et mis à jour une ArchLinux 64 bits. J’ai installé dessus un Xfce 4.6.1 à la place d’un Gnome. Pourquoi ? Simplement que je voulais utiliser un environnement basé sur gtk2 assez léger 😉

Sur Archlinux, le problème lié au bug 104642 sur le bugzilla de Mozilla se résout facilement.

Avec une installation par défaut d’Archlinux avec Xfce (ou encore Gnome), on a la quasi-totalité des dépendances de compilation. Seul manque autoconf 2.13, mercurial et zip. En utilisant l’excellent yaourt, le problème se résout en… 2 minutes :

yaourt -S autoconf-compat mercurial zip

Installation d'autoconf 2.13 sur Archlinux

Pour gagner du temps, j’ai utilisé le paquet du code source que j’utilise dans ma machine réelle. Il faut dire que le code source pèse quelque chose comme 600 MiO décompressé.

Sinon, pour récupérer le code source en entier :

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

Le code source est localisé dans ~/fox/src

Le fichier de configuration .mozconfig utilisé est le 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

Ensuite on verifie que le code source est bien à jour :

hg --verbose pull -u

Et la compilation proprement dite :

make -f client.mk build

La compilation dure environ 90 minutes. Sur ma machine réelle, la compilation prend 25 minutes de moins, environ.

Le résultat est disponible dans le répertoire objdir-fx/dist/firefox/

Il suffit d’entrer un ./firefox & pour avoir le résultat.

Minefield sur Archlinux

Maintenant à vous d’adapter les instructions pour votre propre distribution, tant qu’elle est assez peu « grand public » 😉

Compiler Minefield sur les distributions linux « moins grand publics » – Partie 2 – Slackware Linux.

Après la Frugalware Linux, voici le deuxième volet : La Slackware Linux. J’ai installé et mis à jour une slackware64 13.0. J’ai installé une version allégée, remplaçant le KDE 4.2.x proposé par défaut par un Xfce 4.6.1.

Le point ennuyeux ? L’absence d’autoconf 2.13 qui est indispensable pour lancer la compilation du code source. Cf le bug 104642 sur le bugzilla de Mozilla.

N’ayant pas pu trouver le paquet pour autoconf 2.13 sur http://www.slackbuild.org/, j’ai été obligé de le faire compiler à la main. Pas très propre mais fonctionnel !

J’ai du rajouté le paquet libnotify (en forçant l’architecture dans le fichier de slackbuild) depuis http://www.slackbuild.org/.

Pour gagner du temps, j’ai utilisé le paquet du code source que j’utilise dans ma machine réelle. Il faut dire que le code source pèse quelque chose comme 600 MiO décompressé.

Sinon, pour récupérer le code source en entier :

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

Le code source est localisé dans ~/fox/src

Le fichier de configuration .mozconfig utilisé est le suivant :

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

export AUTOCONF=autoconf2.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

Ensuite on verifie que le code source est bien à jour :

hg --verbose pull -u

Et la compilation proprement dite :

make -f client.mk build

Erreur compilation de Minefield dans une Slackware 13.0 64 bits

Et impossible de dépasser la compilation du moteur javascript, la compilation s’arrête avec une histoire de cible « -pthread » introuvable. Je me suis aperçu de la présence de 2 répertoires dans /usr :

  • /usr/lib
  • /usr/lib64

J’ai tenter de rajouter le second dans le fichier /etc/ld.so.conf, mais après un redémarrage, aucun changement. J’avoue avoir « googler » mais sans grande réussite. A croire que la version de développement ne se compilera dans une Slackware Linux 13.0 64 bits 🙁

A croire que ce commentaire sur l’article précédent était un brin prémonitoire.

Dommage !

Compiler Minefield sur les distributions linux « moins grand publics » – Partie 1 – Frugalware Linux.

Depuis l’an 2000 (en gros), j’ai pu faire compiler à mes différentes machines (PC sous Windows ou Linux, ou encore mon MacMini à l’époque de MacOS-X Tiger) le code source de la suite Mozilla (devenue SeaMonkey) puis de Mozilla Firefox et de Mozilla Thunderbird, ce qui m’a permis de vivre leur évolution depuis près de 10 ans.

Pour fêter ces 10 ans (déjà !), j’ai décidé de faire une série de tutoriels pour montrer comment faire compiler Mozilla Firefox – du moins le code du tronc connu comme MineField (champ de mines) – sur les distributions linux moins « grand public ».

Le premier article est consacré à la Frugalware Linux. Je ferais aussi des articles pour la Slackware et pour la ArchLinux. Les distributions plus « connues » que sont Ubuntu Linux ou encore la Fedora sont déjà couverte via le biais de la debian et de la RedHat sur cette page consacrée aux développeurs sur le site de la Fondation Mozilla : https://developer.mozilla.org/En/Developer_Guide/Build_Instructions/Linux_Prerequisites

La Frugalware Linux est une version 1.1 en 64 bits que j’ai fait passé vers current. L’ayant installé depuis le DVD, j’ai rajouté le groupe « devel » ce qui me permet d’avoir 99% des outils de compilation.

Le point ennuyeux ? L’absence d’autoconf 2.13 qui est indispensable pour lancer la compilation du code source. Cf le bug 104642 sur le bugzilla de Mozilla.

Continuer la lecture de « Compiler Minefield sur les distributions linux « moins grand publics » – Partie 1 – Frugalware Linux. »

Test de la KahelOS, version de noël 2009.

J’avais déjà parlé de KahelOS qui est le pendant « Gnome » de la Chakra Linux fin septembre 2009. J’ai donc récupéré la nouvelle iso officielle depuis le site de la distribution, puis je l’ai installé dans une machine virtuelle VirtualBox avec l’équipement classique : 1,5 GiO de mémoire vive et 32 GiO de disque dur.

KahelOS – version de noël

L’installateur se lance après le démarrage, et permet de définir l’heure, puis le partitionnement du disque, en proposant certaines options assez « sauvage », comme le système de fichier btrfs qui est encore dans les couches-culottes

L’installation de base demande environ 3 GiO d’espace disque… Mais c’est une installation qui semble assez complète, ne serait-ce qu’au niveau des serveurs de Xorg

Continuer la lecture de « Test de la KahelOS, version de noël 2009. »

Test de Salix OS 13.0.2 – 64 bits.

La Salix OS, c’est une Slackware Linux (aussi bien 32 que 64 bits) auquel est rajouté Xfce (en lieu et place de KDE), avec quelques outils dont slapt-get. C’est sur la suggestion de Devil505 sur identi.ca que je teste cette distribution.

J’ai donc récupéré l’image ISO de la SalixOS 13.0.2, et j’ai lancé ma machine virtuelle VirtualBox habituelle (1,5 GiO de mémoire vive, 32 GiO de disque).

Salix OS 13.0.2

Continuer la lecture de « Test de Salix OS 13.0.2 – 64 bits. »

Linux Mint 8 « Helena » 64 bits : une ubuntu dopée et revampée.

Prenez Ubuntu Linux Karmic Koala, ajoutez les paquets « ubuntu-restricted-extras », un menu à la « windows vista » (en mieux conçu quand même), et voici Linux Mint 8 « Helena ». Enfin, en schématisant un peu 🙂

Linux Mint 8 – 64 bits

Après avoir récupéré l’image ISO de la version 64 bits, j’ai lancé le tout dans une machine virtuelle VirtualBox avec 1,5 GiO de mémoire vive et 32 GiO de disque.

C’est une distro solide, basée sur Ubuntu Linux (donc coté fraicheur de certains logiciels, hein :), mais qui offre pas mal de trucs en plus qu’une ubuntu classique, dont la possibilité de faire lire « out-of-the-box » les formats non-libres les plus communs : mp3, les dvds commerciaux, etc…

Par contre, si l’on aime pas le vert, mieux va passer son chemin 🙂

Continuer la lecture de « Linux Mint 8 « Helena » 64 bits : une ubuntu dopée et revampée. »

Un tour rapide de FreeBSD 8.0 – 64 bits.

Après mes déboires avec PC-BSD 8.0 alpha, j’ai donc décidé de tester la base à savoir FreeBSD 8.0. Après avoir récupéré l’image ISO du DVD, j’ai lancé une machine virtuelle VirtualBox pour lancer cet unix.

FreeBSD 8.0 64 bits

Continuer la lecture de « Un tour rapide de FreeBSD 8.0 – 64 bits. »

Aperçu de PC-BSD 8.0 alpha 64 bits : y a pas à dire, c’est de l’alpha ;)

PC-BSD, c’est un mélange de FreeBSD avec un KDE récent. Avec la sortie de la version 8.0 de FreeBSD, l’équipe derrière PC-BSD a décidé de proposer une série de versions alpha. J’ai voulu donc voir à quoi ressembler cette version alpha.

PC-BSD 8.0 alpha

Après avoir récupéré l’image ISO du 15 décembre 2009 depuis le répertoire dédié, j’ai pu lancer le système en version « live » dans une machine Virtualbox 3.1.2 (gonflé à 1,5 GiO de mémoire vive étant donné que j’ai gonflé mon PC réel en mémoire vive).

Etant donné que le système est encore en version alpha, il est actuellement impossible de lancer l’installation depuis le système en live à la Ubuntu.

Continuer la lecture de « Aperçu de PC-BSD 8.0 alpha 64 bits : y a pas à dire, c’est de l’alpha 😉 »

Noël avant l’heure pour les blogueurs g33k : WordPress 2.9 est sorti :)

Un cours billet pour annoncer la divine nouvelle. WordPress 2.9, l’un des meilleurs outils de blog du monde libre vient de connaitre une nouvelle version, la 2.9.

L’installation se fait soit via la mise à jour automatisée (depuis une version 2.7), soit en écrasant une précédente installation. En tout cas, la mise à jour depuis sa version RC1 – dont j’ai parlé il y a deux jours – a été sans douleur.

Maintenant, en route vers la version 3.0 qui est prévue pour le printemps 2010. Plus d’infos sur le site wordpress francophone.

En ce qui concerne la version 3.0, il est prévu de très bonne chose :

2.9 has been an exciting development cycle, and I must say it has whetted our appetite for 3.0, which is coming next (probably this spring) and will include at the very least the merge of MU with the WordPress core, and a new default theme.

Traduction à l’arrache :

Le cycle de développement de la 2.9 a été excitant, et je dois dire qu’il nous a ouvert l’appétit pour la 3.0 qui suivra (probablement au printemps) et qui inclura au moins la fusion de MU (NdT : multi-utilisateurs) au coeur de WordPress et un nouveau thème par défaut.

Voila, bon blogging 😉

Benchmark v8 pour les autres navigateurs.

Article complémentaire du précédent pour les autres navigateurs du marché. Voici que ce que j’ai obtenu :

  • Midori 0.2.2 : 1331
  • Opera 10.10 installé via un petit yaourt -S opera-qt4 : 97.1
  • Epiphany 2.28.2 (même moteur que Midori) : 1328
  • Microsoft Internet Explorer 8.0 dans un Windows XP-Sp3 (sous VirtualBox 3.1.2) : 26.1, soit 66 fois moins que Chromium…

Continuer la lecture de « Benchmark v8 pour les autres navigateurs. »

Pas de langue de bois… Au moins chez Mozilla ;)

Derrière ce titre à rime se base un petit test – qui sert à rien, voila c’est dit pour les ronchons – qui est dérivé d’un propos que j’avais lu il y a environ 2 semaines sur Clubic.

Pour tout dire, l’article qui parlait de la sortie de la 5ième et ultime béta de Mozilla Firefox 3.6 avait un lien vers l’entretien, donc cela m’a rafraîchit un peu la mémoire 😉

C’est surtout ce petit paragraphe qui m’a mis interpellé :

Quels ont été les récent travaux effectués sur le moteur JavaScript TraceMonkey ?

MB : Nous avons opéré deux types de travaux. D’une part la technologie de TraceMonkey a été portée sur mobile. Plusieurs personnes l’ont essayé sur le N900 et ont été très impressionnées par ses capacités. Par ailleurs nous avons affiné TraceMonkey afin qu’il se révèle plus performant pour un usage de tous les jours. Aujourd’hui au travers de plusieurs tests, il apparaît que le moteur JavaScript de Firefox 3.6 est 20% plus rapide qu’au sein de Firefox 3.5. Cependant cela ne reflète pas pour autant les performances réelles observées par les utilisateurs dans leur surf quotidien.

Donc, j’ai pour vérifier cette information récupéré via le site ftp http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/, 3 versions de développement en linux 64 bits :

Une pour Mozilla Firefox pré 3.5.7, la deuxième pour Mozilla Firefox pré 3.6 béta 6, et enfin, une version pour Mozilla Firefox 3.7 pré-alpha1, et je leur ai fait passé ce qui est le test « ultime » des moteurs de Javascript : le « benchmark v8« .

Continuer la lecture de « Pas de langue de bois… Au moins chez Mozilla 😉 »

En vrac’ rapide et libre avant le week-end

Un petit en vrac’ matinal avant un week-end qui s’annonce froid.

  • Sortie de la 5ième et ultime (??) version bêta de Mozilla Firefox 3.6.  Une grosse centaine de correctifs appliqués sur le code source. Ce qui reporte la sortie début 2010 comme je le pensais depuis quelques temps 😉
  • Sortie de la première RC du noyau linux 2.6.33 qui sortira normalement d’ici deux mois et demi environ. Et Linus pousse une petite gueulante : « The two-week merge window is _not_ supposed to be « one day merge window after thirteen days of silence ». In fact, I think that next time around I’ll make the merge window be 11-12 days instead, and people who try to game the system and do a last-minute pull request will get a surprise, and get unceremoniously bumped to 2.6.35 instead. » ce qui donne traduit : « La période de fusion de code de deux semaines n’est pas supposée être ‘un jour d’ajouts après treize jours de silence’. Dans les faits, je pense que la prochaine fois je réduirais la période à 11-12 jours, et les personnes qui essayeront de jouer avec le système et voudront faire des ajouts de dernière minute seront surpris et envoyés sans autre forme de procès dans la liste d’attente jusqu’au 2.6.35 »
  • Arrivée de Mozilla SeaMonkey 2.0.1, avec son habituel lot de correctifs.
  • Encore un nouveau liveCD pour Arch. DwmArch avec le gestionnaire de fenêtre dwm.
  • CtkArchLive propose désormais une iso pour x86_64 mais aussi pour i586. Merci à LinuxFr pour l’info. Miam 😉
  • Arrivée de Gnome 2.28.2 sur Archlinux. Cela fait plaisir de voir ce bon vieux Gnome être mis à jour sans arrachage de cheveux 😉

gnome 2.28.2 sur Archlinux

Allez, bon week-end à toutes et à tous !

WordPress 2.9 pour Noël ?

En tout cas, ce serait un beau cadeau de Noël pour les blogueurs g33k. En effet, en ouvrant ma session wordpress ce matin, j’ai eu l’annonce que WordPress 2.9rc1 était disponible au téléchargement.

Après avoir récupéré l’archive et balancer le contenu de celle-ci sur mon espace ftp, mon blog est passé naso-digitalement à la nouvelle version.

Coté nouveautés ? Je vais citer l’article de WordPress-fr.net qui parle justement des dites nouveautés de cette version 2.9 :

Tout d’abord, côté utilisateur nous pouvons noter les apports et modifications suivants :

* une corbeille va faire son apparition afin de pouvoir récupérer un contenu malencontreusement supprimé. Cela concernera à la fois les pages, les articles, les commentaires et les fichiers attachés (images, PDF, documents divers…). Cette corbeille fonctionnera selon le même principe que celle présente depuis des années dans Windows. Elle autorisera la restauration du contenu sélectionné et aussi sa suppression définitive.
* Un éditeur d’image minimaliste arrive dans WordPress. On pourra retoucher rapidement une image avant la publication telle que la découper, la redimensionner, la faire pivoter… et ce sur toutes les tailles générées ou que sur la vignette par exemple.
* Amélioration de la gestion des images en général.
* L’option qui nous permet de choisir si on veut apparaitre ou non dans les moteurs de recherche sera maintenant disponible dès la phase d’installation de WordPress. Ce qui permettra d’éviter qu’un site “privé” ne soit disponible dans les moteurs de recherche par erreur.
* Les thèmes classic et défaut verront leur champ de commentaire valide XHTML.
* Les commentaires font leur apparition dans les pages du thème “défaut”.
* Le Press-minute a été corrigé de ses bugs.
* Une vignette pourra être attribué à chacun des articles directement, sans passer par les champs personnalisés.
* Soulignons la mise à jour de TinyMCE vers la version 3.2.7

Plein de bonnes choses donc. J’avoue que l’arrivée de la corbeille me fait plaisir. Ainsi que la gestion des images. Vais-je enfin pouvoir me passer de mes comptes flickr et picasa ? 😉

En tout cas, ce qui me fait vraiment plaisir, c’est que depuis septembre 2005, j’ai pu passer sans trop de problèmes de WordPress 1.5 à la 2.9rc1… Plus de 4 ans… Ce qui en dit long sur la pérénité de ce logiciel libre.