« Démarrez facilement une application XulRunner ! »
Le 28 février 2008
Linux
Préambule
Il a déjà été question de XUL dans ce blog, mais je ne connaissais à l’époque que le côté web de cette technologie. Je me suis entre temps intéressé à ses avantages pour le développement d’applications desktop, par l’intermédiaire de XulRunner.
Concrètement, je le rappelle, il existe deux modes de fonctionnement pour le XUL :
- Le premier, le plus simple, consiste à placer des fichiers XUL sur un serveur distant et à y accéder comme à une simple page web. L’avantage est qu’on bénéficie d’une très grande souplesse de fonctionnement, et qu’il est très facile de commencer. L’inconvénient est que beaucoup d’interfaces pour les composants XPCom, qui étendent le fonctionnement de javascript, ne sont pas disponibles pour des questions de sûreté : ainsi, pas de transfert de fichier locaux, pas de drag’n’drop, etc.
- Le deuxième est le chrome : il s’agit là de travailler avec des fichiers locaux qui peuvent être une extension pour firefox, thunderbird etc. ... ou une application standalone par l’intermédiaire du XulRunner qui fonctionne grosso modo comme la machine virtuelle java. L’avantage est que cela donne aux applications XUL leur plein potentiel. L’inconvénient est qu’il est difficile de démarrer un projet XulRunner, car il y a beaucoup de fichiers à créer, et cela demande du temps, d’autant qu’il n’y a pas à l’heure actuelle d’IDE utilisable pour programmer en XUL (mise à part une extension d’Eclipse, mais il faut être fan).
C’est pour cette raison que j’ai conçu un petit script bash dont l’objectif est de faciliter le démarrage d’une application XUL en créant pour vous les bons fichiers, aux bons endroits ... Tout ce que vous avez à faire est de choisir un nom original pour votre application !
Démonstration
J’ai nommé mon script createXulApp, et il se contente de prendre un paramètre, le nom de votre application : en effet, ce nom va être repris un peu partout pour générer les fichiers nécessaires au démarrage de votre application.
Voiçi un exemple d’utilisation, avec le retour de la machine :
$ createXulApp helloworld
Création express d'application XUL - Pierre Quillery 2008
v1 ------------------------------------------------------
Création de l'application helloworld en cours ...
Création de la structure ...
Création du fichier application.ini
Création du fichier chrome.manifest
Création du fichier des préférences Javascript
Création du fichier XUL de base
Configuration de l'application terminée
Essayez maintenant de taper quelque chose comme :
xulrunner helloworld/application.ini
Fin du programme !
$
J’ai ici créé la structure d’une application "helloworld", comme vous vous en doutez. N’hésitez pas à regarder la source de mon script pour mieux comprendre ce qui se passe !
Installation
CreateXulApp
Téléchargez l’archive placée ci dessus où vous le souhaitez, puis ouvrez un terminal et donnez les droits d’exécution au fichier bash. Enfin, copiez le fichier dans les exécutables système à l’aide des commandes :
$ sudo chmod ugo+x ./createXulApp
$ sudo cp ./createXulApp /usr/bin
Vous devriez maintenant pouvoir utiliser la commande directement, et vous pouvez effacer tranquillement le fichier que vous avez téléchargé.
Xulrunner
La fin du programme vous suggère d’utiliser le programme xulrunner ... Encore faut-il qu’il soit installé - sous debian/ubuntu, deux solutions s’offrent à vous, comme souvent :
- un petit
sudo apt-get install xulrunnerdevrait faire l’affaire, mais vous aurez l’ancienne version de xulrunner. - rendez-vous à cette adresse, téléchargez le fichier qui vous convient. Puis décompressez le où bon vous semble.
Une fois qu’il est installé, voyons ce que donne :
$xulrunner helloworld/application.ini
Et voilà :) ! Vous venez de poser les bases de votre nouvelle application XULRunner ... Amusez-vous bien ! Si vous avez des idées d’amélioration pour le script, n’hésitez pas à laisser un petit message.
Documents
Dandelionmood.com a déménagé !
Vos réactions
- chris, le 22 août 2008
Superbe ! j’avais essayé XUL et consort notamment XULrunner il y a qq mois mais le manque de doc et certaines difficultes m’avait rebute la c’est facile reste plus qu’a remplir
bravo et merci
A+ chris


