Les codeurs de Firefox inspirés par Isaac Asimov et Philip K. Dick ?

En tout cas, on pourrait le penser. A partir de la future version béta 5 (la béta 4 étant déjà gelée au niveau du code) de Firefox 3.0, il y a un nouvel « oeuf de Paques » dans Firefox :

Il suffit d’entrer dans la barre d’adresse (sans les guillemets) « about:robots » :

Un nouvel about: !

Voici ce que donne une traduction du texte :

Bienvenue, humains!

Nous sommes venus à vous en paix et avec des bonnes intentions!

* Les robots ne peuvent blesser un être humain, ou par leur inaction, laisser un humain être blessé.
* Les robots ont vu des choses que vous ne voudriez pas croire.
* Les robots sont vos camarades de plastiques avec qui vous pouvez jouer.
* Les robots ont des postérieurs en métal étincellant qui ne peuvent pas être mordus.

Et ils ont un plan.

La première remarque me fait immanquablement penser aux lois de la robotique d’Isaac Asimov. La deuxième phrase me fait penser à une scène du film Blade Runner : cf la capture d’écran ci-dessous.

Blade Runner

Pour les autres, mieux vaut se reporter au bogue de cet ajout : le bogue 417302.

Une nouvelle page du « Mozilla Book » pour Firefox 3 !

Je ne m’en suis aperçu qu’aujourd’hui, mais depuis début janvier, la page « biblique » de Mozilla a changé son texte.

Quand on entre « about:mozilla » (sans les guillemets) dans la barre d’adresse, un texte « prophétique » est affiché. La dernière datait de la sortie de Firefox 1.0, donc en gros un peu plus de 3 ans.

Livre de Mozilla 11:9

Voici le nouveau texte :

« Mammon slept. And the beast reborn spread over the earth and its numbers grew legion. And they proclaimed the times and sacrificed crops unto the fire, with the cunning of foxes. And they built a new world in their own image as promised by the sacred words, and spoke of the beast with their children. Mammon awoke, and lo! it was naught but a follower.

from The Book of Mozilla, 11:9
(10th Edition) »

La traduction :

« Mammon dormait. Et la bête ressucitée se répandait au dessus de la Terre et ses adeptes devenaient légion. Et ils proclamèrent le temps et sacrifièrent les récoltes sur le feu, avec la ruse des renards. Et ils ont construit un nouveau monde à leur image comme promis dans les écrits sacrés et parlèrent de la bête avec leurs enfants. Mammon se réveilla et las! Il n’était plus qu’un suiveur.

Dans le livre de Mozilla 11:9 (10ième édition) »

Quelques clés :

  • Mammon = Internet Explorer
  • bête = mozilla, symbolisé par un dinosaure
  • écrits sacrés = le code source de Mozilla Firefox
  • 11:9 = 9 novembre, en 2004, date de sortie de Mozilla Firefox 1.0
  • 10ième édition = 10 ans que le code source de ce qui était le code de Netscape 5 a été ouvert

Quand au sommeil, cela doit être lié à la longue sieste d’internet Explorer, qui n’a pas bougé d’un iota entre sa version 6 (en 2001) et sa version 7 (en 2006).

Vers une cinquième béta pour Firefox 3 ?

Ce matin, ayant fait recompiler le code source fraîchement mis à jour du tronc de Firefox, j’ai eu une « mauvaise » surprise, à laquelle je m’attendais un peu : le tronc est maintenant étiquetté 3.0b5pre.

Capture d'écran d'un minefiled pré-3.0 Béta 5

Oui, une béta 5 a été rajoutée à la feuille de route de Firefox. J’ai trouvé le pourquoi de cette nouvelle béta sur le blog des développeurs : trop de bogues à très haute (P1) et haute (P2) priorité n’ont pas été corrigés…

Les niveaux de priorités allant de P1 à P5 pour les codeurs du logiciel.

En effet, au moment où je rédige ce billet, il y a encore près de 300 bogues P1 et P2 listés comme bloquant la sortie de Firefox 3

Apparemment – et si j’ai bien compris le billet du blog des développeurs – cette beta aurait un cycle de développement 15 jours, autant dire que seuls les bogues ultra-prioritaires seront dans la ligne de mire, avec les régressions éventuelles qui pourraient s’incruster.

Je pense – et je peux très bien me tromper – que cela risque d’influer sur certains autres logiciels libres, comme la future version LTS d’Ubuntu, je parle de la Hardy Heron.

Sans vouloir jouer les « Madame Irma », je sens que les développeurs d’Ubuntu, pour éviter de se retrouver avec une version trop ancienne de Firefox 3 dans leur version « finale », vont légèrement décalé la sortie, comme jadis pour la Dapper Drake qui était passée du mois d’Avril au mois de Juin 2006…

Seul l’avenir me dira si je me trompais ou pas… Car publier une distribution supposée être supporté au minimum durant 3 ans avec un navigateur en béta4… 😉

