When I try to save add-ons by right clicking and select ‘save link as’ I’m only offered to save the file as type HTM.
Apparently the issue is exclusive to what is known in Mozilla world as Persona; bona fide extensions can be ‘save link as’ offline installationable with the XPI extension. Digging into this I discovered the following:
Do you mean complete themes or Personas (lightweight themes) that only give the toolbar a background image?https://addons.mozilla.org/firefox/complete-themes/ https://addons.mozilla.org/firefox/themes/
Installed complete themes are stored just like other extensions in the extensions folder in the Firefox profile folder.
If this is about Personas then only the images of the currently installed Persona are stored in the Firefox profile folder.
The background images of the other installed Personas are downloaded once you select them.The list of installed Personas is stored as one of the user set prefs in the prefs.js file in the Firefox Profile Folder in the lightweightThemes.usedThemes pref in JSON object format ({“id”:“#”,“name”:“xxx”,…}).
http://kb.mozillazine.org/Profile_folder_-_Firefox
The first entry of that pref is the currently used Persona.
The images of the currently selected Persona are stored in the lightweighttheme-header and lightweighttheme-footer files in the Firefox profile folder.
So you would have to select all Personas one by one and make a backup copy of those two files.http://kb.mozillazine.org/Themes#Lightweight_theme</blockquote>
SOURCE: Install a Firefox Add-on Manually
Given the seemingly most salient aspect - highlighted above - I theorized that Persona are internet connection dependent. Hypothetically they would break if access to the interwebs was broken. I created a rule for CID in CIS Firewall ruls that blocked all IP in/out from IP Any to IP any Port Any and presti bingo! My themes were ALL broken. Once I reallowed IP traffic for CID eventually the themes began working.
Furthermore, I discovered that he recreates the entire kit & kaboodle found in about:config lightweightThemes.usedThemes preference property which will overwrite what ever modifications made there, e.g., textcolor & accentcolor.
But the about:config preference attribute reinit doesn’t occur on a reload - which is handy - by judiciously enabling / disabling extensions that necessitate a reload before taking affect; all tabs remain open and each retains the individual browsing histories (closing of the browser blows away all the current sessionstate / viewstate associated with each tab).