vous trouverez à cette adresse un fichier zip contenant le code de mon lanceur portable (code NSIS) pour le logiciel de synchronisation Unison.
Ce code est le résultat de mon travail pour rendre portable mes applications préférées (Unison, GVIm et notecase pour l'instant). J'ai petit à petit transformé le code original de John T. Haller pour obtenir une sorte de modèle permettant de générer le plus facilement possible d'autre version portables de prorammes.
Pour se faire, le code s'articule autour de :
- une librairie de macros qui regroupe les principales actions nécessaires pour lancer une application protable depuis un PC hôte
- une librarie permettant la localisation de ce code (en fait une version recopiée de la librairie Framakey)
- le code du lanceur lui-même
- un fichier INI
Ces fichiers sont commentés donc normalement vous devriez comprendre assez facilement leur structure (les commentaires sont en franglais

Mon objectif est d'essayer à partir de cette structure de créer un lanceur réutilisable pour plusieurs application, les seules opérations à mettre en oeuvre seraient un parmètrage de la section "constantes" du code du lanceur (peut-être à terme utiliser pour se faire un fichier INI).
Aujourd'ui, j'ai intégré trois méthodes de "portabilisation" :
- définition de variables d'environement permettant de modifier la localisation des fichiers de configuration et/ou du PATH
- définiton de paramètre de ligne de commande permettant notamment de modifier la localisation des fichiers de configuration du programme
- le remplacement sur le PC hôte de fichiers de configuration par ceux de la clé (cas de Cornice ou Inkscape par exemple)
Mes idées à court terme sont de :
- rajouter une gestion des clés de registre (je travaille pour l'instant à la portabilisation de RapidSVN)
- améliorer le traitement des variables d'environement pour éviter d'avoir à modifier le code du lanceur pour les spécifier
J'ai également amélioré un peu (du moins j'espère

- la recherche des fichiers INI, config et de l'executable en donnant un peu plus de souplesse à l'utilisateur pour organiser la stucture des fichiers (en fait je n'ai pas la même organisation que celle de la framakey, donc j'ai crée une petite macro me permettant aisément d'adapter les lanceurs Framakey à ma structure)
- le comportement des fichiers INI (par rapport à celle de JT Haller) : maintenant je peux uniquement renseigner les paramètres que je souhaite et je suis autorisé à me tromper de temps en temps)
Je soumets donc ces idées et le code correspondant à votre sagacité. Merci d'avance pour vos conseils !
-
pir
- Messages : 12
- Géo : Chine