Quoi de neuf dans SeaMonkey ? – Première partie

SeaMonkey est le successeur de la suite Mozilla. Si actuellement, le projet est en version 1.1.7 et utilise le même coeur que Firefox 2.0.0.11 (à savoir une version de gecko 1.8.1), la version de développement, la 2.0alpha1 (enfin, plutôt une pré-alpha) emploit une version de développement de Gecko 1.9, coeur du futur Firefox 3.0.

J’ai donc lancé la compilation sur mon ArchLinux, avec le .mozconfig suivant :


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

mk_add_options MOZ_CO_PROJECT=suite
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@

ac_add_options --enable-application=suite
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-mochitest
ac_add_options --disable-updater
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --enable-optimize="-Os -march=athlon64 -w -pipe"
ac_add_options --enable-strip

Dans cette première partie, je vais me consacrer à la partie navigateur du logiciel. Coté moteur d’affichage, rien à dire, c’est la même chose que pour les préversions de Firefox 3. Bref, un moteur de qualité 😉

En ce moment, l’équipe de SeaMonkey s’attache à recoder l’ancien panneau de préférences pour profiter de technologies plus récentes. Cette page du wiki de Mozilla explique le pourquoi du processus. Le but étant d’avoir quelque chose de plus puissant en arrière plan.

Panneau de préférences en recodage

Contrairement à Firefox, SeaMonkey conserve les deux thèmes qui ne s’intègre pas franchement dans les interfaces des OS : Classic (qui fait penser à la période Netscape 4) et Modern.

infos technique de SeaMonkey avec le thème classique

Seamonkey avec le thème modern

A noter qu’au premier démarrage, un outil propose d’importer les données de Thunderbird si celui-ci est présent.

L'outil d'import de données au premier lancement de Seamonkey

La suite ? Le client courrier et le client IRC. Dès que possible 😉

Firefox 3.0 béta 2 est sorti.

