FramafoxPortable Lanceur v2.0.1.0
======================================
Ecrit par fat115 d'après une idée originale de John T. Haller

Website: http://www.framakey.org/


Changelog FramafoxPortable
=========================
Réécriture complète du lanceur pour Framafox 3.x
Modifications mineures pour Framafox 4.x
Réécriture pour Framafox 6 et suivants : AutoHotkey


APropos FramafoxPortable
=========================
Le lanceur FramafoxPortable vous permet d'utiliser Framafox à partir d'un support amovible dont la lettre change d'un ordinateur à un autre.

Trois types de lancement possibles : à partir d'une clé USB, à partir d'un média en lecture seule, à partir d'un emplacement réseau avec sauvegarde des préférences dans un dossier personnel.
Pour passer d'un type à l'autre, il suffit de lancer le petit utilitaire \Other\Tools\Selecteur.exe. Celui-ci se chargera de copier le bon lanceur à la racine de l'application.
Vous pouvez le faire manuellement en copiant un des trois lanceurs présents dans le dossier et en le renommant FramafoxPortable.exe
Les cas sont les suivants :
- FramafoxPortable.exe => c'est le lanceur classique pour clé USB.
- FramafoxPortable_N.exe => c'est le lanceur spécifique pour lecteur réseau (Network) avec sauvegarde des préférences.
- FramafoxPortable_RO.exe => c'est le lanceur spécifique pour média en lecture-seule. Les préférences ne sont pas enregistrées.
En pratique les deux derniers lanceurs n'écrivent pas dans le dossier FramafoxPortable ou un de ses sous-dossiers.

Les trois versions font une vérification de présence du fichier user.js dans le profil. S'il est absent ou plus ancien que celui présent dans App\DefaultData, ce dernier est copié dans le profil avant le lancement.
Il permet d'outrepasser certains réglages de prefs.js quelles que soient les valeurs renseignées par les utilisateurs.
Cela permet par exemple de désactiver les mises à jour en cas d'utilisation des versions "lecture seule" et "réseau".
A titre d'exemple, en complément du fichier user.js de la version portable classique, le dossier App\DefaultData contient deux fichiers user_N.js et user_RO.js.
Pour plus d'explications, voir les préférences incluses dans les différents fichiers js de l'archive App\Framafox\omni.jar et la base de connaissances Mozilla : http://kb.mozillazine.org/Knowledge_Base

Extensions et plugins
=====================
Framafox détecte automatiquement les extensions et plugins placés dans les sous-dossiers suivants (au besoin, les créer) :
App\Framafox\extensions\
App\Framafox\plugins\
Data\settings\extensions\
Data\settings\plugins\

Placés dans App\Framafox, ils seront disponibles pour tous les utilisateurs (utile pour les versions non classiques).
Placés dans Data\settings, ils seront disponibles au seul utilisateur de ce profil (version classique donc).
Pour les plugins, il suffit généralement de copier la DLL à partir d'une installation classique de Firefox (%windir%\system32\Macromed\Flash\NPSWF32.dll pour Flash par exemple)
Pour les extensions, il faut décompresser le fichier xpi dans un dossier portant un nom spécifique à l'extension. Ce nom peut être trouvé dans le fichier install.rdf de l'extension.
Il s'agit de l'id indiqué dans la partie install-manifest de la Description ( {dc572301-7619-498c-a57d-39143191b318} pour TabMixPlus 0.3.8.5 par exemple).

Framafox détecte également les plugins installés sur l'ordinateur hôte (sauf si la fonctionnalité est désactivée via le user.js).

userChrome.css
=====================
Si un fichier userChrome.css est placé dans App\DefaultData\chrome\, il sera copié à chaque lancement dans le profil de l'utilisateur.
Cela permet de déployer des modifications graphiques pour tous les utilisateurs.
Inconvénient : il écrasera un éventuel fichier mis en place par les utilisateurs.
Un fichier exemple userChrome_N.css est fourni qui désactive les options de mise en place d'une image en tant que papier-peint du bureau.

Fichiers source
===============
FramafoxPortable.ahk
Lang.ini
FramafoxPortable.ini


LICENCE
=======
Voir Licence.txt


CONFIGURATION FramafoxPortable.ini 
=================================
Le lanceur FramafoxPortable recherchera un éventuel fichier FramafoxPortable.ini dans son répertoire.
Si les options par défaut vous conviennent, il n'y a pas lieu de l'utiliser.
Le format du fichier est le suivant :

[FramafoxPortable]
ApplicationDirectory=App\Framafox
ApplicationDirectoryExecutable=Framafox.exe
SettingsDirectory=Data\settings
NetworkSettingsDirectory=P:\Profile\Framafox
CopyCustomProfile=true
AdditionalParameters=
DisableSplashScreen=false

ApplicationDirectoryDirectory : nom du sous-dossier contenant les fichiers de l'application, relatif à l'emplacement du lanceur.
ApplicationDirectoryExecutable : nom de l'exécutable à utiliser par le lanceur.
SettingsDirectory : nom du sous-dossier contenant le profil personnel, relatif à l'emplacement du lanceur. Les éventuels plugins sont à placer dans le sous-dossier plugins de celui-ci.
NetworkSettingsDirectory : en cas d'utilisation de la version "réseau", chemin absolu vers le dossier dans lequel sera stocké le profil de chaque utilisateur
CopyCustomProfile : true (valeur par défaut), indique au lanceur d'utiliser une copie du profil inclus dans SettingsDirectory, false permet d'utiliser une version vierge. Utilisé uniquement par les version "lecture seule" et "réseau".
AdditionalParameters : les paramètres additionnels à passer à l'application.
DisableSplashScreen : mettre à true pour désactiver l'écran de démarrage.

Toutes ces valeurs sont facultatives. Si vous désirez simplement désactiver le splashscreen, il suffira de mettre le contenu suivant dans le fichier ini :
[FramafoxPortable]
DisableSplashScreen=true

Toute valeur non vide sera prise en compte.

A propos des instances multiples :
==================================
Le comportement par défaut du lanceur est de refuser les instances multiples, notamment l'utilisation conjointe d'une version locale et d'une version portable.
Par contre vous pouvez tout à fait utiliser Firefox simultanément avec Framafox.


