Thanks Andrea. I had three issues, maybe you might know how to address these:
1) Any ideas on how to restart into another build? For example if currently running in
nightly.app/exe, and I want to restart that profile into
develeoper.app/exe, the restart mechanism only launches into the same profile, so I had trouble with that.
2) On mac os x, when create system launcher it breaks the update mechanism - reason this is needed is because otherwise you cant "keep in dock", "custom icons", and some other stuff -
http://i.imgur.com/XfRDaw8.png --- a) I copy the Firefox.app, Firefox.app/Contents b) I then copy as "symlink" the Firefox.app/Contents/MacOS, and Firefox.app/Contents/Resources c) I then create in the origianl MacOS folder a shell script d) In original resources folder I create a new icon specific for this profile e) I then copy over the
plist.info but change the execute line to the new one created in "c" and icon to the new one created in "d". --- Now this works, however updates fail to happen, it always tries to download it. The issue is these special paths no should point to original directory as I "symlink"ed it, however they are pointing to the new location. I am going to try "alias"'ing them instead of "symlink"ing them and see if that fixes it. But would you happen to know? If "alias" method doesn't work either, would we be able to land a patch so that it tests if its a symlink/alias and gets the original path?
These are the special paths that get overridden - UpdRootD, XREExeF, XREAppDist, DefRt, PrfDef, profDef, ProfDefNoLoc, ARes, AChrom, APlugns, SrchPlugns, XPIClnupD, CurProcD, XCurProcD, XpcomLib, GreD, GreBinD, ProfLDS, ProfLD. Overriding them to point to the original path with this method does not fix it -
http://stackoverflow.com/a/28357788/1828637
3) The last one was caching issues when cloning a profile. I discovered jpm uses firefoxl-profile-js module, so I'm going to try that -
https://github.com/saadtazi/firefox-profile-js/issues/56 - but do you have any experience with cloning profiles?