PROJET AUTOBLOG


FredericBezies

source: FredericBezies

⇐ retour index

PaleMoon, le fork de Mozilla Firefox, est-il à la hauteur de son parent « connu » ?

mercredi 27 mai 2015 à 19:09

Suite aux derniers scandales sur Mozilla Firefox, certains zélotes – à côté de qui Richard Matthew Stallman serait un affreux promoteur du logiciel non libre – après avoir préparé le bûcher sacrificiel font la promotion d’une version dérivée du nom de PaleMoon, en parallèle GNU IceCat ou Debian IceWeasel.

Je concède que la politique de Mozilla Firefox est sujette à caution, mais il faut noter que certaines personnes tombent facilement dans le triptyque « On lèche, on lâche, on lynche » profitant d’une amnésie bien opportune.

À l’origine ce fork se résumait à une recompilation du code source de Mozilla Firefox avec des options d’optimisation agressives (j’ai toujours été dubitatif sur l’apport réel en vitesse). Palemoon est désormais plus développé : outre le fait qu’il exclut l’interface Australis (introduite pour Mozilla Firefox 29), il choisit le code à intégrer, dixit la page d’information dédiée du site :

Pale Moon will be released independent of Mozilla Firefox, as it uses a different source code and release plan, and is not affiliated with or subject to either code releases or publication plans of the Mozilla Corporation; the Mozilla rapid release schedule is not followed. Pale Moon is an independently developed product based on Firefox, but will most certainly not follow Firefox to the letter.

Ce qu’on peut traduire par :

Pale Moon sera publié indépendamment de Mozilla Firefox, car il utilise un code source et un suivi de publications différents, et n’est ni affilié ni soumise aux publications et au code source de la Mozilla Corporation ; le calendrier de publication rapide de Mozilla ne sera pas suivi. Pale Moon est un produit développé indépendamment basée sur Firefox, mais ne suivant absolument pas Firefox à la lettre.

J’ai donc voulu compiler le dernier code source disponible en ce 27 mai 2015, la version 25.4.1, version rendue disponible le 10 mai 2015.

Pour compiler cette version de Palemoon, j’ai simplement suivi, dans un premier temps, les instructions de compilation en prenant les conseils du wiki de Mozilla pour mon ArchLinux.

De plus, j’ai pu apprendre via cette page quel était le fichier .mozconfig à utiliser.

Ce qui me donne le fichier suivant, en rajoutant les spécificités liées à mon ArchLinux, en vérifiant bien que la ligne objdir pointe sur un emplacement correct :

# Archlinux :

mk_add_options PYTHON=/usr/bin/python2
mk_add_options AUTOCONF=autoconf-2.13

# Please note the restrictions on official branding when using this line.
ac_add_options –enable-official-branding
export MOZILLA_OFFICIAL=1

mk_add_options MOZ_CO_PROJECT=browser
ac_add_options –enable-application=browser

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

ac_add_options –disable-installer
ac_add_options –disable-updater

ac_add_options –disable-tests
ac_add_options –disable-mochitests
ac_add_options –disable-debug

ac_add_options –enable-strip
ac_add_options –enable-jemalloc
ac_add_options –enable-optimize= »-O3 -msse2 -mfpmath=sse »

ac_add_options –x-libraries=/usr/lib

J’ai donc fait extraire le code source dans un répertoire spécifique (à noter qu’il faut utiliser 7zip pour extraire le code), puis j’ai copié le contenu ci-dessus dans un fichier .mozconfig. Il ne faut cependant pas oublier d’appliquer un chmod, à savoir chmod -R 777, pour que le code source soit utilisable. Cool ! :(

j’ai lancé la compilation avec un make -f client.mk build et j’ai attendu. J’ai eu droit à un bug assez rapidement. J’ai donc rajouté l’option –disable-elf-hack pour que le processus de compilation continue.

Cependant, je n’ai pas réussi à faire aller plus loin la compilation. Je me suis donc retourné vers le paquet AUR disponible. Les dépendance semble indiquer un retard sur un point technique par rapport à la version « officielle » : l’utilisation des paquets gstreamer 0.10 en lieu et place des versions 1.x, du moins pour la version précompilée, depuis au moins Mozilla Firefox 30.0, sorti en juin 2014.

La compilation depuis le code source du dépot git s’étant bien passée, j’ai pu enfin obtenir un PaleMoon « maison » après une bonne heure et demie d’attente.

J’ai installé en parallèle d’une version nightly (tant que Mozilla Firefox existe, donc pour environ deux ans avec un peu de chance et qui me sert au quotidien), une version compilée par les serveurs d’Archlinux. En dehors du fait que j’ignore si les failles de sécurité corrigées dans le code source de Mozilla Firefox le sont dans le code de PaleMoon (il faut espérer qu’un port des correctifs soit effectif), j’ai voulu comparer quelques points précis :

  1. Le niveau de compatibilité avec le HTML5 et les CSS3
  2. Le support de l’audio et de la vidéo sans passer par Flash

Pour la taille de l’installation, c’est comme les concours de pénis entre gamins immatures (en gros, jusqu’à 25 ans) pour savoir qui a le plus long appendice caudal. Donc inutile.

Sur le premier point, je suis passé par les sites html5test et Css3test. Sur le deuxième point, je suis passé par Bandcamp, Youtube et Dailymotion. Les deux navigateurs utilisant des profils fraichement créés pour l’occasion.

Si vous n’avez pas vu la vidéo, voici les résultats. Pour les tests chiffrés avec Mozilla Firefox 38.0.x :

Et avec PaleMoon 25.4.1 :

Pour les sites ?

Mozilla Firefox 38.0.x :

Palemoon 25.4.1 :

Sur ce dernier point, c’est vraiment anecdotique, car l’écrasante majorité des internautes installera l’usine à faille de sécurité Adobe Flash sans chercher à comprendre.

Je dois dire que je ne m’attendais pas à un tel retard sur le plan purement technique de PaleMoon. Évidemment, la plupart des utilisateurs n’y fera pas attention.

Mais pour l’utilisateur un peu avancé, PaleMoon n’est pas une solution viable si on veut un support avancé des technologies de la toile. Après, libre à chacun de trouver le navigateur qui convient le mieux.