LibreOffice est une suite bureautique libre et gratuite dérivée du projet "OpenOffice.org". La Document Foundation, développeur principal du projet, a annoncé il y a environ un an qu'il avait entamé des travaux sur la compilation de LibreOffice en WebAssembly (Wasm). Elle a présenté cela comme un autre moyen d'exécuter la suite bureautique open source dans un navigateur Web, ainsi que d'autres environnements. Les choses sont restées calmes depuis ce temps, mais le FOSDEM 2022 a été l'occasion pour l'équipe chargée du portage de présenter ses résultats : une version expérimentale de LibreOffice compilée en WebAssembly (surnommée LOWA).
Le port Wasm utilise actuellement environ 300 Mo pour le téléchargement dans le navigateur et nécessite donc un certain temps avant de pouvoir utiliser le logiciel. Le code lui-même est basé sur la branche principale actuelle de la prochaine version 7.4 de LibreOffice, qui devrait être stable dans le courant de l'année. D'ici là, le port Wasm pourrait aussi faire officiellement partie des versions stables de LibreOffice. Il n'est donc pas encore prêt à être utilisé en production. Étant donné que LibreOffice est une base de code importante, dont certaines parties datent de plusieurs dizaines d'années, il s'agit d'une avancée importante pour WebAssembly.
LOWA est réalisé à l'aide de la chaîne d'outils Emscripten de LLVM, qui est conçue pour traduire du code natif de C ou C++ en JavaScript et Webassembly. Des projets similaires existeraient déjà pour Asm.js ou le soi-disant client natif, qui ont entre-temps été remplacés par Webassembly. Le fait que même une base de code aussi grande et aussi ancienne que LibreOffice, y compris son interface graphique, puisse désormais fonctionner dans le navigateur grâce à Wasm, montre à quel point la technique est désormais avancée. Pour l'équipe de LibreOffice, les travaux sur le port Wasm sont cependant loin d'être terminés.
C'est ce qu'a expliqué l'équipe lors de la présentation au FOSDEM 2022 qui s'est tenu du 5 au 6 février derniers. L'équipe y a également expliqué que le port Wasm utilisait désormais le back-end Qt pour LibreOffice, ce qui a causé beaucoup plus de problèmes que prévu. En outre, les travaux ont donné lieu à quelques autres réflexions ou problèmes à résoudre. L'équipe pourrait ainsi utiliser à l'avenir l'interface WASI (WASI est une interface système modulaire pour WebAssembly axée sur la sécurité et la portabilité) et éventuellement même créer une sorte de back-end Wasm pour le port. L'équipe n'en est toutefois pas encore là.
Par ailleurs, bien que les suites bureautiques fonctionnant dans un navigateur Web ne soient pas nouvelles en soi, pratiquement toutes fonctionnent dans une sorte d'architecture client-serveur ou sont spécifiquement conçues pour fonctionner dans un environnement Web. Plus précisément, le port Wasm de LibreOffice n'a pas encore été conçu comme une alternative à Libreoffice Online et à Collabora Online. Contrairement à ce dernier, le port Wasm n'est pas une application basée dans le cloud, il fonctionne donc en local, ce qui devrait garantir une plus grande confidentialité.
En dehors du fait qu'il s'exécute exclusivement du côté client, il est construit à partir de la même base de code que la version de bureau du logiciel. L'équipe explique également que le port Wasm ne peut pas être aussi vulnérable que n'importe quelle autre page Web statistique. « Le fait même qu'un logiciel aussi complexe puisse être compilé en WebAssembly et que le résultat puisse s'exécuter dans un navigateur à une vitesse raisonnable est une excellente démonstration des capacités de la plateforme », a déclaré un critique.
Source : Version expérimentale de LOWA
Et vous ?
Quel est votre avis sur le sujet ?
Voir aussi
LibreOffice 7.2 Community est disponible avec de nouvelles fonctionnalités et des améliorations de compatibilité, cette version s'accompagne de la prise en charge des processeurs Apple Silicon
LibreOffice New Generation : un nouveau programme de la Document Foundation pour attirer plus de jeunes dans la communauté LibreOffice et leur donner le goût de l'open source
LibreOffice 7.1 Community est disponible et s'accompagne d'une nouvelle boîte de dialogue pour sélectionner la saveur de l'UI, l'aperçu avant impression est maintenant mis à jour de manière asynchrone