Depuis FF4 et TB5, seul le fichier omni.jar est présent, la section JarTarget n'est donc plus nécessaire.
Depuis Rebranding 0.4, la gestion est totalement différente, je laisse tout de même pour les curieux (voir à la fin).

Pour personnaliser, il suffit de modifier le fichier identity.ini dans Other\Tools

La section Main contient les noms à utiliser et la licence
La section Delete répertorie les fichiers à effacer pour le rebranding
Et enfin la section PEFilesToPatch répertorie les fichiers exe et dll à patcher pour faire disparaitre les mentions "Firefox".
Celles-ci seront remplacées par le nom de l'application portable.
L'ancienne section Copy est remplacée par une archive 7z (cf Other\Source\ResRebrand\files.7z) intégrée dans l'exécutable Rebranding.exe.

Le reste du rebranding est fait grâce à une extension qui est automatiquement activée et qui reste invisible aux utilisateurs. L'extension est intégrée dans l'exécutable Rebranding.exe comme l'archive précédente. Elle est composée des 4 fichiers chrome.manifest, install.rdf, appicon.ico et rebranding.jar dispos dans Other\Source\ResRebrand\

De manière à réduire la taille du paquet et à accélérer un peu le processus de mise à jour, seuls les diffs binaires sont sauvés pour les exécutables patchés. Ceci permet de faire passer l'archive FramaBKUp.7z de 10 ou 11Mo à moins de 400ko.
Par contre ça consomme pas mal de mémoire lors du traitement du fichier xul.dll, environ 250Mo pour tout dire.

L'archive omni.jar n'est plus modifiée ce qui permet d'éviter le format tordu de zip fait par les devs Mozilla.
Anolis Resourcer n'est plus utilisé, tout est fait en AutoHotkey et avec quelques appels de DLL Windows. Voir les fichiers ChangeIcon, rescompile et VersionInfo dans Other\Source\AhkIncludes. Cela procure une meilleure vitesse.

S'il y a des curieux qui veulent plus d'infos, rendez-vous sur le forum


Quelques explications sur les 3 sections JarTarget, JarAction, JarParams
------------------------------------------------------------------------

C'était le seul moyen de conserver une syntaxe à peu près lisible.

La syntaxe initiale (avec une seule section) était :
Jar1=chrome\browser.jar$$Copy$$Images\about.png@@content\branding\about.png||Images\icon48.png@@content\branding\icon48.png
Jar2=chrome\toolkit.jar$$Switch$$content\global\aboutRights.xhtml@@content\global\aboutRights-unbranded.xhtml
Pas forcément trivial ;)

[JarTarget]
; liste des fichiers jar à modifier.
; TargetX : nom du fichier jar relativement au dossier de base de l'application (ex : chrome\browser.jar)
; Important : utiliser _Locale_ pour faire référence à la locale définie dans Main

[JarAction]
; ActionX : action à réaliser sur l'archive TargetX ci-dessus.
; Valeurs valides :
;		Copy : copie d'un fichier vers l'archive (jokers autorisés).
;					Si la destination est un répertoire, le backslash final est obligatoire.
; 		Switch : permutation de 2 fichiers au sein de l'archive
; 		Delete : effacement d'un fichier de l'archive (jokers autorisés, dossiers non traités)

[JarParams]
; FilesX : paramètres de l'ActionX ci-dessus sous la forme Element1@@Element2
; séparateur : @@
; pour l'action Copy, Element1 est la source, Element2 est la destination
; pour l'action Switch, il s'agit des deux fichiers à permuter
; pour l'action Delete, il s'agit du nom du fichier, le séparateur n'est pas utilisé.


Exemples :
----------
Target1=chrome\browser.jar
Action1=Copy
Files1=Images\*.png@@content\branding\

Résultat : copiera tous les fichiers PNG présents dans
ApplicationPortable\Other\Tools\Images dans le sous-dossier content\branding\
de l'archive ApplicationPortable\App\nomappli\chrome\browser.jar


Target2=chrome\_Locale_.jar
Action2=Delete
Files2=locale\branding\*.dtd

Résultat : en supposant que la locale soit fr, les fichiers *.dtd du sous-dossier
locale\branding\ de l'archive ApplicationPortable\App\nomappli\chrome\fr.jar
seront effacés.