Tout est résumé dans le titre. Et selon le blog « MozillaDeveloper« , voici les principales nouveautés :

  • De nombreuses améliorations sur le plan de la sécurité (meilleure identification visuelle des sites « sécurisés », intégration de l’antivirus dans le gestionnaire de téléchargement et plein d’autres choses.
  • Gestionnaire de mots de passe amélioré, installation des extensions simplifiée, nouveau gestionnaire de téléchargement
  • Meilleure intégration visuelle pour Windows, MacOS-X et Linux
  • Barre d’adresse visuellement améliorée, signets intelligents
  • Correction d’environ 330 sources de fuites mémoire.

Attention, cette version étant encore un béta, mieux vaut l’installer UNIQUEMENT que si l’on sait où l’on s’aventure.

Pour la télécharger, il suffit d’aller sur cette page : http://www.mozilla.com/en-US/firefox/all-beta.html

Arrivée de Firefox 2.0.0.10.

Ce matin, en effet l’habituel sudo aptitude update && sudo aptitude dist-upgrade, j’ai pu lire ceci :

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Lecture de l'information d'état étendu
Initialisation de l'état des paquets... Fait
Construction de la base de données des étiquettes... Fait
Les paquets suivants seront mis à jour :
firefox firefox-dev firefox-gnome-support libpcre3 libpcrecpp0
openoffice.org openoffice.org-base openoffice.org-calc
openoffice.org-core openoffice.org-draw openoffice.org-evolution
openoffice.org-gnome openoffice.org-gtk openoffice.org-impress
openoffice.org-math openoffice.org-writer python-uno
17 paquets mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de télécharger 73,0Mo d'archives. Après dépaquetage, 20,5ko seront utilisés.
Voulez-vous continuer ? [Y/n/?] y

Donc, après avoir sauté la version 2.0.0.9, Ubuntu propose la version 2.0.0.10 de Firefox. Que propose la version 2.0.0.10 ? La correction de 3 failles de sécurités, de niveau haut : les billets MFSA 2007-37 (lié à un problème de gestion de fichiers .jar), le billet MFSA 2007-38 (corruption de données en mémoire) et le billet MFSA 2007-39 (lié à une histoire de spoofing).

Maintenant, pour les personnes utilisant Firefox 2.0.0.x, la mise à jour devrait être proposée d’ici peu.

Ce qui arrivera visuellement dans Firefox 3.0 béta2.

Je sais, vous allez me dire : mais la béta 1 n’est pas encore sortie.

Je suis d’accord, mais il semble bien que le code de la version 3.0 béta1 de Firefox soit « gelé ». En tout cas, pas le moindre code semble avoir été modifié depuis le 8 novembre dernier.

En ce qui concerne Firefox 3.0 béta2, une des « principales » fonctionnalités, ce sera l’arrivée d’un thème « natif » pour les versions unix (linux, BSD libres) de Firefox. En clair, un thème qui s’intègrera mieux dans l’interface de Gnome.

Un bug spécifique a été entré qui porte le doux nom de « Free Gnomestripe« .

Gnomestripe est le nom de code du thème pour les unix, comme Winstripe l’est pour Windows et Pinstripe pour MacOS-X.

Bien que ce soit encore en cours de mise en place, la différence visuelle est bien présente et une page résume ce qui a été fait et ce qui reste à faire.

L'interface de Firefox 3.0 beta 1 pour les unix

L'interface de Firefox 3.0 pré-beta2 pour les unix

Normalement, la version béta 1 de Firefox 3 devrait pointer le bout de ses octets d’ici quelques jours. La béta2 ? 4 semaines après, donc, avec un peu de chance, pour les environs de noël 2007 ? Je pense que la version 3.0 finale ne sortira pas avant mars 2008… Estimation pifométrique, bien entendue 😉

Et pour en savoir plus sur la sortie de Firefox 3.0 béta1, je ne saurais trop conseiller cet article de BeFox : http://www.befox.be/firefox-3/firefox-3-qu-en-est-il-reellement/

C’est long de compiler un firefox ?

Compiler le code source de firefox, ce n’est pas trop compliqué, surtout si l’on suit les instructions fournies par le wiki des développeurs de la Fondation Mozilla.

< Mode troll de la mort qui tue, quoique…>
Même si mettre en place l’environnement de compilation sous des Unix (Linux, BSD libres, Solaris et MacOS-X) est largement plus simple que sous Windows 😉
</ Mode troll de la mort qui tue, quoique…>

Bref, une fois l’environnement de compilation mis en place, et le code source récupéré via CVS, on peut utiliser le .mozconfig suivant (Attention, fichier adapté pour la compilation du tronc, ou du code de la future version Beta 1 de Firefox).

Si vous désirez récupérer le code de Firefox 3.0 beta 1 pour le compiler, en gardant à l’esprit que ce n’est toujours qu’une version candidate à la version beta 1 officielle.

cvs co -r FIREFOX_3_0b1_RELEASE mozilla/client.mk mozilla/browser/config

Ensuite, on copie le .mozconfig suivant dans le répertoire .mozilla :

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

export MAKEOPTS= »-j2″

. $topsrcdir/browser/config/mozconfig

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

ac_add_options –enable-default-toolkit=cairo-gtk2

ac_add_options –enable-strip
ac_add_options –disable-updater
ac_add_options –disable-mochitest

On récupère le code source :

make -f client.mk checkout

Enfin, on fait une copie du code source récupéré :

cd ..
tar cvf moz-fox.tar mozilla/ ; bzip2 -vv9 *.tar

On retourne dans le répertoire du code source, et on lance la compilation en chronométrant l’ensemble :

cd mozilla
time make -f client.mk ; make -C browser/installer

Une fois la compilation finie, on trouvera un fichier .zip ou .tar.bz2 contenant le firefox recompilé ne demandant plus qu’à être testé 😉

Pour donner un exemple : AMD Sempron 3100+ épaulé avec 1,5 Go de mémoire vive, gcc 4.2 et Ubuntu Linux 7.10 AMD64 :


real 46m28.493s
user 36m30.177s
sys 4m10.656s

Pour le support du compilateur gcc 4.2, j’ai rajouté les lignes suivantes dans le .mozconfig :


export CC=gcc-4.2
export CXX=g++-4.2

Je sais que c’est long, mais au moins, on voit le travail nécessaire pour la compilation d’un navigateur récent et au code moderne 😉

Vers la sortie de Gran Paradiso Beta 1 ?

Il semblerait que la prochaine version de développement de Firefox 3, alias Gran Paradiso sera une béta 1, et non une alpha9.

Pourquoi ? Pour deux choses au moins :

  • Le bug 401741
  • L’about d’une version compilée récemment : Build identifier: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9b2pre) Gecko/2007110720 Minefield/3.0b2pre

D’ailleurs, si on regarde les commentaires du bug 401741, on peut lire :

This was landed on the GECKO190_20071106_RELBRANCH at 2007-11-06 15:46 PST.

Il suffit d’entrer la commande suivante dans un terminal, en se basant sur un environnement de compilation permettant de construire Mozilla Firefox ou encore Mozilla Thunderbird :

fred@fredo-gutsy:~/download$ cvs co -r GECKO190_20071106_RELBRANCH mozilla/client.mk mozilla/browser/config
U mozilla/client.mk
cvs checkout: Updating mozilla/browser/config
U mozilla/browser/config/mozconfig
U mozilla/browser/config/version.txt
fred@fredo-gutsy:~/download$ cat mozilla/browser/config/version.txt
3.0b1

3.0b1 ? 😉

D’ici quelques jours – une grosse semaine ? – la première béta de Firefox 3 sortira enfin… Mieux vaut tard que jamais, après tout. Il est vrai que la version 9.5 d’Opera est arrivé en béta il y a une grosse quinzaine de jours.

Vrac’ons librement ;)

Un petit « en vrac » consacré au logiciel libre.

C’est tout pour aujourd’hui 😉