mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-12 21:05:36 +00:00
Firebird Installer Component XPI Install Scripts, default installer wizard ini files, and installer configuration script.
This commit is contained in:
parent
7d49522cbb
commit
2b634ab707
0
browser/installer/windows/abe.jst
Normal file
0
browser/installer/windows/abe.jst
Normal file
41
browser/installer/windows/adt.jst
Normal file
41
browser/installer/windows/adt.jst
Normal file
@ -0,0 +1,41 @@
|
||||
var err = initInstall("Developer Tools", "Developer Tools", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
// JavaScript Debugger
|
||||
addFile("Venkman Service",
|
||||
"bin/components/venkman-service.js",
|
||||
getFolder("Components"),
|
||||
"");
|
||||
|
||||
addFile("Venkman Chrome",
|
||||
"bin/chrome/venkman.jar", // jar source folder
|
||||
getFolder("Chrome"), // target folder
|
||||
""); // target subdir
|
||||
|
||||
registerChrome(PACKAGE | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "content/venkman/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "skin/modern/venkman/");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "locale/en-US/venkman/");
|
||||
|
||||
// DOM Inspector
|
||||
var fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
err = addDirectory("", "$Version$", "bin", fProgram, "", true);
|
||||
logComment("addDirectory: " + err);
|
||||
|
||||
addFile("Inspector Command Line Handler",
|
||||
"bin/components/inspector-cmdline.js",
|
||||
getFolder("Components"),
|
||||
"");
|
||||
|
||||
var jarFolder = getFolder("Chrome", "inspector.jar");
|
||||
registerChrome(PACKAGE | DELAYED_CHROME, jarFolder, "content/inspector/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, jarFolder, "skin/modern/inspector/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, jarFolder, "skin/classic/inspector/");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, jarFolder, "locale/en-US/inspector/");
|
||||
|
||||
err = getLastError();
|
||||
if (err==SUCCESS)
|
||||
performInstall();
|
||||
else
|
||||
cancelInstall(err);
|
544
browser/installer/windows/browser.jst
Normal file
544
browser/installer/windows/browser.jst
Normal file
@ -0,0 +1,544 @@
|
||||
function registerProgramFolderKey(winreg, fFolderPath)
|
||||
{
|
||||
var subkey;
|
||||
var err;
|
||||
|
||||
/* set the Program Folder Path in the Mozilla key in the Windows Registry */
|
||||
winreg.createKey("SOFTWARE\\$CompanyName$","");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "CurrentVersion", "$UserAgent$");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$";
|
||||
winreg.createKey(subkey,"");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "Program Folder Path", fFolderPath);
|
||||
}
|
||||
|
||||
function createShortcuts()
|
||||
{
|
||||
var subkey;
|
||||
var valname;
|
||||
var szStartMenuPrograms;
|
||||
var szStartMenu;
|
||||
var szFolderDesktop;
|
||||
var szFolderQuickLaunch;
|
||||
var szFolderSendTo;
|
||||
var szFolderAppData;
|
||||
var szStartupFolder;
|
||||
var winreg;
|
||||
var fWindows;
|
||||
var fTemp;
|
||||
var fProgram;
|
||||
var fDefShortcuts;
|
||||
var fileExe;
|
||||
var fileReadme;
|
||||
var fileLicense;
|
||||
var scExeDesc;
|
||||
var scReadmeDesc;
|
||||
var scLicenseDesc;
|
||||
var scProfileDesc;
|
||||
var scProfileDescParam;
|
||||
var scFolderName;
|
||||
var fFolderDesktop;
|
||||
var fFolderPath;
|
||||
var fFolderPathStr;
|
||||
var fFolderQuickLaunch;
|
||||
var is_winnt;
|
||||
var szCurrentVersion;
|
||||
var folderQuickLaunchExists;
|
||||
|
||||
winreg = getWinRegistry();
|
||||
fWindows = getFolder("Windows");
|
||||
fProgram = getFolder("Program");
|
||||
fDefShortcuts = getFolder("Program","defaults/shortcuts");
|
||||
fTemp = fProgram + "$MainExeFile$";
|
||||
fileExe = getFolder("file:///", fTemp);
|
||||
fileReadme = getFolder("file:///", fProgram + "readme.txt");
|
||||
fileLicense = getFolder("file:///", fProgram + "license.txt");
|
||||
scExeDesc = "$ProductName$";
|
||||
scReadmeDesc = "Readme";
|
||||
scLicenseDesc = "License";
|
||||
scProfileDesc = "Profile Manager";
|
||||
scProfileDescParam = "-ProfileManager";
|
||||
scFolderName = "$ProductName$";
|
||||
if(winreg != null)
|
||||
{
|
||||
/* determine if the script is running under NT or not */
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion";
|
||||
szCurrentVersion = winreg.getValueString(subkey, "CurrentVersion");
|
||||
logComment("szCurrentVersion: " + szCurrentVersion);
|
||||
if((szCurrentVersion == "") || (szCurrentVersion == null))
|
||||
{
|
||||
is_winnt = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
is_winnt = true;
|
||||
}
|
||||
|
||||
logComment("is_winnt value: " + is_winnt);
|
||||
if(!is_winnt || restrictedAccess)
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szStartMenuPrograms = winreg.getValueString(subkey, "Programs");
|
||||
szStartMenu = winreg.getValueString(subkey, "Start Menu");
|
||||
szFolderDesktop = winreg.getValueString(subkey, "Desktop");
|
||||
szStartupFolder = winreg.getValueString(subkey, "Startup");
|
||||
}
|
||||
else
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szStartMenuPrograms = winreg.getValueString(subkey, "Common Programs");
|
||||
szStartMenu = winreg.getValueString(subkey, "Common Start Menu");
|
||||
szFolderDesktop = winreg.getValueString(subkey, "Common Desktop");
|
||||
szStartupFolder = winreg.getValueString(subkey, "Common Startup");
|
||||
}
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szFolderSendTo = winreg.getValueString(subkey, "SendTo");
|
||||
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szFolderAppData = winreg.getValueString(subkey, "AppData");
|
||||
|
||||
// locate the Quick Launch folder
|
||||
szFolderQuickLaunch = szFolderAppData + "\\Microsoft\\Internet Explorer\\Quick Launch";
|
||||
fFolderQuickLaunch = getFolder("file:///", szFolderQuickLaunch);
|
||||
folderQuickLaunchExists = File.isDirectory(fFolderQuickLaunch);
|
||||
if(!folderQuickLaunchExists)
|
||||
{
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\GrpConv\\MapGroups";
|
||||
szFolderQuickLaunch = winreg.getValueString(subkey, "Quick Launch");
|
||||
folderQuickLaunchExists = File.isDirectory(fFolderPath);
|
||||
if(folderQuickLaunchExists)
|
||||
fFolderQuickLaunch = getFolder("file:///", szFolderQuickLaunch);
|
||||
}
|
||||
logComment("folderQuickLaunchExists: " + folderQuickLaunchExists);
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
fFolderPathStr = winreg.getValueString(subkey, "Program Folder Path");
|
||||
if((fFolderPathStr == "") || (fFolderPathStr == null))
|
||||
{
|
||||
fTemp = szStartMenuPrograms + "\\" + scFolderName;
|
||||
fFolderPath = getFolder("file:///", fTemp);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* convert the path string to a path folder object */
|
||||
fFolderPath = getFolder("file:///", fFolderPathStr);
|
||||
}
|
||||
/* convert the path string to a path folder object */
|
||||
fFolderDesktop = getFolder("file:///", szFolderDesktop);
|
||||
|
||||
logComment("Folder StartMenuPrograms: " + szStartMenuPrograms);
|
||||
logComment("Folder StartMenu : " + szStartMenu);
|
||||
logComment("Folder FolderDesktop : " + szFolderDesktop);
|
||||
logComment("Folder FolderSendTo : " + szFolderSendTo);
|
||||
logComment("Folder FolderQuickLaunch: " + szFolderQuickLaunch);
|
||||
logComment("fileExe : " + fileExe);
|
||||
logComment("fFolderPath : " + fFolderPath);
|
||||
logComment("scExeDesc : " + scExeDesc);
|
||||
logComment("fProgram : " + fProgram);
|
||||
|
||||
/* explicitly create the fFolderPath even though the windowsShortcut function creates the folder.
|
||||
* This is so that the folder creation gets logged for uninstall to remove it. */
|
||||
if(!File.exists(fFolderPath))
|
||||
File.dirCreate(fFolderPath);
|
||||
if(!File.exists(fDefShortcuts))
|
||||
File.dirCreate(fDefShortcuts);
|
||||
|
||||
/* create the shortcuts */
|
||||
File.windowsShortcut(fileExe, fFolderDesktop, scExeDesc, fProgram, "", fileExe, 0);
|
||||
File.windowsShortcut(fileExe, fFolderPath, scExeDesc, fProgram, "", fileExe, 0);
|
||||
File.windowsShortcut(fileExe, fDefShortcuts, scExeDesc, fProgram, "", fileExe, 0);
|
||||
File.windowsShortcut(fileExe, fFolderPath, scProfileDesc, fProgram, scProfileDescParam, fileExe, 0);
|
||||
File.windowsShortcut(fileReadme, fFolderPath, scReadmeDesc, fProgram, "", fileReadme, 0);
|
||||
File.windowsShortcut(fileLicense, fFolderPath, scLicenseDesc, fProgram, "", fileLicense, 0);
|
||||
|
||||
// create shortcut in the Quick Launch folder
|
||||
if(folderQuickLaunchExists)
|
||||
File.windowsShortcut(fileExe, fFolderQuickLaunch, scExeDesc, fProgram, "", fileExe, 0);
|
||||
|
||||
if(!restrictedAccess)
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
registerProgramFolderKey(winreg, fFolderPath);
|
||||
}
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
registerProgramFolderKey(winreg, fFolderPath);
|
||||
|
||||
/* remove turbo mode shortcut */
|
||||
|
||||
fFolderPath = getFolder("file:///", szStartupFolder);
|
||||
|
||||
/* remove shortcut from the startup folder */
|
||||
|
||||
basename = "$MainExeFile$"
|
||||
fTemp = fFolderPath + basename + ".lnk";
|
||||
fFolderPath = getFolder("file:///", fTemp);
|
||||
if (File.exists(fFolderPath))
|
||||
{
|
||||
logComment("Removing Quick Launch shortcut from Windows startup folder\n");
|
||||
fileDelete(fFolderPath);
|
||||
}
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Setup";
|
||||
regvalue = winreg.getValueString(subkey, "browserargs");
|
||||
|
||||
/* log this so if the user turns on turbo mode in the browser the uninstaller will undo it */
|
||||
|
||||
logComment( "store registry value string: HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run [Mozilla Quick Launch]");
|
||||
if (regvalue && regvalue != undefined && regvalue.length != 0)
|
||||
{
|
||||
var value = new String(regvalue);
|
||||
var index = value.indexOf("turbo");
|
||||
if (index != -1)
|
||||
{
|
||||
var index2 = value.indexOf("=", index);
|
||||
if (index2 != -1)
|
||||
{
|
||||
turboarg = value.slice(index2 + 1, index2 + 2);
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
|
||||
valname = "Mozilla Quick Launch";
|
||||
if ( turboarg == "Y" || turboarg == "y")
|
||||
{
|
||||
fTemp = fileExe;
|
||||
fileExe = getFolder("file:///", fTemp);
|
||||
newKey = '"' + fileExe + '"' + ' -turbo';
|
||||
winreg.createKey(subkey,"");
|
||||
winreg.setValueString(subkey, valname, newKey);
|
||||
}
|
||||
else
|
||||
{
|
||||
winreg.deleteValue(subkey, valname);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
logComment("winreg is null");
|
||||
}
|
||||
}
|
||||
function IsWinnt()
|
||||
{
|
||||
/* Determines if the script is running under NT or not.
|
||||
*
|
||||
*/
|
||||
var winreg = getWinRegistry();
|
||||
var subkey;
|
||||
var szCurrentVersion;
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion";
|
||||
szCurrentVersion = winreg.getValueString(subkey, "CurrentVersion");
|
||||
logComment("szCurrentVersion: " + szCurrentVersion);
|
||||
if((szCurrentVersion == "") || (szCurrentVersion == null))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function registerMainKeys(winreg)
|
||||
{
|
||||
var subkey; //the name of the subkey you are poking around in
|
||||
var data;
|
||||
var err;
|
||||
|
||||
winreg.createKey("SOFTWARE\\$CompanyName$","");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "CurrentVersion", "$UserAgent$");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$";
|
||||
winreg.createKey(subkey,"");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
winreg.createKey(subkey,"");
|
||||
|
||||
err = winreg.setValueString(subkey, "Install Directory", fProgram);
|
||||
|
||||
// The following keys are required to be created to supply information
|
||||
// about the location of the Gecko Embedded Client to 3rd party apps.
|
||||
// "SOFTWARE\\Mozilla" must not be localized!
|
||||
subkey = "SOFTWARE\\Mozilla\\$ProductName$ $UserAgentShort$";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "GeckoVer", "1.0.1");
|
||||
|
||||
subkey = "SOFTWARE\\Mozilla\\$ProductName$ $UserAgentShort$\\Extensions";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "Components", fProgram + "Components");
|
||||
err = winreg.setValueString(subkey, "Plugins", fProgram + "Plugins");
|
||||
|
||||
subkey = "SOFTWARE\\Mozilla\\$ProductName$ $UserAgentShort$\\bin";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "PathToExe", fProgram + "$MainExeFile$");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
err = winreg.setValueString(subkey, "PathToExe", fProgram + "$MainExeFile$");
|
||||
|
||||
// Register as a windows XP internet browser
|
||||
if( IsWinnt() )
|
||||
{
|
||||
subkey = "Software\\Clients\\StartMenuInternet\\$MainExeFile$";
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
|
||||
winreg.createKey(subkey, "");
|
||||
winreg.createKey(subkey + "\\DefaultIcon", "");
|
||||
winreg.createKey(subkey + "\\shell", "");
|
||||
winreg.createKey(subkey + "\\shell\\open", "");
|
||||
winreg.createKey(subkey + "\\shell\\open\\command", "");
|
||||
winreg.createKey(subkey + "\\InstallInfo", "");
|
||||
winreg.setValueString(subkey, "", "$ProductNameInternal$");
|
||||
|
||||
// path does not need to be quoted per MS doc
|
||||
data = fProgram + "$MainExeFile$,0";
|
||||
winreg.setValueString(subkey + "\\DefaultIcon", "", data);
|
||||
|
||||
data = "\"" + fProgram + "$MainExeFile$\"";
|
||||
winreg.setValueString(subkey + "\\shell\\open\\command", "", data);
|
||||
|
||||
data = "\"" + fProgram + "uninstall\\$UninstallFile$\" /ua \"$UserAgent$\" /hs browser";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "HideIconsCommand", data);
|
||||
|
||||
winreg.setValueNumber(subkey + "\\InstallInfo", "IconsVisible", 1);
|
||||
|
||||
data = "\"" + fProgram + "$MainExeFile$\" -silent -nosplash -setDefaultBrowser ";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "ReinstallCommand", data);
|
||||
|
||||
data = "\"" + fProgram + "uninstall\\$UninstallFile$\" /ua \"$UserAgent$\" /ss browser";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "ShowIconsCommand", data);
|
||||
}
|
||||
}
|
||||
|
||||
function updateWinReg()
|
||||
{
|
||||
//Notes:
|
||||
// can't use a double backslash before subkey - Windows already puts it in.
|
||||
// subkeys have to exist before values can be put in.
|
||||
var winreg = getWinRegistry();
|
||||
var subkey; //the name of the subkey you are poking around in
|
||||
var err;
|
||||
var ikwDefined;
|
||||
|
||||
if(winreg != null)
|
||||
{
|
||||
/* This will check to see if the user has restricted access or not.
|
||||
* It checks to see if HKEY_LOCALMACHINE\SOFTWARE is writable. If
|
||||
* it is, then access is not restricted. This is only used to
|
||||
* determine which Desktop, Programs, and Start Menu folders
|
||||
* are to used: common or per user
|
||||
*/
|
||||
restrictedAccess = false;
|
||||
ikwDefined = typeof(winreg.isKeyWritable);
|
||||
logComment("winreg.isKeyWritable(): " + ikwDefined);
|
||||
if(ikwDefined == "function")
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
if(!winreg.isKeyWritable("SOFTWARE"))
|
||||
restrictedAccess = true;
|
||||
}
|
||||
|
||||
logComment("restrictedAccess value: " + restrictedAccess);
|
||||
if(!restrictedAccess)
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
registerMainKeys(winreg);
|
||||
|
||||
// set the App Paths key here
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\$MainExeFile$";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "", fProgram + "$MainExeFile$");
|
||||
err = winreg.setValueString(subkey, "Path", fProgram);
|
||||
}
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
registerMainKeys(winreg);
|
||||
}
|
||||
}
|
||||
|
||||
function upgradeCleanup()
|
||||
{
|
||||
// Obsolete files from Netscape 6.0 and Netscape 6.01 that
|
||||
// need to be cleaned up.
|
||||
|
||||
// For now, since we're new, we have no such files.
|
||||
}
|
||||
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var err2;
|
||||
var fProgram;
|
||||
var fWindowsSystem;
|
||||
var fileComponentRegStr;
|
||||
var fileComponentReg;
|
||||
var restrictedAccess;
|
||||
var fileToRegister;
|
||||
var args;
|
||||
var gGreLocal = false;
|
||||
|
||||
args = new String(Install.arguments);
|
||||
logComment("args: " + args);
|
||||
|
||||
// If -gGreLocal is passed in, then we need to *not* cleanup GRE files if they
|
||||
// exist in the browser dir.
|
||||
// The default is to delete any GRE files because we default GRE will be global.
|
||||
if(args == "-greLocal")
|
||||
gGreLocal = true;
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall("$ProductName$", "Browser", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
fWindowsSystem = getFolder("Win System");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
upgradeCleanup();
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() of Program returned: " + err);
|
||||
|
||||
// check return value
|
||||
if( err == SUCCESS )
|
||||
{
|
||||
fileToRegister = getFolder(fProgram, "AccessibleMarshal.dll");
|
||||
err2 = File.windowsRegisterServer(fileToRegister);
|
||||
logComment("windowsRegisterServer() returned: " + err2);
|
||||
updateWinReg(); // Finish registering above marshalling dll's
|
||||
|
||||
createShortcuts();
|
||||
|
||||
// we don't want to fail on errors for the above two
|
||||
resetError();
|
||||
|
||||
// register chrome
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome", "browser.jar"), "content/browser/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome", "classic.jar"), "skin/classic/browser/");
|
||||
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome", "toolkit.jar"), "content/passwordmgr/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome", "toolkit.jar"), "content/mozapps/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome", "classic.jar"), "skin/classic/mozapps/");
|
||||
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/autoconfig/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/necko/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/cookie/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/wallet/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/xbl-marquee/");
|
||||
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","toolkit.jar"),"content/global/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","toolkit.jar"),"content/global-region/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","toolkit.jar"),"content/global-platform/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","classic.jar"),"skin/classic/global/");
|
||||
|
||||
// XXXben Stuff that will become obsolete
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/navigator/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/navigator-region/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/navigator-platform/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","classic.jar"),"skin/classic/navigator/");
|
||||
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/communicator/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/communicator-region/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, getFolder("Chrome","comm.jar"),"content/communicator-platform/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","classic.jar"),"skin/classic/communicator/");
|
||||
|
||||
|
||||
// We need to register the psm chrome files.
|
||||
// We're checking to see if they exist first in case
|
||||
// they were not built and packaged up.
|
||||
var pki = getFolder("Chrome", "pippki.jar");
|
||||
if(File.exists(pki))
|
||||
registerChrome(CONTENT | DELAYED_CHROME, pki, "content/pippki/");
|
||||
|
||||
var nss = getFolder("Chrome", "pipnss.jar");
|
||||
if(File.exists(nss))
|
||||
registerChrome(CONTENT | DELAYED_CHROME, nss, "content/pipnss/");
|
||||
|
||||
/* Log files that are created after the installer is done, so they can be uninstalled */
|
||||
logComment("Installing: " + fProgram + ".autoreg");
|
||||
logComment("Installing: " + fProgram + "Xpcs Registry.dat");
|
||||
logComment("Installing: " + fProgram + "xpcom.log");
|
||||
logComment("Create Folder: " + fProgram + "components");
|
||||
logComment("Installing: " + fProgram + "components\\xpti.dat");
|
||||
logComment("Installing: " + fProgram + "components\\xptitemp.dat");
|
||||
logComment("Installing: " + fProgram + "components\\compreg.dat");
|
||||
logComment("Create Folder: " + fProgram + "components\\Netscape");
|
||||
logComment("Create Folder: " + fProgram + "components\\Netscape\\MozillaTrunk");
|
||||
logComment("Installing: " + fProgram + "components\\Netscape\\MozillaTrunk\\manifest.ini");
|
||||
logComment("Installing: " + fProgram + "components\\Netscape\\MozillaTrunk\\permdata.box");
|
||||
logComment("Installing: " + fProgram + "components\\Netscape\\MozillaTrunk\\Talkback.ini");
|
||||
logComment("Create Folder: " + fProgram + "chrome");
|
||||
logComment("Installing: " + fProgram + "chrome\\installed-chrome.txt");
|
||||
logComment("Installing: " + fProgram + "chrome\\chrome.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\cookie");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\cookie\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\cookie\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\inspector");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\inspector\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\inspector\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\communicator");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\communicator\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\communicator\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\editor");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\editor\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\editor\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\messenger");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\messenger\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\messenger\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\navigator");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\navigator\\content");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\navigator\\content\\overlays.rdf");
|
||||
logComment("Create Folder: " + fProgram + "chrome\\overlayinfo\\navigator\\skin");
|
||||
logComment("Installing: " + fProgram + "chrome\\overlayinfo\\navigator\\skin\\stylesheets.rdf");
|
||||
|
||||
err = getLastError();
|
||||
if (err == SUCCESS)
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
if (! ('buildID' in Install))
|
||||
{
|
||||
logComment("Running Pre-Mozilla 0.9.1");
|
||||
initInstall("Post-install Cleanup Utility", "Browser/xpicleanup", "$Version$");
|
||||
cleanupUtility = getFolder(fProgram, "xpicleanup.exe");
|
||||
err = File.execute(cleanupUtility);
|
||||
logComment("execute() returned: " + err);
|
||||
err = performInstall();
|
||||
}
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
|
||||
// end main
|
28
browser/installer/windows/chatzilla.jst
Normal file
28
browser/installer/windows/chatzilla.jst
Normal file
@ -0,0 +1,28 @@
|
||||
var err = initInstall("Chatzilla v0.5", "Chatzilla", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
addFile("Chatzilla service",
|
||||
"bin/components/chatzilla-service.js",
|
||||
getFolder("Components"),
|
||||
"");
|
||||
|
||||
addFile("Chatzilla Chrome",
|
||||
"bin/chrome/chatzilla.jar", // jar source folder
|
||||
getFolder("Chrome"), // target folder
|
||||
""); // target subdir
|
||||
|
||||
addDirectory("Chatzilla Icons",
|
||||
"bin/chrome/icons", // jar source folder
|
||||
getFolder("Chrome", "icons"), // target folder
|
||||
""); // target subdir
|
||||
|
||||
registerChrome(PACKAGE | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "content/chatzilla/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "skin/modern/chatzilla/");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "locale/en-US/chatzilla/");
|
||||
|
||||
err = getLastError();
|
||||
if (err==SUCCESS)
|
||||
performInstall();
|
||||
else
|
||||
cancelInstall(err);
|
||||
|
1201
browser/installer/windows/config.it
Normal file
1201
browser/installer/windows/config.it
Normal file
File diff suppressed because it is too large
Load Diff
42
browser/installer/windows/deflenus.jst
Normal file
42
browser/installer/windows/deflenus.jst
Normal file
@ -0,0 +1,42 @@
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
|
||||
// ----LOCALIZATION NOTE: translate only these ------
|
||||
var prettyName = "US English profile default";
|
||||
var regName = "defaults/mozilla/en-US";
|
||||
// --- END CHANGABLE STUFF ---
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall(prettyName, regName, "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
// check return value
|
||||
if(err == SUCCESS)
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
18
browser/installer/windows/editor.jst
Normal file
18
browser/installer/windows/editor.jst
Normal file
@ -0,0 +1,18 @@
|
||||
var err = initInstall("Mozilla Editor", "Editor", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
var communicatorFolder = getFolder("Communicator");
|
||||
logComment("communicatorFolder: " + communicatorFolder);
|
||||
|
||||
err = addDirectory("Program",
|
||||
"$Version$",
|
||||
"bin", // fileName in jar,
|
||||
communicatorFolder, // Where to put this file (Returned from getFolder)
|
||||
"", // fileName in jar,
|
||||
true); // Force Flag
|
||||
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
|
49
browser/installer/windows/firebird-win32-stub-installer.jst
Normal file
49
browser/installer/windows/firebird-win32-stub-installer.jst
Normal file
@ -0,0 +1,49 @@
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fDesktop;
|
||||
var szFolderDesktop;
|
||||
|
||||
srDest = $SpaceRequired$;
|
||||
err = initInstall("Mozilla Installer", "/mozilla.org/Mozilla Installer", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
// Find the current user's desktop
|
||||
winreg = getWinRegistry();
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
valname = "Desktop";
|
||||
szFolderDesktop = winreg.getValueString(subkey, valname);
|
||||
|
||||
fDesktop = getFolder("file:///", szFolderDesktop);
|
||||
logComment("Desktop location: " + fDesktop);
|
||||
|
||||
if(verifyDiskSpace(fDesktop, srDest))
|
||||
{
|
||||
setPackageFolder(fDesktop);
|
||||
|
||||
err = addFile("",
|
||||
"",
|
||||
"mozilla-win32-stub-installer.exe", // dir name in jar to extract
|
||||
fDesktop, // Where to put this file (Returned from getFolder)
|
||||
""); // subdir name to create relative to fProgram
|
||||
|
||||
logComment("addFile() returned: " + err);
|
||||
|
||||
err = execute("mozilla-win32-stub-installer.exe", "", false);
|
||||
logComment("execute() returned: " + err);
|
||||
|
||||
// check return value
|
||||
if(err==SUCCESS)
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
||||
|
25
browser/installer/windows/inspector.jst
Normal file
25
browser/installer/windows/inspector.jst
Normal file
@ -0,0 +1,25 @@
|
||||
var err = initInstall("DOM Inspector", "Inspector", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
var fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
err = addDirectory("", "$Version$", "bin", fProgram, "", true);
|
||||
logComment("addDirectory: " + err);
|
||||
|
||||
addFile("Inspector Command Line Handler",
|
||||
"bin/components/inspector-cmdline.js",
|
||||
getFolder("Components"),
|
||||
"");
|
||||
|
||||
var jarFolder = getFolder("Chrome", "inspector.jar");
|
||||
registerChrome(PACKAGE | DELAYED_CHROME, jarFolder, "content/inspector/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, jarFolder, "skin/modern/inspector/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, jarFolder, "skin/classic/inspector/");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, jarFolder, "locale/en-US/inspector/");
|
||||
|
||||
err = getLastError();
|
||||
if (err==SUCCESS)
|
||||
performInstall();
|
||||
else
|
||||
cancelInstall(err);
|
129
browser/installer/windows/install.it
Normal file
129
browser/installer/windows/install.it
Normal file
@ -0,0 +1,129 @@
|
||||
[General]
|
||||
FONTNAME=MS Sans Serif
|
||||
FONTSIZE=8
|
||||
CHARSET=0
|
||||
;Here is a partial list CHAR_SETS
|
||||
; ANSI_CHARSET = 0
|
||||
; DEFAULT_CHARSET = 1
|
||||
; SYMBOL_CHARSET = 2
|
||||
; SHIFTJIS_CHARSET = 128
|
||||
; GB2312_CHARSET = 134
|
||||
; HANGEUL_CHARSET = 129
|
||||
; CHINESEBIG5_CHARSET = 136
|
||||
; OEM_CHARSET 255
|
||||
|
||||
OK_=&OK
|
||||
OK=OK
|
||||
CANCEL=Cancel
|
||||
CANCEL_=&Cancel
|
||||
NEXT_=&Next >
|
||||
BACK_=< &Back
|
||||
IGNORE_=&Ignore
|
||||
PROXYSETTINGS=Proxy Settings:
|
||||
PROXYSETTINGS_=&Proxy Settings
|
||||
SERVER=Server:
|
||||
PORT=Port:
|
||||
USERID=User id:
|
||||
PASSWORD=Password:
|
||||
SELECTDIRECTORY=Select a directory
|
||||
DIRECTORIES_=&Directories:
|
||||
DRIVES_=Dri&ves:
|
||||
STATUS=Remaining:
|
||||
FILE=File:
|
||||
URL=URL:
|
||||
TO=To Path:
|
||||
ACCEPT_=&Accept
|
||||
DECLINE_=&Decline
|
||||
PROGRAMFOLDER_=&Program Folder:
|
||||
EXISTINGFOLDERS_=E&xisting Folders:
|
||||
SETUPMESSAGE=Setup has finished copying files to your computer. Before you can use $ProductNameInternal$, you must restart Windows or your computer. Choose one of the following options and click OK to finish setup.
|
||||
RESTART=Restart
|
||||
YESRESTART=Yes, I want to restart my computer now.
|
||||
NORESTART=No, I will restart my computer later.
|
||||
ADDITIONALCOMPONENTS_=&Additional Components:
|
||||
DESCRIPTION=Description
|
||||
TOTALDOWNLOADSIZE=Total download size:
|
||||
SPACEAVAILABLE=Space Available:
|
||||
COMPONENTS_=C&omponents:
|
||||
DESTINATIONDIRECTORY=Destination Directory
|
||||
BROWSE_=B&rowse...
|
||||
CURRENTSETTINGS=Current Settings:
|
||||
INSTALL_=&Install
|
||||
DELETE_=&Delete
|
||||
CONTINUE_=&Continue
|
||||
SKIP_=&Skip
|
||||
README=Re&ad Me
|
||||
PAUSE_=&Pause
|
||||
RESUME_=&Resume
|
||||
CHECKED=Checked
|
||||
UNCHECKED=Unchecked
|
||||
|
||||
EXTRACTING=Extracting...
|
||||
|
||||
|
||||
[Messages]
|
||||
|
||||
ERROR_DIALOG_CREATE=Could not create %s dialog.
|
||||
ERROR_FAILED=%s failed.
|
||||
ERROR_FILE_NOT_FOUND=File not found: %s
|
||||
ERROR_GET_SYSTEM_DIRECTORY_FAILED=GetSystemDirectory() failed.
|
||||
ERROR_GET_WINDOWS_DIRECTORY_FAILED =GetWindowsDirectory() failed.
|
||||
DLGQUITTITLE=Exit Setup
|
||||
DLGQUITMSG=Setup is not complete. If you quit the Setup program now, the program will not be installed. You may run the Setup program at a later time to complete the installation. Are you sure you want to cancel Setup?
|
||||
DLG_REBOOT_TITLE=Restarting Windows
|
||||
ERROR_GETPROCADDRESS=GetProcAddress() of %s failed.
|
||||
ERROR_WRITEPRIVATEPROFILESTRING=WritePrivateProfileString() failed for file %s
|
||||
MSG_RETRIEVE_CONFIGINI=Please wait while Setup is attempting to retrieve Config.ini, required by Setup, from the Web...
|
||||
ERROR_CREATE_TEMP_DIR=Setup was unable to create the TEMP directory: %s
|
||||
DLGBROWSETITLE=Select a directory
|
||||
ERROR_DETERMINING_DISK_SPACE=Could not determine available disk space for: %s
|
||||
DLG_DISK_SPACE_CHECK_TITLE=Disk space check
|
||||
DLG_DISK_SPACE_CHECK_CRUTIAL_MSG=Setup has detected insufficient disk space to continue with installation on %s for the path: %sRequired: %sAvailable: %sClick Retry if more disk space has been made available, or click Cancel to cancel Setup.
|
||||
DLG_DISK_SPACE_CHECK_MSG=Setup has detected insufficient disk space to continue with installation process on %s for the path: %sRequired: %sAvailable: %sClick OK to go back and choose a different destination path.
|
||||
ERROR_CREATE_DIRECTORY=Could not create folder: %sMake sure you have access to create the folder.
|
||||
ERROR_MESSAGE_TITLE=$ProductNameInternal$ Setup Error
|
||||
STR_FILE_NUMBER=File count:
|
||||
STR_FILENAME=Filename:
|
||||
MSG_SMARTUPDATE_START=Preparing Install, please wait...
|
||||
MSG_CONFIGURING=Configuring %s, please wait...
|
||||
ERROR_XPI_INSTALL=Error occurred during installation
|
||||
ERROR_SETUP_REQUIREMENT=Windows95 or greater Operating System is required! Exiting setup...
|
||||
DLG_EXTRACTING_TITLE=$ProductName$ Setup - Install Progress
|
||||
STR_PROCESSINGFILE=Preparing file: %s
|
||||
STR_INSTALLING=Currently installing %s
|
||||
STR_COPYINGFILE=Copying file: %s
|
||||
MB_WARNING_STR=Warning
|
||||
MB_MESSAGE_STR=Message
|
||||
MB_ATTENTION_STR=Attention
|
||||
MSG_CREATE_DIRECTORY=The following directory does not exist:%sWould you like to create it?
|
||||
STR_CREATE_DIRECTORY=Create Directory?
|
||||
ERROR_PROGRAM_FOLDER_NAME=Invalid Program folder name entered.
|
||||
CB_DEFAULT=Default
|
||||
ERROR_DESTINATION_PATH=Invalid path entered.
|
||||
STR_SETUP_TYPE=Setup Type:
|
||||
STR_SELECTED_COMPONENTS=Selected Components:
|
||||
STR_DESTINATION_DIRECTORY=Destination Directory:
|
||||
STR_PROGRAM_FOLDER=Program Folder:
|
||||
STR_DELETING_DESTINATION_DIR=Deleting destination directory to be able to upgrade, please wait...
|
||||
STR_SETUP=Setup
|
||||
STR_DOWNLOAD_SITE=Download Site:
|
||||
STR_SAVE_INSTALLER_FILES=Save downloaded and Setup program files to:
|
||||
MSG_INIT_SETUP=Initializing Setup, please wait...
|
||||
STR_MESSAGEBOX_TITLE=%s Setup
|
||||
ERROR_GETVERSION=GetVersionEx() failed!
|
||||
DLG_USAGE_TITLE=Usage
|
||||
|
||||
STATUS_EXTRACTING=Extracting %s
|
||||
STATUS_LAUNCHING_SETUP=Launching Setup...
|
||||
ERROR_FILE_WRITE=Unable to write file %s
|
||||
TITLE=Installation
|
||||
ERROR_OUT_OF_MEMORY=Out of memory!
|
||||
|
||||
ERROR_DLL_LOAD=Could not load %s
|
||||
ERROR_STRING_LOAD=Could not load string resource ID %d
|
||||
ERROR_STRING_NULL=Null pointer encountered.
|
||||
ERROR_GLOBALALLOC=Memory allocation error.
|
||||
MSG_FORCE_QUIT_PROCESS=Setup has detected that %s (%s) is still running. Click OK to quit %s and proceed with installation. Alternatively, use the Windows Task Manager to quit %s, and then click OK to continue with installation.
|
||||
MSG_FORCE_QUIT_PROCESS_FAILED=Setup will now exit. Setup could not continue because %s (%s) is still running. Try manually quitting %s using Windows Task Manager, and then run Setup again.
|
||||
ERROR_PATH_WITHIN_WINDIR=Setup has detected that you have selected a directory within the Windows directory and will not allow the installation to proceed. Please choose a different directory.
|
||||
|
10
browser/installer/windows/installer.cfg
Normal file
10
browser/installer/windows/installer.cfg
Normal file
@ -0,0 +1,10 @@
|
||||
VersionLanguage = en
|
||||
NameCompany = mozilla.org
|
||||
NameProduct = Mozilla Firebird
|
||||
NameProductInternal = Mozilla Firebird
|
||||
FileApplicationEXE = MozillaFirebird.exe
|
||||
FileMainEXE = FirebirdSetup.exe
|
||||
FileUninstall = UninstallFirebird.exe
|
||||
FileUninstallZIP = UninstallFirebird.zip
|
||||
FileInstallerNETRoot = FirebirdNetSetup
|
||||
ComponentList = xpcom,browser,deflenus,langenus,regus,abe,adt
|
47
browser/installer/windows/langende.jst
Normal file
47
browser/installer/windows/langende.jst
Normal file
@ -0,0 +1,47 @@
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
|
||||
// ----LOCALIZATION NOTE: translate only these ------
|
||||
var prettyName = "English-German Language Pack";
|
||||
var regName = "locales/mozilla/en-DE";
|
||||
var chromeName = "en-DE.jar";
|
||||
// --- END CHANGABLE STUFF ---
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall(prettyName, regName, "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
// register chrome
|
||||
var cf = getFolder("Chrome");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, getFolder(cf, chromeName));
|
||||
|
||||
// check return value
|
||||
if(err == SUCCESS)
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
91
browser/installer/windows/langenus.jst
Normal file
91
browser/installer/windows/langenus.jst
Normal file
@ -0,0 +1,91 @@
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
var platformNode;
|
||||
|
||||
platformNode = getPlatform();
|
||||
logComment("initInstall: platformNode=" + platformNode);
|
||||
// end
|
||||
// end - OS type detection
|
||||
|
||||
// ----LOCALIZATION NOTE: translate only these ------
|
||||
var prettyName = "English (US) Language Pack";
|
||||
var langcode = "en";
|
||||
var chromeNode = langcode + "-US";
|
||||
// --- END CHANGABLE STUFF ---
|
||||
var regName = "locales/mozilla/" + chromeNode;
|
||||
var chromeName = chromeNode + ".jar";
|
||||
var platformName = langcode + "-" + platformNode + ".jar";
|
||||
var localeName = "locale/" + chromeNode + "/";
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall(prettyName, regName, "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
var chromeType = LOCALE;
|
||||
err = addDirectory("",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
""); // Force Flag
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
if (err != SUCCESS)
|
||||
{
|
||||
logComment("addDirectory() to " + fProgram + "failed!");
|
||||
// couldn't install globally, try installing to the profile
|
||||
resetError();
|
||||
chromeType |= PROFILE_CHROME;
|
||||
fProgram = getFolder("Profile");
|
||||
logComment("try installing to the user profile:" + fProgram);
|
||||
err = addDirectory("","bin",fProgram,"");
|
||||
}
|
||||
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
// check return value
|
||||
if (err == SUCCESS)
|
||||
{
|
||||
// register chrome
|
||||
var cf = getFolder(fProgram, "chrome/"+chromeName);
|
||||
var pf = getFolder(fProgram, "chrome/"+platformName);
|
||||
|
||||
registerChrome(chromeType, cf, localeName + "global/");
|
||||
registerChrome(chromeType, pf, localeName + "global-platform/");
|
||||
|
||||
registerChrome(chromeType, cf, localeName + "browser/");
|
||||
registerChrome(chromeType, cf, localeName + "browser-region/");
|
||||
registerChrome(chromeType, cf, localeName + "passwordmgr/");
|
||||
registerChrome(chromeType, cf, localeName + "mozapps/");
|
||||
|
||||
registerChrome(chromeType, cf, localeName + "necko/");
|
||||
registerChrome(chromeType, cf, localeName + "autoconfig/");
|
||||
registerChrome(chromeType, cf, localeName + "cookie/");
|
||||
registerChrome(chromeType, cf, localeName + "wallet/");
|
||||
registerChrome(chromeType, cf, localeName + "pippki/");
|
||||
registerChrome(chromeType, cf, localeName + "pipnss/");
|
||||
|
||||
// XXXben Soon to be obsolete.
|
||||
registerChrome(chromeType, cf, localeName + "communicator/");
|
||||
registerChrome(chromeType, pf, localeName + "communicator-platform/");
|
||||
registerChrome(chromeType, cf, localeName + "navigator/");
|
||||
registerChrome(chromeType, pf, localeName + "navigator-platform/");
|
||||
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
{
|
||||
cancelInstall(err);
|
||||
logComment("cancelInstall due to error: " + err);
|
||||
}
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
474
browser/installer/windows/mail.jst
Normal file
474
browser/installer/windows/mail.jst
Normal file
@ -0,0 +1,474 @@
|
||||
function IsWinnt()
|
||||
{
|
||||
/* Determines if the script is running under NT or not.
|
||||
*
|
||||
*/
|
||||
var winreg = getWinRegistry();
|
||||
var subkey;
|
||||
var szCurrentVersion;
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion";
|
||||
szCurrentVersion = winreg.getValueString(subkey, "CurrentVersion");
|
||||
logComment("szCurrentVersion: " + szCurrentVersion);
|
||||
if((szCurrentVersion == "") || (szCurrentVersion == null))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function registerProgramFolderKey(winreg, fFolderPath)
|
||||
{
|
||||
var subkey;
|
||||
var err;
|
||||
|
||||
/* set the Program Folder Path in the Mozilla key in the Windows Registry */
|
||||
winreg.createKey("SOFTWARE\\$CompanyName$", "");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "CurrentVersion", "$UserAgent$");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$";
|
||||
winreg.createKey(subkey,"");
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
winreg.createKey(subkey,"");
|
||||
err = winreg.setValueString(subkey, "Program Folder Path", fFolderPath);
|
||||
}
|
||||
|
||||
function createShortcuts()
|
||||
{
|
||||
var subkey;
|
||||
var szStartMenuPrograms;
|
||||
var szStartMenu;
|
||||
var szFolderDesktop;
|
||||
var szFolderQuickLaunch;
|
||||
var szFolderSendTo;
|
||||
var szFolderAppData;
|
||||
var winreg;
|
||||
var fWindows;
|
||||
var fTemp;
|
||||
var fProgram;
|
||||
var fileExe;
|
||||
var scExeDesc;
|
||||
var scProfileDesc;
|
||||
var scProfileDescParam;
|
||||
var scFolderName;
|
||||
var fFolderDesktop;
|
||||
var fFolderPath;
|
||||
var fFolderPathStr;
|
||||
var fFolderQuickLaunch;
|
||||
var is_winnt;
|
||||
var szCurrentVersion;
|
||||
var restrictedAccess;
|
||||
var ikwDefined;
|
||||
var folderQuickLaunchExists;
|
||||
var filePalmSyncInstallExe;
|
||||
var scDescPalmSyncInstall;
|
||||
var scDescPalmSyncUninstall;
|
||||
var folderPalmSyncName;
|
||||
|
||||
winreg = getWinRegistry();
|
||||
fWindows = getFolder("Windows");
|
||||
fProgram = getFolder("Program");
|
||||
fileExe = getFolder("Program", "$MainExeFile$");
|
||||
filePalmSyncInstallExe = getFolder("Program", "PalmSyncInstall.exe");
|
||||
scDescPalmSyncInstall = "Address Book Palm Sync Install";
|
||||
scDescPalmSyncUninstall = "Address Book Palm Sync Uninstall";
|
||||
filePalmSyncReadme = getFolder("Program", "palm.html");
|
||||
scDescPalmSyncReadme = "Palm Sync User Guide";
|
||||
fileMailIcon = getFolder("Chrome", "icons/default/messengerWindow.ico");
|
||||
scExeDesc = "Mail";
|
||||
scParam = "-mail";
|
||||
scFolderName = "$ProductName$";
|
||||
folderPalmSyncName = "Palm Tools";
|
||||
if(winreg != null)
|
||||
{
|
||||
/* This will check to see if the user has restricted access or not.
|
||||
* It checks to see if HKEY_LOCALMACHINE\SOFTWARE is writable. If
|
||||
* it is, then access is not restricted. This is only used to
|
||||
* determine which Desktop, Programs, and Start Menu folders
|
||||
* are to used: common or per user
|
||||
*/
|
||||
restrictedAccess = false;
|
||||
ikwDefined = typeof(winreg.isKeyWritable);
|
||||
logComment("winreg.isKeyWritable(): " + ikwDefined);
|
||||
if(ikwDefined == "function")
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
if(!winreg.isKeyWritable("SOFTWARE"))
|
||||
restrictedAccess = true;
|
||||
}
|
||||
|
||||
/* determine if the script is running under NT or not */
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion";
|
||||
szCurrentVersion = winreg.getValueString(subkey, "CurrentVersion");
|
||||
logComment("szCurrentVersion: " + szCurrentVersion);
|
||||
if((szCurrentVersion == "") || (szCurrentVersion == null))
|
||||
{
|
||||
is_winnt = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
is_winnt = true;
|
||||
}
|
||||
|
||||
logComment("is_winnt value: " + is_winnt);
|
||||
logComment("restrictedAccess value: " + restrictedAccess);
|
||||
if(!is_winnt || restrictedAccess)
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szStartMenuPrograms = winreg.getValueString(subkey, "Programs");
|
||||
szStartMenu = winreg.getValueString(subkey, "Start Menu");
|
||||
szFolderDesktop = winreg.getValueString(subkey, "Desktop");
|
||||
}
|
||||
else
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szStartMenuPrograms = winreg.getValueString(subkey, "Common Programs");
|
||||
szStartMenu = winreg.getValueString(subkey, "Common Start Menu");
|
||||
szFolderDesktop = winreg.getValueString(subkey, "Common Desktop");
|
||||
}
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szFolderSendTo = winreg.getValueString(subkey, "SendTo");
|
||||
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";
|
||||
szFolderAppData = winreg.getValueString(subkey, "AppData");
|
||||
|
||||
// locate the Quick Launch folder
|
||||
szFolderQuickLaunch = szFolderAppData + "\\Microsoft\\Internet Explorer\\Quick Launch";
|
||||
fFolderQuickLaunch = getFolder("file:///", szFolderQuickLaunch);
|
||||
folderQuickLaunchExists = File.isDirectory(fFolderQuickLaunch);
|
||||
if(!folderQuickLaunchExists)
|
||||
{
|
||||
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\GrpConv\\MapGroups";
|
||||
szFolderQuickLaunch = winreg.getValueString(subkey, "Quick Launch");
|
||||
folderQuickLaunchExists = File.isDirectory(fFolderPath);
|
||||
if(folderQuickLaunchExists)
|
||||
fFolderQuickLaunch = getFolder("file:///", szFolderQuickLaunch);
|
||||
}
|
||||
logComment("folderQuickLaunchExists: " + folderQuickLaunchExists);
|
||||
|
||||
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Main";
|
||||
fFolderPathStr = winreg.getValueString(subkey, "Program Folder Path");
|
||||
if((fFolderPathStr == "") || (fFolderPathStr == null))
|
||||
{
|
||||
fTemp = szStartMenuPrograms + "\\" + scFolderName;
|
||||
fFolderPath = getFolder("file:///", fTemp);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* convert the path string to a path folder object */
|
||||
fFolderPath = getFolder("file:///", fFolderPathStr);
|
||||
}
|
||||
/* convert the path string to a path folder object */
|
||||
fFolderDesktop = getFolder("file:///", szFolderDesktop);
|
||||
|
||||
logComment("Folder StartMenuPrograms: " + szStartMenuPrograms);
|
||||
logComment("Folder StartMenu : " + szStartMenu);
|
||||
logComment("Folder FolderDesktop : " + szFolderDesktop);
|
||||
logComment("Folder FolderSendTo : " + szFolderSendTo);
|
||||
logComment("Folder FolderQuickLaunch: " + szFolderQuickLaunch);
|
||||
logComment("fileExe : " + fileExe);
|
||||
logComment("fFolderPath : " + fFolderPath);
|
||||
logComment("scExeDesc : " + scExeDesc);
|
||||
logComment("fProgram : " + fProgram);
|
||||
|
||||
/* explicitly create the fFolderPath even though the windowsShortcut function creates the folder.
|
||||
* This is so that the folder creation gets logged for uninstall to remove it. */
|
||||
if(!File.exists(fFolderPath))
|
||||
File.dirCreate(fFolderPath);
|
||||
|
||||
/* create the shortcuts */
|
||||
File.windowsShortcut(fileExe, fFolderPath, scExeDesc, fProgram, scParam, fileMailIcon, 0);
|
||||
|
||||
// only create these two shortcuts if the files exist
|
||||
if(File.exists(filePalmSyncInstallExe))
|
||||
{
|
||||
/* build the path to the sub folder to Palm Sync files */
|
||||
var fStartMenuPalmSync = getFolder("file:///", fFolderPath + "/" + folderPalmSyncName);
|
||||
if(!File.exists(fStartMenuPalmSync))
|
||||
File.dirCreate(fStartMenuPalmSync);
|
||||
|
||||
/* clean up the shortcuts in the old place */
|
||||
deleteThisFile("file:///", fFolderPath + "/" + scDescPalmSyncInstall);
|
||||
deleteThisFile("file:///", fFolderPath + "/" + scDescPalmSyncUninstall);
|
||||
|
||||
/* create the shortcuts in the new sub folder */
|
||||
File.windowsShortcut(filePalmSyncInstallExe, fStartMenuPalmSync, scDescPalmSyncInstall, fProgram, "", filePalmSyncInstallExe, 0);
|
||||
File.windowsShortcut(filePalmSyncInstallExe, fStartMenuPalmSync, scDescPalmSyncUninstall, fProgram, "/u", filePalmSyncInstallExe, 1);
|
||||
|
||||
// only create the palm sync readme shortcut if the file exist
|
||||
if(File.exists(filePalmSyncReadme))
|
||||
{
|
||||
/* create the shortcuts in the new sub folder */
|
||||
File.windowsShortcut(filePalmSyncReadme, fStartMenuPalmSync, scDescPalmSyncReadme, fProgram, "", filePalmSyncReadme, 0);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Disabled for now because mail does not have a different shortcut icon from Mozilla
|
||||
//
|
||||
//// create shortcut in the Quick Launch folder
|
||||
//if(folderQuickLaunchExists)
|
||||
// File.windowsShortcut(fileExe, fFolderQuickLaunch, scExeDesc, fProgram, "", fileExe, 0);
|
||||
|
||||
if(!restrictedAccess)
|
||||
{
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
registerProgramFolderKey(winreg, fFolderPath);
|
||||
}
|
||||
|
||||
winreg.setRootKey(winreg.HKEY_CURRENT_USER);
|
||||
registerProgramFolderKey(winreg, fFolderPath);
|
||||
|
||||
// Register as a windows XP mail application
|
||||
if( IsWinnt() )
|
||||
{
|
||||
subkey = "Software\\Clients\\Mail\\$ProductNameInternal$";
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
|
||||
winreg.createKey(subkey,"");
|
||||
winreg.createKey(subkey + "\\DefaultIcon", "");
|
||||
winreg.createKey(subkey + "\\shell", "");
|
||||
winreg.createKey(subkey + "\\shell\\open", "");
|
||||
winreg.createKey(subkey + "\\shell\\open\\command", "");
|
||||
winreg.createKey(subkey + "\\InstallInfo","");
|
||||
|
||||
winreg.setValueString(subkey, "", "$ProductName$ Mail");
|
||||
|
||||
// path does not need to be quoted per MS doc
|
||||
data = fProgram + "chrome\\icons\\default\\messengerWindow.ico,0";
|
||||
winreg.setValueString(subkey + "\\DefaultIcon", "", data);
|
||||
|
||||
data = "\"" + fProgram + "$MainExeFile$\" -mail";
|
||||
winreg.setValueString(subkey + "\\shell\\open\\command", "", data);
|
||||
|
||||
data = "\"" + fProgram + "uninstall\\$UninstallFile$\" /ua \"$UserAgent$\" /hs mail";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "HideIconsCommand", data);
|
||||
|
||||
// set this value to 0 because we're not creating the mail shortcuts yet.
|
||||
winreg.setValueNumber(subkey + "\\InstallInfo", "IconsVisible", 0);
|
||||
|
||||
data = "\"" + fProgram + "$MainExeFile$\" -silent -nosplash -setDefaultMail";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "ReinstallCommand", data);
|
||||
|
||||
data = "\"" + fProgram + "uninstall\\$UninstallFile$\" /ua \"$UserAgent$\" /ss mail";
|
||||
winreg.setValueString(subkey + "\\InstallInfo", "ShowIconsCommand", data);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
logComment("winreg is null");
|
||||
}
|
||||
}
|
||||
|
||||
function updateMapi()
|
||||
{
|
||||
var winreg;
|
||||
var szValue;
|
||||
var szMapiBackupDll;
|
||||
var szDefaultMailClient;
|
||||
var programMozMapi32File;
|
||||
var mainExePath;
|
||||
var sfpProgramMozMapi32File;
|
||||
var sfpMainExePath;
|
||||
var winsysMapi32File;
|
||||
var mapiProxyFile;
|
||||
var subkey;
|
||||
var mailDefaultDescription = "$ProductName$ Mail";
|
||||
|
||||
winreg = getWinRegistry();
|
||||
if(winreg != null)
|
||||
{
|
||||
mainExePath = getFolder("Program", "$MainExeFile$");
|
||||
programMozMapi32File = getFolder("Program", "mozMapi32.dll");
|
||||
winsysMapi32File = getFolder("Win System", "Mapi32.dll");
|
||||
winreg.setRootKey(winreg.HKEY_LOCAL_MACHINE);
|
||||
|
||||
// If Mapi_backup_dll *and* the default var of
|
||||
// HKEY_LOCAL_MACHINE\Software\Clients\Mail is set, then install
|
||||
// mozMapi32.dll to the windows system dir as Mapi32.dll.
|
||||
szMapiBackupDll = winreg.getValueString("SOFTWARE\\Mozilla\\Desktop", "Mapi_backup_dll");
|
||||
szDefaultMailClient = winreg.getValueString("SOFTWARE\\Clients\\Mail", "");
|
||||
logComment("szMapiBackupDll: " + szMapiBackupDll);
|
||||
logComment("szDefaultMailClient: " + szDefaultMailClient);
|
||||
if((szMapiBackupDll != null) && (szMapiBackupDll != "") &&
|
||||
(szDefaultMailClient != null) && (szDefaultMailClient == "$ProductName$"))
|
||||
{
|
||||
// We do not want to log this file to be uninstalled because the
|
||||
// uninstaller already has a special way to deal with restoring the
|
||||
// appropriate previous Mapi32.dll.
|
||||
addFile("",
|
||||
"$Version$",
|
||||
"bin/mozMapi32.dll", // file name in jar to extract
|
||||
getFolder("Win System"), // Where to put this file (Returned from getFolder)
|
||||
"Mapi32.dll", // new name when installed
|
||||
DO_NOT_UNINSTALL);
|
||||
}
|
||||
|
||||
sfpProgramMozMapi32File = File.windowsGetShortName(programMozMapi32File);
|
||||
sfpMainExePath = File.windowsGetShortName(mainExePath);
|
||||
|
||||
subkey = "SOFTWARE\\Clients\\Mail\\$ProductName$";
|
||||
winreg.createKey(subkey, "");
|
||||
winreg.setValueString(subkey, "", mailDefaultDescription);
|
||||
winreg.setValueString(subkey, "DLLPath", sfpProgramMozMapi32File);
|
||||
|
||||
winreg.createKey(subkey + "\\DefaultIcon", "");
|
||||
winreg.setValueString(subkey + "\\DefaultIcon", "", sfpMainExePath + ",0");
|
||||
|
||||
winreg.createKey(subkey + "\\protocols", "");
|
||||
winreg.createKey(subkey + "\\protocols\\mailto", "");
|
||||
winreg.setValueString(subkey + "\\protocols\\mailto", "", "URL:MailTo Protocol");
|
||||
|
||||
winreg.createKey(subkey + "\\protocols\\mailto\\shell", "");
|
||||
winreg.createKey(subkey + "\\protocols\\mailto\\shell\\open", "");
|
||||
winreg.createKey(subkey + "\\protocols\\mailto\\shell\\open\\command", "");
|
||||
winreg.setValueString(subkey + "\\protocols\\mailto\\shell\\open\\command", "", sfpMainExePath + " \"%1\"");
|
||||
|
||||
winreg.createKey(subkey + "\\shell", "");
|
||||
winreg.createKey(subkey + "\\shell\\open", "");
|
||||
winreg.createKey(subkey + "\\shell\\open\\command", "");
|
||||
winreg.setValueString(subkey + "\\shell\\open\\command", "", sfpMainExePath + " -mail");
|
||||
|
||||
// Register MapiProxy.dll
|
||||
mapiProxyFile = getFolder("Program", "MapiProxy.dll");
|
||||
err = File.windowsRegisterServer(mapiProxyFile);
|
||||
logComment("File.windowsRegisterServer(" + mapiProxyFile + ") returned: " + err);
|
||||
}
|
||||
}
|
||||
|
||||
function upgradeCleanup()
|
||||
{
|
||||
// Obsolete files from Netscape 6.0 and Netscape 6.01 that
|
||||
// need to be cleaned up.
|
||||
deleteThisFile("Program", "msgMapi.dll");
|
||||
deleteThisFile("Components", "signed.dll");
|
||||
deleteThisFile("Components", "smimestb.dll");
|
||||
deleteThisFile("Components", "nsMapiRegistry.dll");
|
||||
deleteThisFile("Components", "absyncsv.dll");
|
||||
}
|
||||
|
||||
function updateWinIni()
|
||||
{
|
||||
var fWinIni = getWinProfile(getFolder("Windows"), "win.ini");
|
||||
if(fWinIni != null)
|
||||
{
|
||||
fWinIni.writeString("Mail", "MAPI", "1");
|
||||
fWinIni.writeString("Mail", "MAPIX", "1");
|
||||
}
|
||||
}
|
||||
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall("Mozilla Mail", "Mail", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
upgradeCleanup();
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
// check return value
|
||||
if( err == SUCCESS )
|
||||
{
|
||||
createShortcuts();
|
||||
updateWinIni();
|
||||
updateMapi();
|
||||
|
||||
// we don't want to fail on errors for the above
|
||||
resetError();
|
||||
|
||||
// register chrome
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger-region/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger-smime/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger-mdn/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger-views/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME,
|
||||
getFolder("Chrome","messenger.jar"),
|
||||
"content/messenger-mapi/");
|
||||
|
||||
// log comments for uninstalling the registry keys created by mail for setting
|
||||
// itself up in WinXP's Start menu
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$ []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$ []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$ [DLLPath]");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\DefaultIcon []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\DefaultIcon []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto\\shell []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto\\shell\\open []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto\\shell\\open\\command []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\protocols\\mailto\\shell\\open\\command []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\shell []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\shell\\open []");
|
||||
logComment("Create Registry Key: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\shell\\open\\command []");
|
||||
logComment("Store Registry Value: HKEY_LOCAL_MACHINE\\Software\\Clients\\Mail\\$ProductName$\\shell\\open\\command []");
|
||||
|
||||
// check return value
|
||||
err = getLastError();
|
||||
if(err == SUCCESS)
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
|
||||
// Commenting this out for now until bug 182423 is fixed. This will at least prevent
|
||||
// people who have not run PalmSyncInstall.exe to run into bug 182423. However,
|
||||
// if they run the PalmSync uninstall by hand via the Start menu, then they will
|
||||
// still run into the bug.
|
||||
//if(err == SUCCESS)
|
||||
//{
|
||||
// // Log the uninstall command to run PalmSyncInstall.exe to uninstall itself.
|
||||
// // This needs to be logged after all the files have been installed.
|
||||
// logComment("Uninstall Command: \"" + fProgram + "PalmSyncInstall.exe\" /us");
|
||||
//}
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
257
browser/installer/windows/packages-static
Normal file
257
browser/installer/windows/packages-static
Normal file
@ -0,0 +1,257 @@
|
||||
; Package file for Win32 static Firebird build.
|
||||
;
|
||||
; File format:
|
||||
;
|
||||
; [] designates a toplevel component. Example: [xpcom]
|
||||
; - in front of a file specifies it to be removed from the destination
|
||||
; * wildcard support to recursively copy the entire directory
|
||||
; ; file comment
|
||||
;
|
||||
|
||||
bin/.autoreg
|
||||
|
||||
[langenus]
|
||||
; en-US
|
||||
bin\chrome\en-US.jar
|
||||
bin\chrome\en-win.jar
|
||||
|
||||
[regus]
|
||||
; US
|
||||
; If you add a new directory you must explicitly call addDirectory in regus.jst
|
||||
bin\chrome\US.jar
|
||||
bin\defaults\profile\US\*
|
||||
bin\searchplugins\*
|
||||
|
||||
[deflenus]
|
||||
; Default files for US
|
||||
bin\defaults\profile\bookmarks.html
|
||||
bin\defaults\profile\localstore.rdf
|
||||
bin\defaults\profile\search.rdf
|
||||
bin\defaults\profile\mimeTypes.rdf
|
||||
|
||||
[xpcom]
|
||||
bin\js3250.dll
|
||||
bin\plc4.dll
|
||||
bin\plds4.dll
|
||||
bin\xpcom.dll
|
||||
bin\xpistub.dll
|
||||
bin\nsreg.dll
|
||||
bin\nspr4.dll
|
||||
bin\components\xpinstal.dll
|
||||
bin\components\jar50.dll
|
||||
bin\components\ucharuti.dll
|
||||
bin\xpcom_compat.dll
|
||||
bin\components\xpcom_compat_c.dll
|
||||
|
||||
[browser]
|
||||
; [Base Browser Files]
|
||||
bin\MozillaFirebird.exe
|
||||
bin\plugins\npnul32.dll
|
||||
bin\res\cmessage.txt
|
||||
bin\xpicleanup.exe
|
||||
|
||||
; [Components]
|
||||
bin\components\accessibility.xpt
|
||||
bin\components\accessibility-msaa.xpt
|
||||
bin\components\AcctIdl.xpt
|
||||
bin\components\appshell.xpt
|
||||
bin\components\autocomplete.xpt
|
||||
bin\components\bookmarks.xpt
|
||||
bin\components\crypto.dll
|
||||
bin\components\directory.xpt
|
||||
bin\components\downloadmanager.xpt
|
||||
bin\components\commandhandler.xpt
|
||||
bin\components\history.xpt
|
||||
bin\components\winhooks.xpt
|
||||
bin\components\related.xpt
|
||||
bin\components\search.xpt
|
||||
bin\components\timebomb.xpt
|
||||
bin\components\urlbarhistory.xpt
|
||||
bin\components\urlwidgt.xpt
|
||||
bin\components\universalchardet.dll
|
||||
bin\components\caps.xpt
|
||||
bin\components\chrome.xpt
|
||||
bin\components\cookie.xpt
|
||||
bin\components\docshell_base.xpt
|
||||
bin\components\jsd3250.dll
|
||||
bin\components\jsdservice.xpt
|
||||
bin\components\dom.xpt
|
||||
bin\components\dom_base.xpt
|
||||
bin\components\dom_core.xpt
|
||||
bin\components\dom_css.xpt
|
||||
bin\components\dom_events.xpt
|
||||
bin\components\dom_html.xpt
|
||||
bin\components\dom_range.xpt
|
||||
bin\components\dom_stylesheets.xpt
|
||||
bin\components\dom_traversal.xpt
|
||||
bin\components\dom_views.xpt
|
||||
bin\components\dom_xbl.xpt
|
||||
bin\components\dom_xpath.xpt
|
||||
bin\components\dom_xul.xpt
|
||||
bin\components\editor.xpt
|
||||
bin\components\find.xpt
|
||||
bin\components\gfx.xpt
|
||||
bin\components\gfx2.xpt
|
||||
bin\components\content_base.xpt
|
||||
bin\components\content_html.xpt
|
||||
bin\components\content_htmldoc.xpt
|
||||
bin\components\content_xmldoc.xpt
|
||||
bin\components\content_xslt.xpt
|
||||
bin\components\xuldoc.xpt
|
||||
bin\components\xultmpl.xpt
|
||||
bin\components\imglib2.xpt
|
||||
bin\components\imgicon.xpt
|
||||
bin\components\intl.xpt
|
||||
bin\components\chardet.xpt
|
||||
bin\components\jar.xpt
|
||||
bin\components\jsconsole-clhandler.js
|
||||
bin\components\jsurl.xpt
|
||||
bin\components\layout_base.xpt
|
||||
bin\components\layout_xul.xpt
|
||||
bin\components\layout_xul_tree.xpt
|
||||
bin\components\locale.xpt
|
||||
bin\components\mozbrwsr.xpt
|
||||
bin\components\mozcomps.xpt
|
||||
bin\components\mozfind.xpt
|
||||
bin\components\mozucth.xpt
|
||||
bin\components\mozxfer.xpt
|
||||
bin\components\necko.xpt
|
||||
bin\components\mimetype.xpt
|
||||
bin\components\necko_cache.xpt
|
||||
bin\components\necko_strconv.xpt
|
||||
bin\components\necko_about.xpt
|
||||
bin\components\necko_data.xpt
|
||||
bin\components\necko_dns.xpt
|
||||
bin\components\necko_ftp.xpt
|
||||
bin\components\necko_http.xpt
|
||||
bin\components\necko_jar.xpt
|
||||
bin\components\necko_res.xpt
|
||||
bin\components\nsSidebar.js
|
||||
bin\components\oji.xpt
|
||||
bin\components\pref.xpt
|
||||
bin\components\prefmigr.xpt
|
||||
bin\components\profile.xpt
|
||||
bin\components\proxyObject.xpt
|
||||
bin\components\rdf.xpt
|
||||
bin\components\shistory.xpt
|
||||
bin\components\sidebar.xpt
|
||||
bin\components\signonviewer.xpt
|
||||
bin\components\txtsvc.xpt
|
||||
bin\components\txmgr.xpt
|
||||
bin\components\uconv.xpt
|
||||
bin\components\unicharutil.xpt
|
||||
bin\components\uriloader.xpt
|
||||
bin\components\exthandler.xpt
|
||||
bin\components\util.xpt
|
||||
bin\components\wallet.xpt
|
||||
bin\components\walleteditor.xpt
|
||||
bin\components\walletpreview.xpt
|
||||
bin\components\webBrowser_core.xpt
|
||||
bin\components\webbrowserpersist.xpt
|
||||
bin\components\embed_base.xpt
|
||||
bin\components\webshell_idls.xpt
|
||||
bin\components\widget.xpt
|
||||
bin\components\windowwatcher.xpt
|
||||
bin\components\xpcom_base.xpt
|
||||
bin\components\xpcom_components.xpt
|
||||
bin\components\xpcom_ds.xpt
|
||||
bin\components\xpcom_eventloop_windows.xpt
|
||||
bin\components\xpcom_eventloop_xp.xpt
|
||||
bin\components\xpcom_io.xpt
|
||||
bin\components\xpcom_nativeapp.xpt
|
||||
bin\components\xpcom_thread.xpt
|
||||
bin\components\xpcom_xpti.xpt
|
||||
bin\components\xpcom_obsolete.xpt
|
||||
bin\components\xpconnect.xpt
|
||||
bin\components\xpinstall.xpt
|
||||
bin\components\autoconfig.xpt
|
||||
bin\components\xml-rpc.xpt
|
||||
bin\components\nsDictionary.js
|
||||
bin\components\nsProxyAutoConfig.js
|
||||
bin\components\nsXmlRpcClient.js
|
||||
bin\components\xmlextras.xpt
|
||||
bin\components\nsHelperAppDlg.js
|
||||
bin\components\helperAppDlg.xpt
|
||||
bin\components\nsKillAll.js
|
||||
bin\components\nsProgressDialog.js
|
||||
bin\components\progressDlg.xpt
|
||||
bin\components\nsDownloadProgressListener.js
|
||||
bin\components\typeaheadfind.xpt
|
||||
bin\components\nsCloseAllWindows.js
|
||||
; webservices
|
||||
bin\components\websrvcs.dll
|
||||
bin\components\websrvcs.xpt
|
||||
|
||||
; [Browser Chrome Files]
|
||||
bin\chrome\browser.jar
|
||||
bin\chrome\classic.jar
|
||||
bin\chrome\comm.jar
|
||||
bin\chrome\toolkit.jar
|
||||
|
||||
; [Default Preferences]
|
||||
; All the pref files must be part of base to prevent migration bugs
|
||||
bin\defaults\pref\all.js
|
||||
bin\defaults\pref\security-prefs.js
|
||||
bin\defaults\pref\winpref.js
|
||||
bin\defaults\pref\xpinstall.js
|
||||
bin\defaults\autoconfig\platform.js
|
||||
bin\defaults\autoconfig\prefcalls.js
|
||||
|
||||
; [Layout Engine Resources]
|
||||
; Style Sheets, Graphics and other Resources used by the layout engine.
|
||||
bin\res\ua.css
|
||||
bin\res\html.css
|
||||
bin\res\quirk.css
|
||||
bin\res\forms.css
|
||||
bin\res\platform-forms.css
|
||||
bin\res\EditorOverride.css
|
||||
bin\res\viewsource.css
|
||||
bin\res\mathml.css
|
||||
bin\res\arrow.gif
|
||||
bin\res\loading-image.gif
|
||||
bin\res\broken-image.gif
|
||||
bin\res\fonts\*
|
||||
bin\res\dtd\*
|
||||
bin\res\wincharset.properties
|
||||
bin\res\charsetalias.properties
|
||||
bin\res\charsetData.properties
|
||||
bin\res\langGroups.properties
|
||||
bin\res\language.properties
|
||||
bin\res\entityTables\*
|
||||
bin\res\builtin\htmlBindings.xml
|
||||
bin\res\builtin\platformHTMLBindings.xml
|
||||
|
||||
; [Personal Security Manager]
|
||||
;
|
||||
bin\nssckbi.dll
|
||||
bin\components\pipboot.dll
|
||||
bin\components\pipboot.xpt
|
||||
bin\components\pipnss.dll
|
||||
bin\components\pipnss.xpt
|
||||
bin\components\pippki.dll
|
||||
bin\components\pippki.xpt
|
||||
bin\nss3.dll
|
||||
bin\smime3.dll
|
||||
bin\softokn3.chk
|
||||
bin\softokn3.dll
|
||||
bin\ssl3.dll
|
||||
bin\chrome\pipnss.jar
|
||||
bin\chrome\pippki.jar
|
||||
|
||||
; [Additional Developer Tools]
|
||||
[adt]
|
||||
; [Document Inspector]
|
||||
bin\components\inspector-cmdline.js
|
||||
bin\components\inspector.dll
|
||||
bin\components\inspector.xpt
|
||||
bin\chrome\inspector.jar
|
||||
bin\defaults\pref\inspector.js
|
||||
bin\res\inspector\viewer-registry.rdf
|
||||
bin\res\inspector\search-registry.rdf
|
||||
; [Venkman JavaScript Debugger]
|
||||
bin\components\venkman-service.js
|
||||
bin\chrome\venkman.jar
|
||||
|
||||
; [Additional Browsing Enhancements]
|
||||
[abe]
|
||||
|
51
browser/installer/windows/psm.jst
Normal file
51
browser/installer/windows/psm.jst
Normal file
@ -0,0 +1,51 @@
|
||||
function upgradeCleanup()
|
||||
{
|
||||
// Obsolete files from Netscape 6.0 and Netscape 6.01 that
|
||||
// need to be cleaned up.
|
||||
deleteThisFile("Program", "psm.exe");
|
||||
deleteThisFile("Components", "psmglue.dll");
|
||||
}
|
||||
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall("Personal Security Manager", "Personal Security Manager", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
upgradeCleanup();
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() returned: " + err);
|
||||
|
||||
// check return value
|
||||
if(err == SUCCESS)
|
||||
{
|
||||
|
||||
var pki = getFolder("Chrome", "pippki.jar");
|
||||
var nss = getFolder("Chrome", "pipnss.jar");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, pki, "content/pippki/");
|
||||
registerChrome(CONTENT | DELAYED_CHROME, nss, "content/pipnss/");
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
4
browser/installer/windows/redirect.it
Normal file
4
browser/installer/windows/redirect.it
Normal file
@ -0,0 +1,4 @@
|
||||
[Site Selector]
|
||||
Site0=$ArchiveUrl$
|
||||
Site1=$ArchiveUrl$
|
||||
|
93
browser/installer/windows/regus.jst
Normal file
93
browser/installer/windows/regus.jst
Normal file
@ -0,0 +1,93 @@
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var fProgram;
|
||||
var searchPlugins = "searchplugins";
|
||||
var platformNode = getPlatform();
|
||||
|
||||
// ----LOCALIZATION NOTE: translate only these ------
|
||||
var prettyName = "US Region Pack";
|
||||
var chromeNode = "US";
|
||||
// --- END CHANGABLE STUFF ---
|
||||
|
||||
var regName = "locales/mozilla/" + chromeNode;
|
||||
var chromeName = chromeNode + ".jar";
|
||||
var localeName = "locale/" + chromeNode + "/";
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall(prettyName, regName, "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
if (platformNode == 'mac')
|
||||
{
|
||||
searchPlugins = "Search Plugins";
|
||||
}
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
var chromeType = LOCALE;
|
||||
var fTarget;
|
||||
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
fTarget = getFolder("Chrome");
|
||||
err = addDirectory("",
|
||||
"bin/chrome", // dir name in jar to extract
|
||||
fTarget, // Where to put this file (Returned from GetFolder)
|
||||
""); // subdir name to create relative to fProgram
|
||||
logComment("addDirectory() returned: " + err);
|
||||
if (err == SUCCESS)
|
||||
{
|
||||
fTarget = getFolder("Program", "defaults");
|
||||
logComment("fTarget: " + fTarget);
|
||||
err = addDirectory("",
|
||||
"bin/defaults", // dir name in jar to extract
|
||||
fTarget, // Where to put this file (Returned from GetFolder)
|
||||
""); // subdir name to create relative to fProgram
|
||||
logComment("addDirectory() returned: " + err);
|
||||
if (err == SUCCESS)
|
||||
{
|
||||
fTarget = getFolder("Program", searchPlugins);
|
||||
logComment("fTarget: " + fTarget);
|
||||
err = addDirectory("",
|
||||
"bin/searchplugins", // dir name in jar to extract
|
||||
fTarget, // Where to put this file (Returned from GetFolder)
|
||||
""); // subdir name to create relative to fProgram
|
||||
logComment("addDirectory() returned: " + err);
|
||||
}
|
||||
}
|
||||
if (err != SUCCESS)
|
||||
{
|
||||
logComment("addDirectory() to " + fProgram + "failed!");
|
||||
// couldn't install globally, try installing to the profile
|
||||
resetError();
|
||||
chromeType |= PROFILE_CHROME;
|
||||
fProgram = getFolder("Profile");
|
||||
logComment("try installing to the profile: " + fProgram);
|
||||
err = addDirectory("","bin/chrome",fProgram,"chrome");
|
||||
}
|
||||
|
||||
if (err == SUCCESS)
|
||||
{
|
||||
// register chrome
|
||||
var cf = getFolder(fProgram, "chrome/"+ chromeName);
|
||||
registerChrome(chromeType, cf, localeName + "global-region/");
|
||||
registerChrome(chromeType, cf, localeName + "communicator-region/");
|
||||
registerChrome(chromeType, cf, localeName + "navigator-region/");
|
||||
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
{
|
||||
cancelInstall(err);
|
||||
logComment("cancelInstall due to error: " + err);
|
||||
}
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
// end main
|
25
browser/installer/windows/spellcheck.jst
Normal file
25
browser/installer/windows/spellcheck.jst
Normal file
@ -0,0 +1,25 @@
|
||||
var srDest = $SpaceRequired$;
|
||||
|
||||
var err = initInstall("Mozilla Myspell Spellchecker", "Spellchecker", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
logComment("fProgram: " + fProgram)
|
||||
|
||||
if (verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
addDirectory("Spellchecker",
|
||||
"$Version$",
|
||||
"bin",
|
||||
fProgram,
|
||||
"");
|
||||
|
||||
if (err==SUCCESS)
|
||||
performInstall();
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
9
browser/installer/windows/talkback.jst
Normal file
9
browser/installer/windows/talkback.jst
Normal file
@ -0,0 +1,9 @@
|
||||
// main
|
||||
|
||||
var err;
|
||||
|
||||
err = initInstall("Quality Feedback Agent", "Quality Feedback Agent", "6.5.0.2001012623");
|
||||
logComment("Talkback place holder .xpi for the real thing.");
|
||||
cancelInstall(err);
|
||||
|
||||
// end main
|
166
browser/installer/windows/uninstall.it
Normal file
166
browser/installer/windows/uninstall.it
Normal file
@ -0,0 +1,166 @@
|
||||
[General]
|
||||
; Run Mode values:
|
||||
; Normal - Shows all dialogs. Requires user input.
|
||||
; Auto - Shows some dialogs, but none requiring user input. It will
|
||||
; automatically uninstall the product using default values.
|
||||
; Silent - Show no dialogs at all. It will uninstall product using default
|
||||
; values.
|
||||
Run Mode=Normal
|
||||
|
||||
Company Name=$CompanyName$
|
||||
Product Name=$ProductName$
|
||||
|
||||
; Valid Path values:
|
||||
; PROGRAMFILESDIR
|
||||
; WINDISK
|
||||
; WINDIR
|
||||
; WINSYSDIR
|
||||
; COMMON_STARTUP
|
||||
; COMMON_PROGRAMS
|
||||
; COMMON_STARTMENU
|
||||
; COMMON_DESKTOP
|
||||
;
|
||||
; PERSONAL_STARTUP
|
||||
; PERSONAL_PROGRAMS
|
||||
; PERSONAL_STARTMENU
|
||||
; PERSONAL_DESKTOP
|
||||
;
|
||||
; PERSONAL_APPDATA
|
||||
; PERSONAL_CACHE
|
||||
; PERSONAL_COOKIES
|
||||
; PERSONAL_FAVORITES
|
||||
; PERSONAL_FONTS
|
||||
; PERSONAL_HISTORY
|
||||
; PERSONAL_NETHOOD
|
||||
; PERSONAL_PERSONAL
|
||||
; PERSONAL_PRINTHOOD (supported only under Windows NT)
|
||||
; PERSONAL_RECENT
|
||||
; PERSONAL_SENDTO
|
||||
; PERSONAL_TEMPLATES
|
||||
;
|
||||
; PROGRAMFILESDIR
|
||||
; COMMONFILESDIR
|
||||
; MEDIAPATH
|
||||
; CONFIGPATH (supported only under Windows95 and Windows98)
|
||||
; DEVICEPATH
|
||||
|
||||
; This provides information on where in the Windows Registry to locate the Uninstall log files
|
||||
;
|
||||
Main Root Key=HKEY_LOCAL_MACHINE
|
||||
Main Key=[Product WinRegKey]
|
||||
Decrypt Main Key=TRUE
|
||||
|
||||
Root Key=HKEY_LOCAL_MACHINE
|
||||
Key=[Product CurrentVersion]\Uninstall
|
||||
Decrypt Key=TRUE
|
||||
|
||||
Uninstall Filename=$UninstallFile$
|
||||
|
||||
[Check Instance0]
|
||||
Class Name=MozillaMessageWindow
|
||||
Window Name=
|
||||
Process Name=$MainExeFile$
|
||||
Pretty Name=$ProductNameInternal$
|
||||
;*** LOCALIZE ME BABY ***
|
||||
Message=$ProductNameInternal$ is detected to be currently running. Please quit $ProductNameInternal$ before continuing. Click OK to exit $ProductNameInternal$ automatically and proceed with uninstallation.
|
||||
;*** LOCALIZE ME BABY ***
|
||||
Message wait=Shutting down $ProductNameInternal$. Please wait...
|
||||
|
||||
; This key indicates whether or not to close all the windows associated with
|
||||
; the process id of this app instance window found.
|
||||
Close All Process Windows=TRUE
|
||||
|
||||
; These keys are not normally necessary for checking instances. They are
|
||||
; set here because Mozilla requires a way to shut down it's turbo mode.
|
||||
Extra Cmd0 Reg Key Root=HKEY_LOCAL_MACHINE
|
||||
Extra Cmd0 Reg Key=Software\Microsoft\Windows\CurrentVersion\App Paths\$MainExeFile$
|
||||
Extra Cmd0 Reg Name=
|
||||
Extra Cmd0 Parameter=-kill
|
||||
|
||||
[Check Instance1]
|
||||
Class Name=Netscape6MessageWindow
|
||||
Window Name=
|
||||
Process Name=Netscp.exe
|
||||
Pretty Name=Netscape
|
||||
;*** LOCALIZE ME BABY ***
|
||||
Message=Netscape is detected to be currently running. Please quit Netscape before continuing. Click OK to exit Netscape automatically and proceed with uninstallation.
|
||||
;*** LOCALIZE ME BABY ***
|
||||
Message wait=Shutting down Netscape. Please wait...
|
||||
|
||||
; This key indicates whether or not to close all the windows associated with
|
||||
; the process id of this app instance window found.
|
||||
Close All Process Windows=TRUE
|
||||
|
||||
; These keys are not normally necessary for checking instances. They are
|
||||
; set here because Netscape 6 requires a way to shut down it's turbo mode.
|
||||
; This will stop at the first one that succeeds (key and file found).
|
||||
Extra Cmd0 Reg Key Root=HKEY_LOCAL_MACHINE
|
||||
Extra Cmd0 Reg Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Netscp6.exe
|
||||
Extra Cmd0 Reg Name=
|
||||
Extra Cmd0 Parameter=-kill
|
||||
|
||||
Extra Cmd1 Reg Key Root=HKEY_LOCAL_MACHINE
|
||||
Extra Cmd1 Reg Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Netscp.exe
|
||||
Extra Cmd1 Reg Name=
|
||||
Extra Cmd1 Parameter=-kill
|
||||
|
||||
|
||||
[Dialog Uninstall]
|
||||
FONTNAME=MS Sans Serif
|
||||
FONTSIZE=8
|
||||
CHARSET=0
|
||||
;Here is a partial list CHAR_SETS
|
||||
; ANSI_CHARSET = 0
|
||||
; DEFAULT_CHARSET = 1
|
||||
; SYMBOL_CHARSET = 2
|
||||
; SHIFTJIS_CHARSET = 128
|
||||
; GB2312_CHARSET = 134
|
||||
; HANGEUL_CHARSET = 129
|
||||
; CHINESEBIG5_CHARSET = 136
|
||||
; OEM_CHARSET 255
|
||||
Show Dialog=TRUE
|
||||
Title=$ProductName$ Uninstaller
|
||||
Message0=Are you sure you want to completely remove %s and all of its components?
|
||||
|
||||
Uninstall=&Uninstall
|
||||
Cancel=&Cancel
|
||||
Message1=Uninstall has detected that the following shared file is no longer used by any programs. If any programs still require the shared file and it is removed, those programs may no longer function. Are you sure you want to remove this shared file?
|
||||
Message2=Leaving this file will not harm your system. If you are not sure, it is recommended that the shared file be not removed from the system.
|
||||
FileName=File name:
|
||||
No=&No
|
||||
NoToAll=N&o to all
|
||||
Yes=&Yes
|
||||
YesToAll=Y&es to all
|
||||
|
||||
; This section attempts to restore/undo the desktop integration performed by the browser/mail
|
||||
[Restore Desktop Integration]
|
||||
Enabled=TRUE
|
||||
|
||||
; This section attempts to cleanup the UnreadMail registry keys set up by mail.
|
||||
[Cleanup Mail Integration]
|
||||
Enabled=TRUE
|
||||
|
||||
[Messages]
|
||||
ERROR_DLL_LOAD=Could not load %s
|
||||
ERROR_STRING_LOAD=Could not load string resource ID %d
|
||||
ERROR_STRING_NULL=Null pointer encountered.
|
||||
ERROR_GLOBALALLOC=Memory allocation error.
|
||||
ERROR_FAILED=%s failed.
|
||||
ERROR_DIALOG_CREATE=Could not create %s dialog.
|
||||
DLGQUITTITLE=Question
|
||||
DLGQUITMSG=Are you sure you want to cancel?
|
||||
ERROR_GET_SYSTEM_DIRECTORY_FAILED=GetSystemDirectory() failed.
|
||||
ERROR_GET_WINDOWS_DIRECTORY_FAILED=GetWindowsDirectory() failed.
|
||||
ERROR_CREATE_TEMP_DIR=Uninstall was not able to create the TEMP directory: %s
|
||||
ERROR_SETUP_REQUIREMENT=Windows95 or greater Operating System is required! Exiting Uninstall...
|
||||
MB_WARNING_STR=Warning
|
||||
ERROR_UNINSTALL_LOG_FOLDER=Uninstall log folder not found:%s
|
||||
MB_MESSAGE_STR=Message
|
||||
DLG_REMOVE_FILE_TITLE=Remove File?
|
||||
ERROR_GETVERSION=GetVersionEx() failed!
|
||||
MB_ATTENTION_STR=Attention
|
||||
MSG_FORCE_QUIT_PROCESS=Uninstall has detected that %s (%s) is still running. Click OK to quit %s and proceed with uninstallation. Alternatively, use the Windows Task Manager to quit %s, and then click OK to continue with uninstallation.
|
||||
MSG_FORCE_QUIT_PROCESS_FAILED=Uninstall will now exit. Uninstall could not continue because %s (%s) is still running. Try manually quitting %s using Windows Task Manager, and then run Uninstall again.
|
||||
MSG_DELETE_INSTALLATION_PATH=Not all files were uninstalled from the installation directory:\n\n %s\n\nDo you want to completely delete this directory?
|
||||
MSG_INSTALLATION_PATH_WITHIN_WINDIR=Uninstall has detected that the installation path of $ProductNameInternal$ is installed to a folder within your Windows folder. Uninstall will not attempt to delete this installation due to the potential removal of critical system files.
|
||||
|
22
browser/installer/windows/venkman.jst
Normal file
22
browser/installer/windows/venkman.jst
Normal file
@ -0,0 +1,22 @@
|
||||
var err = initInstall("JavaScript Debugger", "Venkman", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
addFile("Venkman Service",
|
||||
"bin/components/venkman-service.js",
|
||||
getFolder("Components"),
|
||||
"");
|
||||
|
||||
addFile("Venkman Chrome",
|
||||
"bin/chrome/venkman.jar", // jar source folder
|
||||
getFolder("Chrome"), // target folder
|
||||
""); // target subdir
|
||||
|
||||
registerChrome(PACKAGE | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "content/venkman/");
|
||||
registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "skin/modern/venkman/");
|
||||
registerChrome(LOCALE | DELAYED_CHROME, getFolder("Chrome","venkman.jar"), "locale/en-US/venkman/");
|
||||
|
||||
err = getLastError();
|
||||
if (err==SUCCESS)
|
||||
performInstall();
|
||||
else
|
||||
cancelInstall(err);
|
111
browser/installer/windows/xpcom.jst
Normal file
111
browser/installer/windows/xpcom.jst
Normal file
@ -0,0 +1,111 @@
|
||||
function upgradeCleanup()
|
||||
{
|
||||
deleteThisFile("Program", "zlib.dll");
|
||||
deleteThisFile("Program", "component.reg");
|
||||
deleteThisFile("Components", "compreg.dat");
|
||||
deleteThisFile("Components", "xpti.dat");
|
||||
deleteThisFile("Components", "xptitemp.dat");
|
||||
}
|
||||
|
||||
// main
|
||||
var srDest;
|
||||
var err;
|
||||
var szUninstall;
|
||||
var fProgram;
|
||||
var fWindowsSystem;
|
||||
var fileComponentReg;
|
||||
var fileComponentRegStr;
|
||||
var fileMsvcrt;
|
||||
var fileMsvcirt;
|
||||
|
||||
srDest = $SpaceRequired$:bin;
|
||||
err = initInstall("Mozilla XPCOM", "XPCOM", "$Version$");
|
||||
logComment("initInstall: " + err);
|
||||
|
||||
fProgram = getFolder("Program");
|
||||
fWindowsSystem = getFolder("Win System");
|
||||
logComment("fProgram: " + fProgram);
|
||||
|
||||
// build the uninstall folder path
|
||||
szUninstall = fProgram + "Uninstall";
|
||||
|
||||
// Log component.reg file so it can be deleted by the uninstaller.
|
||||
// These two files are created after installation is done, thus
|
||||
// are normally not logged for uninstall.
|
||||
logComment("Installing: " + fProgram + "component.reg");
|
||||
|
||||
if(verifyDiskSpace(fProgram, srDest))
|
||||
{
|
||||
setPackageFolder(fProgram);
|
||||
|
||||
upgradeCleanup();
|
||||
err = addDirectory("",
|
||||
"$Version$",
|
||||
"bin", // dir name in jar to extract
|
||||
fProgram, // Where to put this file (Returned from GetFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
true); // Force Flag
|
||||
logComment("addDirectory() of Program returned: " + err);
|
||||
|
||||
if( err == SUCCESS )
|
||||
{
|
||||
// install msvcrt.dll *only* if it does not exist
|
||||
// we don't care if addFile() fails (if the file does not exist in the archive)
|
||||
// bacause it will still install
|
||||
fileMsvcrt = getFolder(fWindowsSystem, "msvcrt.dll");
|
||||
rv = File.exists(fileMsvcrt);
|
||||
logComment("fileExists() returned: " + rv);
|
||||
if(rv == false)
|
||||
{
|
||||
logComment("File not found: " + fileMsvcrt);
|
||||
addFile("/Microsoft/Shared/msvcrt.dll",
|
||||
"$Version$",
|
||||
"msvcrt.dll", // dir name in jar to extract
|
||||
fWindowsSystem, // Where to put this file (Returned from getFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
WIN_SHARED_FILE);
|
||||
logComment("addFile() of msvcrt.dll returned: " + err);
|
||||
}
|
||||
else
|
||||
{
|
||||
logComment("File found: " + fileMsvcrt);
|
||||
}
|
||||
|
||||
// install msvcirt.dll *only* if it does not exist
|
||||
// we don't care if addFile() fails (if the file does not exist in the archive)
|
||||
// bacause it will still install
|
||||
fileMsvcirt = getFolder(fWindowsSystem, "msvcirt.dll");
|
||||
rv = File.exists(fileMsvcirt);
|
||||
logComment("fileExists() returned: " + rv);
|
||||
if(rv == false)
|
||||
{
|
||||
logComment("File not found: " + fileMsvcirt);
|
||||
addFile("/Microsoft/Shared/msvcirt.dll",
|
||||
"$Version$",
|
||||
"msvcirt.dll", // dir name in jar to extract
|
||||
fWindowsSystem, // Where to put this file (Returned from getFolder)
|
||||
"", // subdir name to create relative to fProgram
|
||||
WIN_SHARED_FILE);
|
||||
logComment("addFile() of msvcirt.dll returned: " + err);
|
||||
}
|
||||
else
|
||||
{
|
||||
logComment("File found: " + fileMsvcirt);
|
||||
}
|
||||
}
|
||||
|
||||
// check return value
|
||||
if( err == SUCCESS )
|
||||
{
|
||||
err = performInstall();
|
||||
logComment("performInstall() returned: " + err);
|
||||
}
|
||||
else
|
||||
cancelInstall(err);
|
||||
}
|
||||
else
|
||||
cancelInstall(INSUFFICIENT_DISK_SPACE);
|
||||
|
||||
|
||||
// end main
|
||||
|
Loading…
Reference in New Issue
Block a user