diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon.ico b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon.ico new file mode 100644 index 00000000..a4d71e16 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon.ico differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_128.png b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_128.png new file mode 100644 index 00000000..bee7f693 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_128.png differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_16.png b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_16.png new file mode 100644 index 00000000..881175ef Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_16.png differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_256.png b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_256.png new file mode 100644 index 00000000..183e7026 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_256.png differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_32.png b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_32.png new file mode 100644 index 00000000..7e330bfd Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_32.png differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_75.png b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_75.png new file mode 100644 index 00000000..ce9d59e1 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/AppInfo/appicon_75.png differ diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/appinfo.ini b/Resources/MozillaFirefoxPortable/App/AppInfo/appinfo.ini new file mode 100644 index 00000000..68b53771 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/AppInfo/appinfo.ini @@ -0,0 +1,38 @@ +[Format] +Type=PortableApps.comFormat +Version=3.5 + +[Details] +Name=Mozilla Firefox, Portable Edition +AppID=FirefoxPortable +Publisher=Mozilla & PortableApps.com +Homepage=https://portableapps.com/apps/internet/firefox_portable +Donate=https://donate.mozilla.org/en-US/ +Category=Internet +Description=Web browser +Language=English + +[License] +Shareable=true +OpenSource=true +Freeware=true +CommercialUse=true + +[Version] +PackageVersion=79.0.0.0 +DisplayVersion=79.0 + +[SpecialPaths] +Plugins=App\Firefox\plugins + +[Control] +BaseAppID=%BASELAUNCHERPATH%\App\Firefox\firefox.exe +BaseAppID64=%BASELAUNCHERPATH%\App\Firefox64\firefox.exe +Icons=1 +Start=FirefoxPortable.exe + +[Associations] +FileTypes=html,htm,xhtml,xht,shtml,webm +FileTypeCommandLine=-requestPending -osint -url "%1" +Protocols=http,https,ftp +ProtocolCommandLine=-requestPending -osint -url "%1" diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/installer.ini b/Resources/MozillaFirefoxPortable/App/AppInfo/installer.ini new file mode 100644 index 00000000..46b8680e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/AppInfo/installer.ini @@ -0,0 +1,7 @@ +[DirectoriesToPreserve] +PreserveDirectory1=App\Firefox\plugins +PreserveDirectory2=App\Firefox\searchplugins +PreserveDirectory3=App\Firefox64\plugins +PreserveDirectory4=App\Firefox64\searchplugins +PreserveDirectory5=App\Firefox\distribution +PreserveDirectory6=App\Firefox64\distribution diff --git a/Resources/MozillaFirefoxPortable/App/AppInfo/pac_installer_log.ini b/Resources/MozillaFirefoxPortable/App/AppInfo/pac_installer_log.ini new file mode 100644 index 00000000..119ffb72 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/AppInfo/pac_installer_log.ini @@ -0,0 +1,11 @@ +[PortableApps.comInstaller] +Info1=Do not delete or modify this file. It may be necessary for this app to function correctly. +Info2=This file was generated by the PortableApps.com Installer wizard and modified by the official PortableApps.com Installer TM Rare Ideas, LLC as the app was installed. +Info3=This file should be excluded from git repositories by using the appropriate gitignore. +Run=true +WizardVersion=3.5.16.0 +PackagingDate=2020-07-28 +PackagingTime=15:16:58 +InstallerVersion=3.5.16.0 +InstallDate=2020-08-04 +InstallTime=18:00:17 diff --git a/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.exe b/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.exe new file mode 100644 index 00000000..9b191dcb Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.md b/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.md new file mode 100644 index 00000000..47d2a1ad --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Bin/dejsonlz4.md @@ -0,0 +1,39 @@ +# dejsonlz4 +Decompress Mozilla Firefox bookmarks backup files + +Current Firefox bookmarks backup files are stored as non-standard file format +based on lz4 compression. These files have a `.jsonlz4` extension. Use +`dejsonlz4` to decompress them. + +`lz4.c` and `lz4.h` at this repository are verbatim copies from the Mozilla +repository as of 2016-05-12 (as currently used by Firefox) [1]. + +## Usage: +``` +Usage: dejsonlz4 [-h] IN_FILE [OUT_FILE] + -h Display this help and exit. +Decompress Mozilla bookmarks backup file IN_FILE to OUT_FILE. +If OUT_FILE is '-' or missing, decompress to standard output. +``` + +## Build: +- `gcc -Wall -o dejsonlz4 dejsonlz4.c lz4.c` + +## Windows note: +- `dejsonlz4` on Windows does not support unicode path/file names at this time. + +## References: +- Project page and source files: https://github.com/avih/dejsonlz4 +- Releases and binary builds for Windows: https://github.com/avih/dejsonlz4/releases + +### External resources: +- Mozilla Firefox +[bug 818587]( https://bugzilla.mozilla.org/show_bug.cgi?id=818587 ) - Compress +bookmark backups. +- Mozilla Firefox +[bug 1209390]( https://bugzilla.mozilla.org/show_bug.cgi?id=1209390 ) - Use +standard lz4 file format instead of the non-standard jsonlz4/mozlz4. + +[1] Mozilla's mercurial repo rev. c3f5e6079284: +[lz4.h]( http://hg.mozilla.org/mozilla-central/file/c3f5e6079284/mfbt/lz4.h ) +and [lz4.c]( http://hg.mozilla.org/mozilla-central/file/c3f5e6079284/mfbt/lz4.c ) diff --git a/Resources/MozillaFirefoxPortable/App/Bin/jsonlz4.exe b/Resources/MozillaFirefoxPortable/App/Bin/jsonlz4.exe new file mode 100644 index 00000000..d7c05ccb Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Bin/jsonlz4.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Bin/sqlite3.exe b/Resources/MozillaFirefoxPortable/App/Bin/sqlite3.exe new file mode 100644 index 00000000..3afe1c3c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Bin/sqlite3.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/DefaultData/plugins/plugins_readme.txt b/Resources/MozillaFirefoxPortable/App/DefaultData/plugins/plugins_readme.txt new file mode 100644 index 00000000..7192340e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/DefaultData/plugins/plugins_readme.txt @@ -0,0 +1 @@ +Place Firefox plugins in this directory (Flash, Shockwave, etc) \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/App/DefaultData/profile/bookmarks.html b/Resources/MozillaFirefoxPortable/App/DefaultData/profile/bookmarks.html new file mode 100644 index 00000000..2fe69da0 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/DefaultData/profile/bookmarks.html @@ -0,0 +1,23 @@ + + + +Bookmarks +

Bookmarks

+ +

+

Bookmarks Toolbar Folder

+
Add bookmarks to this folder to see them displayed on the Bookmarks Toolbar +

+

Getting Started +

+

Mozilla Firefox

+

+

Help and Tutorials +
Customize Firefox +
Get Involved +
About Us +

+

PortableApps.com +

diff --git a/Resources/MozillaFirefoxPortable/App/DefaultData/profile/prefs.js b/Resources/MozillaFirefoxPortable/App/DefaultData/profile/prefs.js new file mode 100644 index 00000000..8beeaa17 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/DefaultData/profile/prefs.js @@ -0,0 +1,16 @@ +# Mozilla User Preferences + +/* Do not edit this file. + * + * If you make changes to this file while the browser is running, + * the changes will be overwritten when the browser exits. + * + * To make a manual change to preferences, you can visit the URL about:config + * For more information, see http://www.mozilla.org/unix/customizing.html#prefs + */ + +user_pref("app.update.auto", false); +user_pref("browser.cache.disk.enable", false); +user_pref("browser.download.useDownloadDir", false); +user_pref("browser.shell.checkDefaultBrowser", false); +user_pref("network.cookie.prefsMigrated", true); diff --git a/Resources/MozillaFirefoxPortable/App/DefaultData/settings/FirefoxPortableSettings.ini b/Resources/MozillaFirefoxPortable/App/DefaultData/settings/FirefoxPortableSettings.ini new file mode 100644 index 00000000..2074bded --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/DefaultData/settings/FirefoxPortableSettings.ini @@ -0,0 +1,3 @@ +[FirefoxPortableSettings] +LastProfileDirectory=NONE +SubmitCrashReport=0 diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/Accessible.tlb b/Resources/MozillaFirefoxPortable/App/Firefox/Accessible.tlb new file mode 100644 index 00000000..3787abb0 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/Accessible.tlb differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleHandler.dll b/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleHandler.dll new file mode 100644 index 00000000..db174b6f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleHandler.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleMarshal.dll b/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleMarshal.dll new file mode 100644 index 00000000..e2c02045 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/AccessibleMarshal.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/IA2Marshal.dll b/Resources/MozillaFirefoxPortable/App/Firefox/IA2Marshal.dll new file mode 100644 index 00000000..d874d163 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/IA2Marshal.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 00000000..ca52643a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l2-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 00000000..b9798e0e Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-file-l2-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-localization-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 00000000..1e5072f4 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-processthreads-l1-1-1.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 00000000..cdd9a887 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-synch-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 00000000..0d22398b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-timezone-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 00000000..37492726 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-conio-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 00000000..a5312bd0 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-convert-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 00000000..d0e8a74f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-environment-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 00000000..33ab4235 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-filesystem-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 00000000..73c1bbd0 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-heap-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 00000000..b2491c58 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-locale-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 00000000..5c6daf8b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-math-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 00000000..59f5938e Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-multibyte-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 00000000..08fde912 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-private-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 00000000..5504b29b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-process-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 00000000..6db6d131 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-runtime-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 00000000..3ccdf40b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-stdio-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 00000000..50e08763 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-string-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 00000000..32a56dbb Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-time-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 00000000..f5c85a6c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-utility-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 00000000..0dd8c7e9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/application.ini b/Resources/MozillaFirefoxPortable/App/Firefox/application.ini new file mode 100644 index 00000000..0977acf2 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/application.ini @@ -0,0 +1,26 @@ +; This file is not used. If you modify it and want the application to use +; your modifications, move it under the browser/ subdirectory and start with +; the "-app /path/to/browser/application.ini" argument. +[App] +Vendor=Mozilla +Name=Firefox +RemotingName=firefox +Version=79.0 +BuildID=20200720193547 +SourceRepository=https://hg.mozilla.org/releases/mozilla-release +SourceStamp=df3ed76cf46b23c9b658cd5be4cdd4162d86f736 +ID={ec8030f7-c20a-464f-9b0e-13a3a9e97384} + +[Gecko] +MinVersion=79.0 +MaxVersion=79.0 + +[XRE] +EnableProfileMigrator=1 + +[Crash Reporter] +Enabled=1 +ServerURL=https://crash-reports.mozilla.com/submit?id={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&version=79.0&buildid=20200720193547 + +[AppUpdate] +URL=https://aus5.mozilla.org/update/6/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%SYSTEM_CAPABILITIES%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/breakpadinjector.dll b/Resources/MozillaFirefoxPortable/App/Firefox/breakpadinjector.dll new file mode 100644 index 00000000..8d191cfe Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/breakpadinjector.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_150.png b/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_150.png new file mode 100644 index 00000000..f764a489 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_150.png differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_70.png b/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_70.png new file mode 100644 index 00000000..197a645b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/VisualElements/VisualElements_70.png differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/crashreporter-override.ini b/Resources/MozillaFirefoxPortable/App/Firefox/browser/crashreporter-override.ini new file mode 100644 index 00000000..f14b1c4f --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/browser/crashreporter-override.ini @@ -0,0 +1,9 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This file is in the UTF-8 encoding +[Strings] +# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information. +CrashReporterProductErrorText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nUnfortunately the crash reporter is unable to submit a crash report.\n\nDetails: %s +CrashReporterDescriptionText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nTo help us diagnose and fix the problem, you can send us a crash report. diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/doh-rollout@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/doh-rollout@mozilla.org.xpi new file mode 100644 index 00000000..e5e43d2c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/doh-rollout@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/formautofill@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/formautofill@mozilla.org.xpi new file mode 100644 index 00000000..27aae885 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/formautofill@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/screenshots@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/screenshots@mozilla.org.xpi new file mode 100644 index 00000000..9565d37f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/screenshots@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat-reporter@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat-reporter@mozilla.org.xpi new file mode 100644 index 00000000..ef1babd6 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat-reporter@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat@mozilla.org.xpi new file mode 100644 index 00000000..3e1e0366 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/features/webcompat@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/browser/omni.ja b/Resources/MozillaFirefoxPortable/App/Firefox/browser/omni.ja new file mode 100644 index 00000000..6065a4ca Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/browser/omni.ja differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.exe b/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.exe new file mode 100644 index 00000000..5f1fc615 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.ini b/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.ini new file mode 100644 index 00000000..1247d503 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/crashreporter.ini @@ -0,0 +1,60 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This file is in the UTF-8 encoding +[Strings] +# LOCALIZATION NOTE (isRTL): +# Leave this entry empty unless your language requires right-to-left layout, +# for example like Arabic, Hebrew, Persian. If your language needs RTL, please +# use the untranslated English word "yes" as value +isRTL= +CrashReporterTitle=Crash Reporter +# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla") +CrashReporterVendorTitle=%s Crash Reporter +# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information. +CrashReporterErrorText=The application had a problem and crashed.\n\nUnfortunately, the crash reporter is unable to submit a report for this crash.\n\nDetails: %s +# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered! +CrashReporterProductErrorText2=%s had a problem and crashed.\n\nUnfortunately, the crash reporter is unable to submit a crash report.\n\nDetails: %s +CrashReporterSorry=We're Sorry +# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name. +CrashReporterDescriptionText2=%s had a problem and crashed.\n\nTo help us diagnose and fix the problem, you can send us a crash report. +CrashReporterDefault=This application is run after a crash to report the problem to the application vendor. It should not be run directly. +Details=Details… +ViewReportTitle=Report Contents +CommentGrayText=Add a comment (comments are publicly visible) +ExtraReportInfo=This report also contains technical information about the state of the application when it crashed. +# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name. +CheckSendReport=Tell %s about this crash so they can fix it +CheckIncludeURL=Include the address of the page I was on +CheckAllowEmail=Allow %s to contact me about this report +EmailGrayText=Enter your email address here +ReportPreSubmit2=Your crash report will be submitted before you quit or restart. +ReportDuringSubmit2=Submitting your report… +ReportSubmitSuccess=Report submitted successfully! +ReportSubmitFailed=There was a problem submitting your report. +ReportResubmit=Resending reports that previously failed to send… +# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name. +Quit2=Quit %s +# LOCALIZATION NOTE (Restart): The %s is replaced with the product name. +Restart=Restart %s +Ok=OK +Close=Close + +# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1 +CrashID=Crash ID: %s +# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details. +CrashDetailsURL=You can view details of this crash at %s +ErrorBadArguments=The application passed an invalid argument. +ErrorExtraFileExists=The application didn't leave an application data file. +ErrorExtraFileRead=Couldn't read the application data file. +ErrorExtraFileMove=Couldn't move application data file. +ErrorDumpFileExists=The application did not leave a crash dump file. +ErrorDumpFileMove=Couldn't move crash dump. +ErrorNoProductName=The application did not identify itself. +ErrorNoServerURL=The application did not specify a crash reporting server. +ErrorNoSettingsPath=Couldn't find the crash reporter's settings. +ErrorCreateDumpDir=Couldn't create pending dump directory. +# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name. +ErrorEndOfLife=The version of %s you are using is no longer supported. Crash reports are no longer being accepted for this version. Please consider upgrading to a supported version. + diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/d3dcompiler_47.dll b/Resources/MozillaFirefoxPortable/App/Firefox/d3dcompiler_47.dll new file mode 100644 index 00000000..dbfe9cee Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/d3dcompiler_47.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/default-browser-agent.exe b/Resources/MozillaFirefoxPortable/App/Firefox/default-browser-agent.exe new file mode 100644 index 00000000..2a00063e Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/default-browser-agent.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/defaults/pref/channel-prefs.js b/Resources/MozillaFirefoxPortable/App/Firefox/defaults/pref/channel-prefs.js new file mode 100644 index 00000000..6b9d3f19 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/defaults/pref/channel-prefs.js @@ -0,0 +1,9 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +// +// This pref is in its own file for complex reasons. See the comment in +// browser/app/Makefile.in, bug 756325, and bug 1431342 for details. Do not add +// other prefs to this file. + +pref("app.update.channel", "release"); diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/dependentlibs.list b/Resources/MozillaFirefoxPortable/App/Firefox/dependentlibs.list new file mode 100644 index 00000000..1a37b227 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/dependentlibs.list @@ -0,0 +1,16 @@ +api-ms-win-crt-runtime-l1-1-0.dll +api-ms-win-crt-stdio-l1-1-0.dll +api-ms-win-crt-math-l1-1-0.dll +api-ms-win-crt-filesystem-l1-1-0.dll +api-ms-win-crt-convert-l1-1-0.dll +api-ms-win-crt-string-l1-1-0.dll +api-ms-win-crt-heap-l1-1-0.dll +api-ms-win-crt-environment-l1-1-0.dll +api-ms-win-crt-utility-l1-1-0.dll +mozglue.dll +api-ms-win-crt-time-l1-1-0.dll +api-ms-win-crt-multibyte-l1-1-0.dll +nss3.dll +lgpllibs.dll +api-ms-win-crt-locale-l1-1-0.dll +xul.dll diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/firefox.VisualElementsManifest.xml b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.VisualElementsManifest.xml new file mode 100644 index 00000000..85e09dd7 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.VisualElementsManifest.xml @@ -0,0 +1,12 @@ + + + + + diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe new file mode 100644 index 00000000..54b6a2d9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe.sig b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe.sig new file mode 100644 index 00000000..ac89fe46 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/firefox.exe.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/fonts/TwemojiMozilla.ttf b/Resources/MozillaFirefoxPortable/App/Firefox/fonts/TwemojiMozilla.ttf new file mode 100644 index 00000000..6091c679 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/fonts/TwemojiMozilla.ttf differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/freebl3.dll b/Resources/MozillaFirefoxPortable/App/Firefox/freebl3.dll new file mode 100644 index 00000000..795c3b53 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/freebl3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll new file mode 100644 index 00000000..eb66f335 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll.sig b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll.sig new file mode 100644 index 00000000..b5b26351 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/clearkey.dll.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/manifest.json b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/manifest.json new file mode 100644 index 00000000..f86ab90f --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/gmp-clearkey/0.1/manifest.json @@ -0,0 +1,9 @@ +{ + "name": "clearkey", + "description": "ClearKey Gecko Media Plugin", + "version": "1", + "x-cdm-module-versions": "4", + "x-cdm-interface-versions": "10", + "x-cdm-host-versions": "10", + "x-cdm-codecs": "avc1" +} \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/lgpllibs.dll b/Resources/MozillaFirefoxPortable/App/Firefox/lgpllibs.dll new file mode 100644 index 00000000..ccb730be Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/lgpllibs.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/libEGL.dll b/Resources/MozillaFirefoxPortable/App/Firefox/libEGL.dll new file mode 100644 index 00000000..6f39f8c8 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/libEGL.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/libGLESv2.dll b/Resources/MozillaFirefoxPortable/App/Firefox/libGLESv2.dll new file mode 100644 index 00000000..2b6d2708 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/libGLESv2.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice.exe b/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice.exe new file mode 100644 index 00000000..ba97a004 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice_installer.exe b/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice_installer.exe new file mode 100644 index 00000000..36fc679f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/maintenanceservice_installer.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/minidump-analyzer.exe b/Resources/MozillaFirefoxPortable/App/Firefox/minidump-analyzer.exe new file mode 100644 index 00000000..34ef73d4 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/minidump-analyzer.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/mozavcodec.dll b/Resources/MozillaFirefoxPortable/App/Firefox/mozavcodec.dll new file mode 100644 index 00000000..6d0a3920 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/mozavcodec.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/mozavutil.dll b/Resources/MozillaFirefoxPortable/App/Firefox/mozavutil.dll new file mode 100644 index 00000000..0455f51d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/mozavutil.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/mozglue.dll b/Resources/MozillaFirefoxPortable/App/Firefox/mozglue.dll new file mode 100644 index 00000000..9ca598de Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/mozglue.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/msvcp140.dll b/Resources/MozillaFirefoxPortable/App/Firefox/msvcp140.dll new file mode 100644 index 00000000..229b1d0b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/msvcp140.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/nss3.dll b/Resources/MozillaFirefoxPortable/App/Firefox/nss3.dll new file mode 100644 index 00000000..fffc2533 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/nss3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/nssckbi.dll b/Resources/MozillaFirefoxPortable/App/Firefox/nssckbi.dll new file mode 100644 index 00000000..1b8acc00 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/nssckbi.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/omni.ja b/Resources/MozillaFirefoxPortable/App/Firefox/omni.ja new file mode 100644 index 00000000..5afa6e16 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/omni.ja differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/osclientcerts.dll b/Resources/MozillaFirefoxPortable/App/Firefox/osclientcerts.dll new file mode 100644 index 00000000..355e3e64 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/osclientcerts.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/pingsender.exe b/Resources/MozillaFirefoxPortable/App/Firefox/pingsender.exe new file mode 100644 index 00000000..883bef88 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/pingsender.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/platform.ini b/Resources/MozillaFirefoxPortable/App/Firefox/platform.ini new file mode 100644 index 00000000..484871a4 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/platform.ini @@ -0,0 +1,5 @@ +[Build] +BuildID=20200720193547 +Milestone=79.0 +SourceRepository=https://hg.mozilla.org/releases/mozilla-release +SourceStamp=df3ed76cf46b23c9b658cd5be4cdd4162d86f736 diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe new file mode 100644 index 00000000..a1e74a34 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe.sig b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe.sig new file mode 100644 index 00000000..6f920491 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-container.exe.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/plugin-hang-ui.exe b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-hang-ui.exe new file mode 100644 index 00000000..6bdd4b82 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/plugin-hang-ui.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/precomplete b/Resources/MozillaFirefoxPortable/App/Firefox/precomplete new file mode 100644 index 00000000..43796803 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/precomplete @@ -0,0 +1,88 @@ +remove "xul.dll.sig" +remove "xul.dll" +remove "vcruntime140.dll" +remove "updater.ini" +remove "updater.exe" +remove "uninstall/helper.exe" +remove "ucrtbase.dll" +remove "softokn3.dll" +remove "removed-files" +remove "qipcap.dll" +remove "precomplete" +remove "plugin-hang-ui.exe" +remove "plugin-container.exe.sig" +remove "plugin-container.exe" +remove "platform.ini" +remove "pingsender.exe" +remove "osclientcerts.dll" +remove "omni.ja" +remove "nssckbi.dll" +remove "nss3.dll" +remove "msvcp140.dll" +remove "mozglue.dll" +remove "mozavutil.dll" +remove "mozavcodec.dll" +remove "minidump-analyzer.exe" +remove "maintenanceservice_installer.exe" +remove "maintenanceservice.exe" +remove "libGLESv2.dll" +remove "libEGL.dll" +remove "lgpllibs.dll" +remove "gmp-clearkey/0.1/manifest.json" +remove "gmp-clearkey/0.1/clearkey.dll.sig" +remove "gmp-clearkey/0.1/clearkey.dll" +remove "freebl3.dll" +remove "fonts/TwemojiMozilla.ttf" +remove "firefox.exe.sig" +remove "firefox.exe" +remove "firefox.VisualElementsManifest.xml" +remove "dependentlibs.list" +remove "default-browser-agent.exe" +remove "d3dcompiler_47.dll" +remove "crashreporter.ini" +remove "crashreporter.exe" +remove "browser/omni.ja" +remove "browser/features/webcompat@mozilla.org.xpi" +remove "browser/features/webcompat-reporter@mozilla.org.xpi" +remove "browser/features/screenshots@mozilla.org.xpi" +remove "browser/features/formautofill@mozilla.org.xpi" +remove "browser/features/doh-rollout@mozilla.org.xpi" +remove "browser/crashreporter-override.ini" +remove "browser/VisualElements/VisualElements_70.png" +remove "browser/VisualElements/VisualElements_150.png" +remove "breakpadinjector.dll" +remove "application.ini" +remove "api-ms-win-crt-utility-l1-1-0.dll" +remove "api-ms-win-crt-time-l1-1-0.dll" +remove "api-ms-win-crt-string-l1-1-0.dll" +remove "api-ms-win-crt-stdio-l1-1-0.dll" +remove "api-ms-win-crt-runtime-l1-1-0.dll" +remove "api-ms-win-crt-process-l1-1-0.dll" +remove "api-ms-win-crt-private-l1-1-0.dll" +remove "api-ms-win-crt-multibyte-l1-1-0.dll" +remove "api-ms-win-crt-math-l1-1-0.dll" +remove "api-ms-win-crt-locale-l1-1-0.dll" +remove "api-ms-win-crt-heap-l1-1-0.dll" +remove "api-ms-win-crt-filesystem-l1-1-0.dll" +remove "api-ms-win-crt-environment-l1-1-0.dll" +remove "api-ms-win-crt-convert-l1-1-0.dll" +remove "api-ms-win-crt-conio-l1-1-0.dll" +remove "api-ms-win-core-timezone-l1-1-0.dll" +remove "api-ms-win-core-synch-l1-2-0.dll" +remove "api-ms-win-core-processthreads-l1-1-1.dll" +remove "api-ms-win-core-localization-l1-2-0.dll" +remove "api-ms-win-core-file-l2-1-0.dll" +remove "api-ms-win-core-file-l1-2-0.dll" +remove "IA2Marshal.dll" +remove "AccessibleMarshal.dll" +remove "AccessibleHandler.dll" +remove "Accessible.tlb" +rmdir "uninstall/" +rmdir "gmp-clearkey/0.1/" +rmdir "gmp-clearkey/" +rmdir "fonts/" +rmdir "defaults/pref/" +rmdir "defaults/" +rmdir "browser/features/" +rmdir "browser/VisualElements/" +rmdir "browser/" diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/qipcap.dll b/Resources/MozillaFirefoxPortable/App/Firefox/qipcap.dll new file mode 100644 index 00000000..8c5c9cd7 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/qipcap.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/removed-files b/Resources/MozillaFirefoxPortable/App/Firefox/removed-files new file mode 100644 index 00000000..c590bcb9 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/removed-files @@ -0,0 +1 @@ +chrome.manifest diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/softokn3.dll b/Resources/MozillaFirefoxPortable/App/Firefox/softokn3.dll new file mode 100644 index 00000000..c0cc017c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/softokn3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/ucrtbase.dll b/Resources/MozillaFirefoxPortable/App/Firefox/ucrtbase.dll new file mode 100644 index 00000000..a4275155 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/ucrtbase.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/uninstall/helper.exe b/Resources/MozillaFirefoxPortable/App/Firefox/uninstall/helper.exe new file mode 100644 index 00000000..2d0a18b9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/uninstall/helper.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/update-settings.ini b/Resources/MozillaFirefoxPortable/App/Firefox/update-settings.ini new file mode 100644 index 00000000..a83179b2 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/update-settings.ini @@ -0,0 +1,5 @@ +; If you modify this file updates may fail. +; Do not modify this file. + +[Settings] +ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-release diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/updater.exe b/Resources/MozillaFirefoxPortable/App/Firefox/updater.exe new file mode 100644 index 00000000..8efc8396 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/updater.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/updater.ini b/Resources/MozillaFirefoxPortable/App/Firefox/updater.ini new file mode 100644 index 00000000..46b9b42e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox/updater.ini @@ -0,0 +1,22 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +; This file is in the UTF-8 encoding +; All strings must be less than 600 chars. +[Strings] +Title=Firefox Update +Info=Firefox is installing your updates and will start in a few moments… +MozillaMaintenanceDescription=The Mozilla Maintenance Service ensures that you have the latest and most secure version of Mozilla Firefox on your computer. Keeping Firefox up to date is very important for your online security, and Mozilla strongly recommends that you keep this service enabled. + +; IMPORTANT: This file should always start with a newline in case a locale +; provided updater.ini does not end with a newline. +; Application to launch after an update has been successfully applied. This +; must be in the same directory or a sub-directory of the directory of the +; application executable that initiated the software update. +[PostUpdateWin] +; ExeRelPath is the path to the PostUpdateWin executable relative to the +; application executable. +ExeRelPath=uninstall\helper.exe +; ExeArg is the argument to pass to the PostUpdateWin exe +ExeArg=/PostUpdate diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/vcruntime140.dll b/Resources/MozillaFirefoxPortable/App/Firefox/vcruntime140.dll new file mode 100644 index 00000000..94a3184d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/vcruntime140.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll b/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll new file mode 100644 index 00000000..90cf3c6a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll.sig b/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll.sig new file mode 100644 index 00000000..66cc758f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox/xul.dll.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/Accessible.tlb b/Resources/MozillaFirefoxPortable/App/Firefox64/Accessible.tlb new file mode 100644 index 00000000..df755306 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/Accessible.tlb differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleHandler.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleHandler.dll new file mode 100644 index 00000000..ef1d32a4 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleHandler.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleMarshal.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleMarshal.dll new file mode 100644 index 00000000..0f0af399 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/AccessibleMarshal.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/IA2Marshal.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/IA2Marshal.dll new file mode 100644 index 00000000..9829f41f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/IA2Marshal.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 00000000..a68e54d2 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l2-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 00000000..a55333f3 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-file-l2-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-localization-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 00000000..eb87605c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-processthreads-l1-1-1.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 00000000..6eaae36c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-synch-l1-2-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 00000000..5c368b20 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-timezone-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 00000000..3fb97367 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-conio-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 00000000..805d6247 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-convert-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 00000000..6849a4a5 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-environment-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 00000000..6b9c9cc8 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-filesystem-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 00000000..430331d7 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-heap-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 00000000..7247858d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-locale-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 00000000..d71c6c20 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-math-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 00000000..ad2f7d28 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-multibyte-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 00000000..0cac01d0 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-private-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 00000000..40e4003b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-process-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 00000000..c23ef80e Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-runtime-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 00000000..3e535237 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-stdio-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 00000000..bd3852bd Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-string-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 00000000..1e16a4c1 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-time-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 00000000..3107f09f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-utility-l1-1-0.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 00000000..5b08a2f8 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/application.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/application.ini new file mode 100644 index 00000000..0977acf2 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/application.ini @@ -0,0 +1,26 @@ +; This file is not used. If you modify it and want the application to use +; your modifications, move it under the browser/ subdirectory and start with +; the "-app /path/to/browser/application.ini" argument. +[App] +Vendor=Mozilla +Name=Firefox +RemotingName=firefox +Version=79.0 +BuildID=20200720193547 +SourceRepository=https://hg.mozilla.org/releases/mozilla-release +SourceStamp=df3ed76cf46b23c9b658cd5be4cdd4162d86f736 +ID={ec8030f7-c20a-464f-9b0e-13a3a9e97384} + +[Gecko] +MinVersion=79.0 +MaxVersion=79.0 + +[XRE] +EnableProfileMigrator=1 + +[Crash Reporter] +Enabled=1 +ServerURL=https://crash-reports.mozilla.com/submit?id={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&version=79.0&buildid=20200720193547 + +[AppUpdate] +URL=https://aus5.mozilla.org/update/6/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%SYSTEM_CAPABILITIES%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_150.png b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_150.png new file mode 100644 index 00000000..f764a489 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_150.png differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_70.png b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_70.png new file mode 100644 index 00000000..197a645b Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/VisualElements/VisualElements_70.png differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/crashreporter-override.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/crashreporter-override.ini new file mode 100644 index 00000000..f14b1c4f --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/crashreporter-override.ini @@ -0,0 +1,9 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This file is in the UTF-8 encoding +[Strings] +# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information. +CrashReporterProductErrorText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nUnfortunately the crash reporter is unable to submit a crash report.\n\nDetails: %s +CrashReporterDescriptionText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nTo help us diagnose and fix the problem, you can send us a crash report. diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/doh-rollout@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/doh-rollout@mozilla.org.xpi new file mode 100644 index 00000000..e5e43d2c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/doh-rollout@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/formautofill@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/formautofill@mozilla.org.xpi new file mode 100644 index 00000000..27aae885 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/formautofill@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/screenshots@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/screenshots@mozilla.org.xpi new file mode 100644 index 00000000..9565d37f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/screenshots@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat-reporter@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat-reporter@mozilla.org.xpi new file mode 100644 index 00000000..ef1babd6 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat-reporter@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat@mozilla.org.xpi b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat@mozilla.org.xpi new file mode 100644 index 00000000..3e1e0366 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/features/webcompat@mozilla.org.xpi differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/browser/omni.ja b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/omni.ja new file mode 100644 index 00000000..1fbc0583 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/browser/omni.ja differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.exe new file mode 100644 index 00000000..66ed0d10 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.ini new file mode 100644 index 00000000..1247d503 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/crashreporter.ini @@ -0,0 +1,60 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This file is in the UTF-8 encoding +[Strings] +# LOCALIZATION NOTE (isRTL): +# Leave this entry empty unless your language requires right-to-left layout, +# for example like Arabic, Hebrew, Persian. If your language needs RTL, please +# use the untranslated English word "yes" as value +isRTL= +CrashReporterTitle=Crash Reporter +# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla") +CrashReporterVendorTitle=%s Crash Reporter +# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information. +CrashReporterErrorText=The application had a problem and crashed.\n\nUnfortunately, the crash reporter is unable to submit a report for this crash.\n\nDetails: %s +# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered! +CrashReporterProductErrorText2=%s had a problem and crashed.\n\nUnfortunately, the crash reporter is unable to submit a crash report.\n\nDetails: %s +CrashReporterSorry=We're Sorry +# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name. +CrashReporterDescriptionText2=%s had a problem and crashed.\n\nTo help us diagnose and fix the problem, you can send us a crash report. +CrashReporterDefault=This application is run after a crash to report the problem to the application vendor. It should not be run directly. +Details=Details… +ViewReportTitle=Report Contents +CommentGrayText=Add a comment (comments are publicly visible) +ExtraReportInfo=This report also contains technical information about the state of the application when it crashed. +# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name. +CheckSendReport=Tell %s about this crash so they can fix it +CheckIncludeURL=Include the address of the page I was on +CheckAllowEmail=Allow %s to contact me about this report +EmailGrayText=Enter your email address here +ReportPreSubmit2=Your crash report will be submitted before you quit or restart. +ReportDuringSubmit2=Submitting your report… +ReportSubmitSuccess=Report submitted successfully! +ReportSubmitFailed=There was a problem submitting your report. +ReportResubmit=Resending reports that previously failed to send… +# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name. +Quit2=Quit %s +# LOCALIZATION NOTE (Restart): The %s is replaced with the product name. +Restart=Restart %s +Ok=OK +Close=Close + +# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1 +CrashID=Crash ID: %s +# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details. +CrashDetailsURL=You can view details of this crash at %s +ErrorBadArguments=The application passed an invalid argument. +ErrorExtraFileExists=The application didn't leave an application data file. +ErrorExtraFileRead=Couldn't read the application data file. +ErrorExtraFileMove=Couldn't move application data file. +ErrorDumpFileExists=The application did not leave a crash dump file. +ErrorDumpFileMove=Couldn't move crash dump. +ErrorNoProductName=The application did not identify itself. +ErrorNoServerURL=The application did not specify a crash reporting server. +ErrorNoSettingsPath=Couldn't find the crash reporter's settings. +ErrorCreateDumpDir=Couldn't create pending dump directory. +# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name. +ErrorEndOfLife=The version of %s you are using is no longer supported. Crash reports are no longer being accepted for this version. Please consider upgrading to a supported version. + diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/d3dcompiler_47.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/d3dcompiler_47.dll new file mode 100644 index 00000000..b1202611 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/d3dcompiler_47.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/default-browser-agent.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/default-browser-agent.exe new file mode 100644 index 00000000..5fee2314 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/default-browser-agent.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/defaults/pref/channel-prefs.js b/Resources/MozillaFirefoxPortable/App/Firefox64/defaults/pref/channel-prefs.js new file mode 100644 index 00000000..6b9d3f19 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/defaults/pref/channel-prefs.js @@ -0,0 +1,9 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +// +// This pref is in its own file for complex reasons. See the comment in +// browser/app/Makefile.in, bug 756325, and bug 1431342 for details. Do not add +// other prefs to this file. + +pref("app.update.channel", "release"); diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/dependentlibs.list b/Resources/MozillaFirefoxPortable/App/Firefox64/dependentlibs.list new file mode 100644 index 00000000..4474cfe9 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/dependentlibs.list @@ -0,0 +1,16 @@ +api-ms-win-crt-stdio-l1-1-0.dll +api-ms-win-crt-runtime-l1-1-0.dll +api-ms-win-crt-math-l1-1-0.dll +api-ms-win-crt-filesystem-l1-1-0.dll +api-ms-win-crt-convert-l1-1-0.dll +api-ms-win-crt-string-l1-1-0.dll +api-ms-win-crt-heap-l1-1-0.dll +api-ms-win-crt-environment-l1-1-0.dll +api-ms-win-crt-utility-l1-1-0.dll +mozglue.dll +api-ms-win-crt-time-l1-1-0.dll +api-ms-win-crt-multibyte-l1-1-0.dll +nss3.dll +lgpllibs.dll +api-ms-win-crt-locale-l1-1-0.dll +xul.dll diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.VisualElementsManifest.xml b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.VisualElementsManifest.xml new file mode 100644 index 00000000..85e09dd7 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.VisualElementsManifest.xml @@ -0,0 +1,12 @@ + + + + + diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe new file mode 100644 index 00000000..26f64721 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe.sig b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe.sig new file mode 100644 index 00000000..1905c684 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/firefox.exe.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/fonts/TwemojiMozilla.ttf b/Resources/MozillaFirefoxPortable/App/Firefox64/fonts/TwemojiMozilla.ttf new file mode 100644 index 00000000..6091c679 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/fonts/TwemojiMozilla.ttf differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/freebl3.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/freebl3.dll new file mode 100644 index 00000000..eff5312e Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/freebl3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll new file mode 100644 index 00000000..68d91b6a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll.sig b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll.sig new file mode 100644 index 00000000..cc484dc8 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/clearkey.dll.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/manifest.json b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/manifest.json new file mode 100644 index 00000000..f86ab90f --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/gmp-clearkey/0.1/manifest.json @@ -0,0 +1,9 @@ +{ + "name": "clearkey", + "description": "ClearKey Gecko Media Plugin", + "version": "1", + "x-cdm-module-versions": "4", + "x-cdm-interface-versions": "10", + "x-cdm-host-versions": "10", + "x-cdm-codecs": "avc1" +} \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/lgpllibs.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/lgpllibs.dll new file mode 100644 index 00000000..7dbadcdf Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/lgpllibs.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/libEGL.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/libEGL.dll new file mode 100644 index 00000000..72194d0c Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/libEGL.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/libGLESv2.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/libGLESv2.dll new file mode 100644 index 00000000..6984190f Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/libGLESv2.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice.exe new file mode 100644 index 00000000..a05fd489 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice_installer.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice_installer.exe new file mode 100644 index 00000000..ecbe5338 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/maintenanceservice_installer.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/minidump-analyzer.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/minidump-analyzer.exe new file mode 100644 index 00000000..603dd327 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/minidump-analyzer.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/mozavcodec.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/mozavcodec.dll new file mode 100644 index 00000000..958d9098 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/mozavcodec.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/mozavutil.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/mozavutil.dll new file mode 100644 index 00000000..e16baded Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/mozavutil.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/mozglue.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/mozglue.dll new file mode 100644 index 00000000..bf379504 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/mozglue.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/msvcp140.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/msvcp140.dll new file mode 100644 index 00000000..934a2102 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/msvcp140.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/nss3.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/nss3.dll new file mode 100644 index 00000000..b5deee7d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/nss3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/nssckbi.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/nssckbi.dll new file mode 100644 index 00000000..de8871bb Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/nssckbi.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/omni.ja b/Resources/MozillaFirefoxPortable/App/Firefox64/omni.ja new file mode 100644 index 00000000..b27ec9be Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/omni.ja differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/osclientcerts.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/osclientcerts.dll new file mode 100644 index 00000000..a485658a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/osclientcerts.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/pingsender.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/pingsender.exe new file mode 100644 index 00000000..b20b2de9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/pingsender.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/platform.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/platform.ini new file mode 100644 index 00000000..484871a4 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/platform.ini @@ -0,0 +1,5 @@ +[Build] +BuildID=20200720193547 +Milestone=79.0 +SourceRepository=https://hg.mozilla.org/releases/mozilla-release +SourceStamp=df3ed76cf46b23c9b658cd5be4cdd4162d86f736 diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe new file mode 100644 index 00000000..d305e9e8 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe.sig b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe.sig new file mode 100644 index 00000000..cc225296 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-container.exe.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-hang-ui.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-hang-ui.exe new file mode 100644 index 00000000..76e8f5e9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/plugin-hang-ui.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/precomplete b/Resources/MozillaFirefoxPortable/App/Firefox64/precomplete new file mode 100644 index 00000000..18ae6118 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/precomplete @@ -0,0 +1,87 @@ +remove "xul.dll.sig" +remove "xul.dll" +remove "vcruntime140.dll" +remove "updater.ini" +remove "updater.exe" +remove "uninstall/helper.exe" +remove "ucrtbase.dll" +remove "softokn3.dll" +remove "removed-files" +remove "qipcap64.dll" +remove "precomplete" +remove "plugin-hang-ui.exe" +remove "plugin-container.exe.sig" +remove "plugin-container.exe" +remove "platform.ini" +remove "pingsender.exe" +remove "osclientcerts.dll" +remove "omni.ja" +remove "nssckbi.dll" +remove "nss3.dll" +remove "msvcp140.dll" +remove "mozglue.dll" +remove "mozavutil.dll" +remove "mozavcodec.dll" +remove "minidump-analyzer.exe" +remove "maintenanceservice_installer.exe" +remove "maintenanceservice.exe" +remove "libGLESv2.dll" +remove "libEGL.dll" +remove "lgpllibs.dll" +remove "gmp-clearkey/0.1/manifest.json" +remove "gmp-clearkey/0.1/clearkey.dll.sig" +remove "gmp-clearkey/0.1/clearkey.dll" +remove "freebl3.dll" +remove "fonts/TwemojiMozilla.ttf" +remove "firefox.exe.sig" +remove "firefox.exe" +remove "firefox.VisualElementsManifest.xml" +remove "dependentlibs.list" +remove "default-browser-agent.exe" +remove "d3dcompiler_47.dll" +remove "crashreporter.ini" +remove "crashreporter.exe" +remove "browser/omni.ja" +remove "browser/features/webcompat@mozilla.org.xpi" +remove "browser/features/webcompat-reporter@mozilla.org.xpi" +remove "browser/features/screenshots@mozilla.org.xpi" +remove "browser/features/formautofill@mozilla.org.xpi" +remove "browser/features/doh-rollout@mozilla.org.xpi" +remove "browser/crashreporter-override.ini" +remove "browser/VisualElements/VisualElements_70.png" +remove "browser/VisualElements/VisualElements_150.png" +remove "application.ini" +remove "api-ms-win-crt-utility-l1-1-0.dll" +remove "api-ms-win-crt-time-l1-1-0.dll" +remove "api-ms-win-crt-string-l1-1-0.dll" +remove "api-ms-win-crt-stdio-l1-1-0.dll" +remove "api-ms-win-crt-runtime-l1-1-0.dll" +remove "api-ms-win-crt-process-l1-1-0.dll" +remove "api-ms-win-crt-private-l1-1-0.dll" +remove "api-ms-win-crt-multibyte-l1-1-0.dll" +remove "api-ms-win-crt-math-l1-1-0.dll" +remove "api-ms-win-crt-locale-l1-1-0.dll" +remove "api-ms-win-crt-heap-l1-1-0.dll" +remove "api-ms-win-crt-filesystem-l1-1-0.dll" +remove "api-ms-win-crt-environment-l1-1-0.dll" +remove "api-ms-win-crt-convert-l1-1-0.dll" +remove "api-ms-win-crt-conio-l1-1-0.dll" +remove "api-ms-win-core-timezone-l1-1-0.dll" +remove "api-ms-win-core-synch-l1-2-0.dll" +remove "api-ms-win-core-processthreads-l1-1-1.dll" +remove "api-ms-win-core-localization-l1-2-0.dll" +remove "api-ms-win-core-file-l2-1-0.dll" +remove "api-ms-win-core-file-l1-2-0.dll" +remove "IA2Marshal.dll" +remove "AccessibleMarshal.dll" +remove "AccessibleHandler.dll" +remove "Accessible.tlb" +rmdir "uninstall/" +rmdir "gmp-clearkey/0.1/" +rmdir "gmp-clearkey/" +rmdir "fonts/" +rmdir "defaults/pref/" +rmdir "defaults/" +rmdir "browser/features/" +rmdir "browser/VisualElements/" +rmdir "browser/" diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/qipcap64.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/qipcap64.dll new file mode 100644 index 00000000..471e8bd9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/qipcap64.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/removed-files b/Resources/MozillaFirefoxPortable/App/Firefox64/removed-files new file mode 100644 index 00000000..c590bcb9 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/removed-files @@ -0,0 +1 @@ +chrome.manifest diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/softokn3.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/softokn3.dll new file mode 100644 index 00000000..b696bfbf Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/softokn3.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/ucrtbase.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/ucrtbase.dll new file mode 100644 index 00000000..90bd467d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/ucrtbase.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/uninstall/helper.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/uninstall/helper.exe new file mode 100644 index 00000000..5a593555 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/uninstall/helper.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/update-settings.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/update-settings.ini new file mode 100644 index 00000000..a83179b2 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/update-settings.ini @@ -0,0 +1,5 @@ +; If you modify this file updates may fail. +; Do not modify this file. + +[Settings] +ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-release diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/updater.exe b/Resources/MozillaFirefoxPortable/App/Firefox64/updater.exe new file mode 100644 index 00000000..0c3ca0ad Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/updater.exe differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/updater.ini b/Resources/MozillaFirefoxPortable/App/Firefox64/updater.ini new file mode 100644 index 00000000..46b9b42e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/Firefox64/updater.ini @@ -0,0 +1,22 @@ +; This Source Code Form is subject to the terms of the Mozilla Public +; License, v. 2.0. If a copy of the MPL was not distributed with this +; file, You can obtain one at http://mozilla.org/MPL/2.0/. + +; This file is in the UTF-8 encoding +; All strings must be less than 600 chars. +[Strings] +Title=Firefox Update +Info=Firefox is installing your updates and will start in a few moments… +MozillaMaintenanceDescription=The Mozilla Maintenance Service ensures that you have the latest and most secure version of Mozilla Firefox on your computer. Keeping Firefox up to date is very important for your online security, and Mozilla strongly recommends that you keep this service enabled. + +; IMPORTANT: This file should always start with a newline in case a locale +; provided updater.ini does not end with a newline. +; Application to launch after an update has been successfully applied. This +; must be in the same directory or a sub-directory of the directory of the +; application executable that initiated the software update. +[PostUpdateWin] +; ExeRelPath is the path to the PostUpdateWin executable relative to the +; application executable. +ExeRelPath=uninstall\helper.exe +; ExeArg is the argument to pass to the PostUpdateWin exe +ExeArg=/PostUpdate diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/vcruntime140.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/vcruntime140.dll new file mode 100644 index 00000000..34002d39 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/vcruntime140.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll b/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll new file mode 100644 index 00000000..1390834d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll differ diff --git a/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll.sig b/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll.sig new file mode 100644 index 00000000..8234a1e9 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/App/Firefox64/xul.dll.sig differ diff --git a/Resources/MozillaFirefoxPortable/App/readme.txt b/Resources/MozillaFirefoxPortable/App/readme.txt new file mode 100644 index 00000000..14d4ece1 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/App/readme.txt @@ -0,0 +1 @@ +The files in this directory are necessary for Firefox Portable to function. There is normally no need to directly access or alter any of the files within these directories. \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/FirefoxPortable.exe b/Resources/MozillaFirefoxPortable/FirefoxPortable.exe new file mode 100644 index 00000000..78eb3d1a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/FirefoxPortable.exe differ diff --git a/Resources/MozillaFirefoxPortable/Other/Help/images/donation_button.png b/Resources/MozillaFirefoxPortable/Other/Help/images/donation_button.png new file mode 100644 index 00000000..f19dea7a Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Help/images/donation_button.png differ diff --git a/Resources/MozillaFirefoxPortable/Other/Help/images/favicon.ico b/Resources/MozillaFirefoxPortable/Other/Help/images/favicon.ico new file mode 100644 index 00000000..ed849b2d Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Help/images/favicon.ico differ diff --git a/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_footer.png b/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_footer.png new file mode 100644 index 00000000..5ebdc028 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_footer.png differ diff --git a/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_header.png b/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_header.png new file mode 100644 index 00000000..cf1ebf76 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Help/images/help_background_header.png differ diff --git a/Resources/MozillaFirefoxPortable/Other/Help/images/help_logo_top.png b/Resources/MozillaFirefoxPortable/Other/Help/images/help_logo_top.png new file mode 100644 index 00000000..1a705050 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Help/images/help_logo_top.png differ diff --git a/Resources/MozillaFirefoxPortable/Other/Source/AppSource.txt b/Resources/MozillaFirefoxPortable/Other/Source/AppSource.txt new file mode 100644 index 00000000..632c27ad --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/AppSource.txt @@ -0,0 +1,2 @@ +Firefox source code is available from the Firefox Portable page: +http://portableapps.com/apps/internet/firefox_portable \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/CheckForPlatformSplashDisable.nsh b/Resources/MozillaFirefoxPortable/Other/Source/CheckForPlatformSplashDisable.nsh new file mode 100644 index 00000000..35e5d7c3 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/CheckForPlatformSplashDisable.nsh @@ -0,0 +1,55 @@ +; CheckForPlatformSplashDisable 1.2 (2020-03-20) +; +; Checks if the platform wants the splash screen disabled +; Copyright 2008-2020 John T. Haller of PortableApps.com +; Released under the GPL +; +; Usage: ${CheckForPlatformSplashDisable} _v +; +; Example: ${CheckForPlatformSplashDisable} $DisableSplashScreen +; If the platform wants it disabled, $DisableSplashScreen will be true. +; Otherwise it will be whatever its previous value was +; +; Requires: ProcFunc.nsh 2.2 or higher from PortableApps.com + +!ifndef CheckForPlatformSplashDisable + !include LogicLib.nsh + !include ProcFunc.nsh + + !macro CheckForPlatformSplashDisable _v + ${If} ${_v} != true + ;Get parameter and prep stack + Push $0 + Push $1 + Push $R0 + + StrCpy $0 ${_v} + + ;Read the environment variable + ReadEnvStr $1 PortableApps.comDisableSplash + ${If} $1 == true + ${GetParent} $EXEDIR $1 + ${If} ${FileExists} "$1\PortableApps.com\PortableAppsPlatform.exe" + MoreInfo::GetProductName `$1\PortableApps.com\PortableAppsPlatform.exe` + Pop $R0 + ${If} $R0 == "PortableApps.com Platform" + MoreInfo::GetCompanyName `$1\PortableApps.com\PortableAppsPlatform.exe` + Pop $R0 + ${If} $R0 == "PortableApps.com" + ${If} ${ProcessExists} "PortableAppsPlatform.exe" + StrCpy $0 true + ${EndIf} + ${EndIf} + ${EndIf} + ${EndIf} + ${EndIf} + + ;Restore the stack and store the variable + Pop $R0 + Pop $1 + Exch $0 + Pop ${_v} + ${EndIf} + !macroend + !define CheckForPlatformSplashDisable '!insertmacro CheckForPlatformSplashDisable' +!endif \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.ini b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.ini new file mode 100644 index 00000000..10658c05 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.ini @@ -0,0 +1,16 @@ +[FirefoxPortable] +FirefoxDirectory=App\firefox +ProfileDirectory=Data\profile +SettingsDirectory=Data\settings +PluginsDirectory=Data\plugins +FirefoxExecutable=firefox.exe +AdditionalParameters= +LocalHomepage= +DisableSplashScreen=false +AllowMultipleInstances=false +DisableIntelligentStart=false +SkipCompregFix=false +RunLocally=false + +# The above options are explained in the included readme.txt +# This INI file is an example only and is not used unless it is placed as described in the included readme.txt \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.jpg b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.jpg new file mode 100644 index 00000000..48911179 Binary files /dev/null and b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortable.jpg differ diff --git a/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortableU.nsi b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortableU.nsi new file mode 100644 index 00000000..90780e90 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/FirefoxPortableU.nsi @@ -0,0 +1,815 @@ +;Copyright 2004-2020 John T. Haller of PortableApps.com + +;Website: http://PortableApps.com/FirefoxPortable + +;This software is OSI Certified Open Source Software. +;OSI Certified is a certification mark of the Open Source Initiative. + +;This program is free software; you can redistribute it and/or +;modify it under the terms of the GNU General Public License +;as published by the Free Software Foundation; either version 2 +;of the License, or (at your option) any later version. + +;This program is distributed in the hope that it will be useful, +;but WITHOUT ANY WARRANTY; without even the implied warranty of +;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;GNU General Public License for more details. + +;You should have received a copy of the GNU General Public License +;along with this program; if not, write to the Free Software +;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +!define PF_XMMI64_INSTRUCTIONS_AVAILABLE 10 + +!define PORTABLEAPPNAME "Mozilla Firefox, Portable Edition" +!define NamePortable "Mozilla Firefox, Portable Edition" +!define APPNAME "Firefox" +!define NAME "FirefoxPortable" +!define AppID "FirefoxPortable" +!define VER "2.2.1.0" +!define WEBSITE "PortableApps.com/FirefoxPortable" +!define DEFAULTEXE "firefox.exe" +!define DEFAULTAPPDIR "firefox" +!define LAUNCHERLANGUAGE "English" + +;=== Program Details +Name "${PORTABLEAPPNAME}" +OutFile "..\..\${NAME}.exe" +Caption "${PORTABLEAPPNAME} | PortableApps.com" +VIProductVersion "${VER}" +VIAddVersionKey ProductName "${PORTABLEAPPNAME}" +VIAddVersionKey Comments "Allows ${APPNAME} to be run from a removable drive. For additional details, visit ${WEBSITE}" +VIAddVersionKey CompanyName "PortableApps.com" +VIAddVersionKey LegalCopyright "John T. Haller" +VIAddVersionKey FileDescription "${PORTABLEAPPNAME}" +VIAddVersionKey FileVersion "${VER}" +VIAddVersionKey ProductVersion "${VER}" +VIAddVersionKey InternalName "${PORTABLEAPPNAME}" +VIAddVersionKey LegalTrademarks "Firefox is a Registered Trademark of The Mozilla Foundation. PortableApps.com is a Registered Trademark of Rare Ideas, LLC." +VIAddVersionKey OriginalFilename "${NAME}.exe" +;VIAddVersionKey PrivateBuild "" +;VIAddVersionKey SpecialBuild "" + +;=== Runtime Switches +CRCCheck On +WindowIcon Off +SilentInstall Silent +AutoCloseWindow True +RequestExecutionLevel user +XPStyle on +Unicode true +ManifestDPIAware true + +; Best Compression +SetCompress Auto +SetCompressor /SOLID lzma +SetCompressorDictSize 32 +SetDatablockOptimize On + +;=== Include +;(Standard NSIS) +!include FileFunc.nsh +!insertmacro GetParameters ;Requires NSIS 2.40 or better +!include LogicLib.nsh +!include Registry.nsh +!include TextFunc.nsh +!insertmacro GetParent +!include WinVer.nsh +!include WordFunc.nsh +!insertmacro VersionCompare + +;(NSIS Plugins) +!include TextReplace.nsh + +;(Custom) +!include CheckForPlatformSplashDisable.nsh +!include ProcFunc.nsh +!include ReplaceInFileWithTextReplace.nsh +!include ReadINIStrWithDefault.nsh +!include RMDirIfNotJunction.nsh +!include SetFileAttributesDirectoryNormal.nsh + +;=== Program Icon +Icon "..\..\App\AppInfo\appicon.ico" + +;=== Icon & Stye === +BrandingText "PortableApps.com®" + +;=== Languages +LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LAUNCHERLANGUAGE}.nlf" +!include PortableApps.comLauncherLANG_${LAUNCHERLANGUAGE}.nsh + +;=== Variables +Var PROGRAMDATA ;Missing system var +Var PROGRAMDIRECTORY +Var PROGRAMDIRECTORY64 +Var PROFILEDIRECTORY +Var ORIGINALPROFILEDIRECTORY +Var SETTINGSDIRECTORY +Var PLUGINSDIRECTORY +Var ADDITIONALPARAMETERS +Var ALLOWMULTIPLEINSTANCES +Var SKIPCOMPREGFIX +Var EXECSTRING +Var PROGRAMEXECUTABLE +Var INIPATH +Var DISABLESPLASHSCREEN +Var DISABLEINTELLIGENTSTART +Var LOCALHOMEPAGE +Var ISDEFAULTDIRECTORY +Var RUNLOCALLY +Var WAITFORPROGRAM +Var LASTPROFILEDIRECTORY +Var APPDATAPATH +Var SECONDARYLAUNCH +Var MOZILLAORGKEYEXISTS +Var HKLMMOZILLAORGKEYEXISTS +Var MISSINGFILEORPATH +Var CRASHREPORTSDIREXISTS +Var EXTENSIONSDIREXISTS +Var bolHKCUSoftwareMozillaFirefoxCrashReporterExists +Var bolHKCUSoftwareMozillaFirefoxExists +Var bolHKCUSoftwareMozillaExists +Var bolPendingPingsExists +Var bolProgramDataMozillaUpdatesExists +Var SubmitCrashReportBackup +Var bolLauncherIsAlreadyRunning +Var strPassedParameters +Var bolAlwaysUse32Bit +Var bolUsing64Bit +;=== START INTEGRITY CHECK 1.1 Var +Var bolCustomIntegrityCheckStartUnsupported + Var strCustomIntegrityCheckVersion +;=== END INTEGRITY CHECK + +Section .onInit + ExpandEnvStrings $PROGRAMDATA "%PROGRAMDATA%" + + System::Call kernel32::IsProcessorFeaturePresent(i${PF_XMMI64_INSTRUCTIONS_AVAILABLE})i.r0 + + ${If} $0 == 0 + ;SSE2 unavailable + MessageBox MB_ICONEXCLAMATION|MB_OK "This computer has an older CPU that lacks SSE2 instruction set support. Mozilla Firefox 49 and later can not run on this computer." + Abort + ${EndIf} + + ;=== START INTEGRITY CHECK 1.1 OnInit + ;Check for improper install/upgrade without running the PA.c Installer which can cause issues + ;Designed to not require ReadINIStrWithDefault which is not included in the PA.c Launcher code + + ${If} ${FileExists} "$EXEDIR\App\AppInfo\appinfo.ini" + ${If} ${FileExists} "$EXEDIR\App\AppInfo\pac_installer_log.ini" + ReadINIStr $R0 "$EXEDIR\App\AppInfo\pac_installer_log.ini" "PortableApps.comInstaller" "Info2" + ${If} $R0 == "This file was generated by the PortableApps.com Installer wizard and modified by the official PortableApps.com Installer TM Rare Ideas, LLC as the app was installed." + StrCpy $R1 "true" + ${Else} + StrCpy $R1 "false" + ${EndIf} + ${Else} + StrCpy $R1 "false" + ${EndIf} + ${Else} + StrCpy $R1 "true" + ${EndIf} + + ${If} $R1 == "false" + ;Upgrade or install sans the PortableApps.com Installer which can cause compatibility issues + ClearErrors + ReadINIStr $0 "$EXEDIR\App\AppInfo\appinfo.ini" "Version" "PackageVersion" + ${If} ${Errors} + ${OrIf} $0 == "" + StrCpy $0 "0.0.0.1" + ClearErrors + ${EndIf} + + ClearErrors + ReadINIStr $1 "$EXEDIR\Data\settings\${AppID}Settings.ini" "${AppID}Settings" "InvalidPackageWarningShown" + ${If} ${Errors} + ${OrIf} $1 == "" + StrCpy $1 "0.0.0.0" + ClearErrors + ${EndIf} + + ${VersionCompare} $0 $1 $2 + ${If} $2 == 1 + MessageBox MB_YESNO|MB_ICONQUESTION|MB_DEFBUTTON2 `Integrity Failure Warning: ${NamePortable} was installed or upgraded without using its installer and some critical files may have been modified. This could cause data loss, personal data left behind on a shared PC, functionality issues, and/or may be a violation of the application's license. Neither the application publisher nor PortableApps.com will be responsible for any issues you encounter.$\r$\n$\r$\nWould you like to start ${NamePortable} in its current unsupported state?` IDYES CustomIntegrityCheckGotoStartAnyway IDNO CustomIntegrityCheckGotoDownloadQuestion + + CustomIntegrityCheckGotoDownloadQuestion: + ;Check to ensure we have a valid homepage before asking the user + StrCpy $R0 "" + ${If} ${FileExists} "$EXEDIR\App\AppInfo\appinfo.ini" + ReadINIStr $R0 "$EXEDIR\App\AppInfo\appinfo.ini" "Details" "Homepage" + ${EndIf} + + ${If} $R0 == "" + Abort + ${Else} + StrCpy $R1 $R0 4 + ${If} $R1 != "http" + ${AndIf} $R1 != "HTTP" + StrCpy $R0 "http://$R0" + ${EndIf} + ${EndIf} + + MessageBox MB_YESNO|MB_ICONQUESTION|MB_DEFBUTTON1 `Would you like to visit the ${NamePortable} homepage to download the app and upgrade your current install?` IDYES CustomIntegrityCheckGotoURL IDNO CustomIntegrityCheckGotoAbort + + CustomIntegrityCheckGotoURL: + ExecShell "open" $R0 + Abort + + CustomIntegrityCheckGotoAbort: + Abort + + CustomIntegrityCheckGotoStartAnyway: + StrCpy $bolCustomIntegrityCheckStartUnsupported true + StrCpy $strCustomIntegrityCheckVersion $0 + ${EndIf} + ${EndIf} + ;=== END INTEGRITY CHECK +SectionEnd + +Section "Main" + ;=== Create a mutex so we can determine if this specific launcher is already running + ${WordReplace} $EXEDIR "\" "-" "+" $0 + System::Call 'kernel32::CreateMutex(i 0, i 0, t "FirefoxPortable$0") ?e' + Pop $R0 + ${If} $R0 != 0 + StrCpy $bolLauncherIsAlreadyRunning true + ${Else} + StrCpy $bolLauncherIsAlreadyRunning false + ${EndIf} + + ;=== Setup variables + ReadEnvStr $APPDATAPATH "APPDATA" + + ;=== Find the INI file, if there is one + IfFileExists "$EXEDIR\${NAME}.ini" "" NoINI + StrCpy "$INIPATH" "$EXEDIR" + + ;=== Read the parameters from the INI file + ${ReadINIStrWithDefault} $0 "$INIPATH\${NAME}.ini" "${NAME}" "${APPNAME}Directory" "App\${DEFAULTAPPDIR}" + StrCpy $PROGRAMDIRECTORY "$EXEDIR\$0" + StrCpy $PROGRAMDIRECTORY64 "$EXEDIR\$064" + ${ReadINIStrWithDefault} $0 "$INIPATH\${NAME}.ini" "${NAME}" "ProfileDirectory" "Data\profile" + StrCpy $PROFILEDIRECTORY "$EXEDIR\$0" + ${ReadINIStrWithDefault} $0 "$INIPATH\${NAME}.ini" "${NAME}" "SettingsDirectory" "Data\settings" + StrCpy $SETTINGSDIRECTORY "$EXEDIR\$0" + ${ReadINIStrWithDefault} $0 "$INIPATH\${NAME}.ini" "${NAME}" "PluginsDirectory" "Data\plugins" + StrCpy $PLUGINSDIRECTORY "$EXEDIR\$0" + ${ReadINIStrWithDefault} $ADDITIONALPARAMETERS "$INIPATH\${NAME}.ini" "${NAME}" "AdditionalParameters" "" + ${ReadINIStrWithDefault} $ALLOWMULTIPLEINSTANCES "$INIPATH\${NAME}.ini" "${NAME}" "AllowMultipleInstances" "false" + ${ReadINIStrWithDefault} $SKIPCOMPREGFIX "$INIPATH\${NAME}.ini" "${NAME}" "SkipCompregFix" "false" + ${ReadINIStrWithDefault} $PROGRAMEXECUTABLE "$INIPATH\${NAME}.ini" "${NAME}" "${APPNAME}Executable" "${DEFAULTEXE}" + ${ReadINIStrWithDefault} $WAITFORPROGRAM "$INIPATH\${NAME}.ini" "${NAME}" "WaitFor${APPNAME}" "false" + ${ReadINIStrWithDefault} $DISABLESPLASHSCREEN "$INIPATH\${NAME}.ini" "${NAME}" "DisableSplashScreen" "false" + ${ReadINIStrWithDefault} $DISABLEINTELLIGENTSTART "$INIPATH\${NAME}.ini" "${NAME}" "DisableIntelligentStart" "false" + ${ReadINIStrWithDefault} $LOCALHOMEPAGE "$INIPATH\${NAME}.ini" "${NAME}" "LocalHomepage" "" + ${ReadINIStrWithDefault} $RUNLOCALLY "$INIPATH\${NAME}.ini" "${NAME}" "RunLocally" "false" + ${If} $RUNLOCALLY == "true" + StrCpy $WAITFORPROGRAM "true" + ${EndIf} + + ${ReadINIStrWithDefault} $bolAlwaysUse32Bit "$INIPATH\${NAME}.ini" "${NAME}" "AlwaysUse32Bit" "false" + ${If} $bolAlwaysUse32Bit == "true" + StrCpy $bolAlwaysUse32Bit true + ${Else} + StrCpy $bolAlwaysUse32Bit false + ${EndIf} + + ;CheckIfDefaultDirectories: + ;=== Check if default directories + StrCmp $PROGRAMDIRECTORY "$EXEDIR\App\${DEFAULTAPPDIR}" "" EndINI + StrCmp $PROFILEDIRECTORY "$EXEDIR\Data\profile" "" EndINI + StrCmp $PLUGINSDIRECTORY "$EXEDIR\Data\plugins" "" EndINI + StrCmp $SETTINGSDIRECTORY "$EXEDIR\Data\settings" "" EndINI + StrCpy $ISDEFAULTDIRECTORY "true" + + EndINI: + IfFileExists "$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" FoundProgramEXE NoProgramEXE + + NoINI: + ;=== No INI file, so we'll use the defaults + StrCpy $ADDITIONALPARAMETERS "" + StrCpy $ALLOWMULTIPLEINSTANCES "false" + StrCpy $SKIPCOMPREGFIX "false" + StrCpy $WAITFORPROGRAM "false" + StrCpy $PROGRAMEXECUTABLE "${DEFAULTEXE}" + StrCpy $DISABLESPLASHSCREEN "false" + StrCpy $DISABLEINTELLIGENTSTART "false" + StrCpy $bolAlwaysUse32Bit false + + IfFileExists "$EXEDIR\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" CheckPortableProgramDIR + StrCpy $PROGRAMDIRECTORY "$EXEDIR\App\${DEFAULTAPPDIR}" + StrCpy $PROGRAMDIRECTORY64 "$EXEDIR\App\${DEFAULTAPPDIR}64" + StrCpy $PROFILEDIRECTORY "$EXEDIR\Data\profile" + StrCpy $PLUGINSDIRECTORY "$EXEDIR\Data\plugins" + StrCpy $SETTINGSDIRECTORY "$EXEDIR\Data\settings" + StrCpy $ISDEFAULTDIRECTORY "true" + Goto FoundProgramEXE + + CheckPortableProgramDIR: + IfFileExists "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" NoProgramEXE + StrCpy $PROGRAMDIRECTORY "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}" + StrCpy $PROGRAMDIRECTORY64 "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}64" + StrCpy $PROFILEDIRECTORY "$EXEDIR\${NAME}\Data\profile" + StrCpy $PLUGINSDIRECTORY "$EXEDIR\${NAME}\Data\plugins" + StrCpy $SETTINGSDIRECTORY "$EXEDIR\${NAME}\Data\settings" + Goto FoundProgramEXE + + NoProgramEXE: + ;=== Program executable not where expected + StrCpy $MISSINGFILEORPATH $PROGRAMEXECUTABLE + MessageBox MB_OK|MB_ICONEXCLAMATION `$(LauncherFileNotFound)` + Abort + + FoundProgramEXE: + StrCpy $ORIGINALPROFILEDIRECTORY $PROFILEDIRECTORY + + IfFileExists "$APPDATA\Mozilla\Firefox\*.*" CheckUserRegistryKey + StrCpy $WAITFORPROGRAM "true" + CheckUserRegistryKey: + ${registry::KeyExists} "HKCU\Software\mozilla.org" $R0 + StrCmp $R0 "-1" CheckMachineRegistryKey ;=== If it doesn't exist, skip the next line + StrCpy $MOZILLAORGKEYEXISTS "true" + CheckMachineRegistryKey: + ${registry::KeyExists} "HKLM\Software\mozilla.org" $R0 + StrCmp $R0 "-1" CheckOtherKeys ;=== If it doesn't exist, skip the next line + StrCpy $HKLMMOZILLAORGKEYEXISTS "true" + CheckOtherKeys: + ${registry::KeyExists} "HKCU\Software\Mozilla" $R0 + ${If} $R0 != "-1" + StrCpy $bolHKCUSoftwareMozillaExists true + ${registry::KeyExists} "HKCU\Software\Mozilla\Firefox" $R0 + ${If} $R0 != "-1" + StrCpy $bolHKCUSoftwareMozillaFirefoxExists true + ${registry::KeyExists} "HKCU\Software\Mozilla\Firefox\Crash Reporter" $R0 + ${If} $R0 != "-1" + StrCpy $bolHKCUSoftwareMozillaFirefoxCrashReporterExists true + ${registry::Read} "HKCU\Software\Mozilla\Firefox\Crash Reporter" "SubmitCrashReport" $SubmitCrashReportBackup $R2 + ${EndIf} + ${EndIf} + ${EndIf} + + ${IfNot} ${FileExists} "$APPDATA\Mozilla\Firefox\Pending Pings\*.*" + StrCpy $bolPendingPingsExists false + ${EndIf} + + ${If} ${FileExists} "$PROGRAMDATA\Mozilla\updates\*.*" + StrCpy $bolProgramDataMozillaUpdatesExists true + ${Else} + StrCpy $bolProgramDataMozillaUpdatesExists false + ${EndIf} + + ;CheckIfRunning: + ;=== Check if running + StrCmp $ALLOWMULTIPLEINSTANCES "true" ProfileWork + ${If} ${ProcessExists} "firefox.exe" + ;=== Is launcher already running? + StrCmp $bolLauncherIsAlreadyRunning false WarnAnotherInstance + StrCpy $SECONDARYLAUNCH "true" + Goto RunProgram + ${Else} + Goto CheckForCrashReports + ${EndIf} + StrCmp $R0 "1" "" CheckForCrashReports + + + WarnAnotherInstance: + MessageBox MB_OK|MB_ICONINFORMATION `$(LauncherAlreadyRunning)` + Abort + + CheckForCrashReports: + IfFileExists "$APPDATA\Mozilla\Firefox\Crash Reports\*.*" "" CheckForExtensionsDirectory + Rename "$APPDATA\Mozilla\Firefox\Crash Reports" "$APPDATA\Mozilla\Firefox\Crash Reports-BackupByFirefoxPortable" + StrCpy $CRASHREPORTSDIREXISTS "true" + StrCpy $WAITFORPROGRAM "true" + + CheckForExtensionsDirectory: + IfFileExists "$APPDATA\Mozilla\Extensions\*.*" "" ProfileWork + Rename "$APPDATA\Mozilla\Extensions" "$APPDATA\Mozilla\Extensions-BackupByFirefoxPortable" + StrCpy $EXTENSIONSDIREXISTS "true" + StrCpy $WAITFORPROGRAM "true" + + ProfileWork: + ;=== Check for an existing profile + IfFileExists "$PROFILEDIRECTORY\prefs.js" ProfileFound + ;=== No profile was found + StrCmp $ISDEFAULTDIRECTORY "true" CopyDefaultProfile CreateProfile + + CopyDefaultProfile: + CreateDirectory "$EXEDIR\Data" + CreateDirectory "$EXEDIR\Data\plugins" + CreateDirectory "$EXEDIR\Data\profile" + CreateDirectory "$EXEDIR\Data\settings" + CopyFiles /SILENT $EXEDIR\App\DefaultData\plugins\*.* $EXEDIR\Data\plugins + CopyFiles /SILENT $EXEDIR\App\DefaultData\profile\*.* $EXEDIR\Data\profile + CopyFiles /SILENT $EXEDIR\App\DefaultData\settings\*.* $EXEDIR\Data\settings + GoTo ProfileFound + + CreateProfile: + IfFileExists "$PROFILEDIRECTORY\*.*" ProfileFound + CreateDirectory "$PROFILEDIRECTORY" + + ProfileFound: + IfFileExists "$SETTINGSDIRECTORY\FirefoxPortableSettings.ini" SettingsFound + CreateDirectory "$SETTINGSDIRECTORY" + FileOpen $R0 "$SETTINGSDIRECTORY\FirefoxPortableSettings.ini" w + FileClose $R0 + WriteINIStr "$SETTINGSDIRECTORY\FirefoxPortableSettings.ini" "FirefoxPortableSettings" "LastProfileDirectory" "NONE" + + SettingsFound: + ${ReadINIStrWithDefault} $R0 "$SETTINGSDIRECTORY\${NAME}Settings.ini" "${NAME}Settings" "SubmitCrashReport" "" + ${If} $R0 != "" + ${registry::Write} "HKCU\Software\Mozilla\Firefox\Crash Reporter" "SubmitCrashReport" "$R0" "REG_DWORD" $R1 + ${EndIf} + + ;=== START INTEGRITY CHECK 1.1 PrePrimary + ${If} $bolCustomIntegrityCheckStartUnsupported == true + WriteINIStr "$EXEDIR\Data\settings\${AppID}Settings.ini" "${AppID}Settings" "InvalidPackageWarningShown" $strCustomIntegrityCheckVersion + ${EndIf} + ;=== END INTEGRITY CHECK + + ;=== Check for read/write + StrCmp $RUNLOCALLY "true" DisplaySplash + ClearErrors + FileOpen $R0 "$PROFILEDIRECTORY\writetest.temp" w + IfErrors "" WriteSuccessful + ;== Write failed, so we're read-only + MessageBox MB_YESNO|MB_ICONQUESTION `$(LauncherAskCopyLocal)` IDYES SwitchToRunLocally + MessageBox MB_OK|MB_ICONINFORMATION `$(LauncherNoReadOnly)` + Abort + + SwitchToRunLocally: + StrCpy $RUNLOCALLY "true" + StrCpy $WAITFORPROGRAM "true" + Goto DisplaySplash + + WriteSuccessful: + FileClose $R0 + Delete "$PROFILEDIRECTORY\writetest.temp" + + DisplaySplash: + ${CheckForPlatformSplashDisable} $DISABLESPLASHSCREEN + StrCmp $DISABLESPLASHSCREEN "true" SkipSplashScreen + ;=== Show the splash screen before processing the files + InitPluginsDir + File /oname=$PLUGINSDIR\splash.jpg "${NAME}.jpg" + newadvsplash::show /NOUNLOAD 2000 0 0 -1 /L $PLUGINSDIR\splash.jpg + + SkipSplashScreen: + ;=== Run locally if needed (aka Portable Firefox Live) + StrCmp $RUNLOCALLY "true" "" CompareProfilePath + RMDir /r "$TEMP\${NAME}\" + CreateDirectory $TEMP\${NAME}\profile + CreateDirectory $TEMP\${NAME}\plugins + CreateDirectory $TEMP\${NAME}\program + CopyFiles /SILENT $PROFILEDIRECTORY\*.* $TEMP\${NAME}\profile + StrCpy $PROFILEDIRECTORY $TEMP\${NAME}\profile + CopyFiles /SILENT $PLUGINSDIRECTORY\*.* $TEMP\${NAME}\plugins + StrCpy $PLUGINSDIRECTORY $TEMP\${NAME}\plugins + CopyFiles /SILENT $PROGRAMDIRECTORY\*.* $TEMP\${NAME}\program + StrCpy $PROGRAMDIRECTORY $TEMP\${NAME}\program + ${SetFileAttributesDirectoryNormal} "$TEMP\${NAME}" + + CompareProfilePath: + ReadINIStr $LASTPROFILEDIRECTORY "$SETTINGSDIRECTORY\${NAME}Settings.ini" "${NAME}Settings" "LastProfileDirectory" + StrCmp $PROFILEDIRECTORY $LASTPROFILEDIRECTORY "" RememberProfilePath + StrCmp $DISABLEINTELLIGENTSTART "true" RememberProfilePath + StrCpy $SKIPCOMPREGFIX "true" + + RememberProfilePath: + WriteINIStr "$SETTINGSDIRECTORY\${NAME}Settings.ini" "${NAME}Settings" "LastProfileDirectory" "$PROFILEDIRECTORY" + + ;FixPrefsJs: + IfFileExists "$PROFILEDIRECTORY\prefs.js" "" FixOtherFiles + StrCmp $LASTPROFILEDIRECTORY "NONE" FixPrefsJsPart2 + StrCpy $2 $LASTPROFILEDIRECTORY 1 ;Last drive letter + StrCpy $3 $PROFILEDIRECTORY 1 ;Current drive letter + StrCmp $2 $3 FixPrefsJsPart2 ;If no change, move on + + ;=== Replace drive letters without impacting other instances of the letter in prefs.js + ${ReplaceInFileCS} "$PROFILEDIRECTORY\prefs.js" `file:///$2` `file:///$3` + ${ReplaceInFileCS} "$PROFILEDIRECTORY\prefs.js" `", "$2:\\` `", "$3:\\` + + FixPrefsJsPart2: + ;=== Be sure the default browser check is disabled + FileOpen $0 "$PROFILEDIRECTORY\prefs.js" a + FileSeek $0 0 END + FileWriteByte $0 "13" + FileWriteByte $0 "10" + FileWrite $0 `user_pref("browser.shell.checkDefaultBrowser", false);` + FileWriteByte $0 "13" + FileWriteByte $0 "10" + StrCmp "$LOCALHOMEPAGE" "" FixPrefsJsClose + StrCpy $3 $EXEDIR + ${WordReplace} $3 "\" "/" "+" $3 + FileWrite $0 `user_pref("browser.startup.homepage", "file:///$3/$LOCALHOMEPAGE");` + FileWriteByte $0 "13" + FileWriteByte $0 "10" + + FixPrefsJsClose: + FileClose $0 + + FixOtherFiles: + StrCmp $LASTPROFILEDIRECTORY "NONE" RunProgram + ${GetParent} $LASTPROFILEDIRECTORY $0 + ${GetParent} $0 $0 + StrCpy $0 '$0\' ;last FirefoxPortable directory + ${GetParent} $ORIGINALPROFILEDIRECTORY $1 + ${GetParent} $1 $1 + StrCpy $1 '$1\' ;current FirefoxPortable directory + StrCmp $0 $1 RunProgram + ${If} ${FileExists} "$PROFILEDIRECTORY\pluginreg.dat" + ${ReplaceInFile} "$PROFILEDIRECTORY\pluginreg.dat" $0 $1 + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\extensions.ini" + ${ReplaceInFile} "$PROFILEDIRECTORY\extensions.ini" $0 $1 + ;Update extensions SQL + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\extensions.sqlite" + nsExec::Exec `"$EXEDIR\App\Bin\sqlite3.exe" "$PROFILEDIRECTORY\extensions.sqlite" "UPDATE addon SET descriptor = '$1' || SUBSTR(descriptor,(LENGTH('$0')+1)) WHERE descriptor LIKE '$0%';"` + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\mimeTypes.rdf" + ${ReplaceInFile} "$PROFILEDIRECTORY\mimeTypes.rdf" $0 $1 + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\prefs.js" + ${ReplaceInFile} "$PROFILEDIRECTORY\prefs.js" $0 $1 + ${WordReplace} $0 "\" "/" "+" $2 + ${WordReplace} $1 "\" "/" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\prefs.js" "file:///$2" "file:///$3" + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\extensions.json" + ${WordReplace} $0 "\" "\\" "+" $2 + ${WordReplace} $1 "\" "\\" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\extensions.json" "$2" "$3" + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\extensions.json" + ${WordReplace} $0 "\" "/" "+" $2 + ${WordReplace} $2 " " "%20" "+" $2 + ${WordReplace} $1 "\" "/" "+" $3 + ${WordReplace} $3 " " "%20" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\extensions.json" "$2" "$3" + ${EndIf} + ${If} ${FileExists} "$PROFILEDIRECTORY\extensions.json" + ${WordReplace} $0 "\" "\\" "+" $2 + ${WordReplace} $1 "\" "\\" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\extensions.json" "$2" "$3" + ${EndIf} + ${If} $LASTPROFILEDIRECTORY != $ORIGINALPROFILEDIRECTORY + ${AndIf} ${FileExists} "$PROFILEDIRECTORY\addonStartup.json.lz4" + Delete "$PROFILEDIRECTORY\addonStartup.json.unpacked" + nsExec::Exec `"$EXEDIR\App\Bin\dejsonlz4.exe" "$PROFILEDIRECTORY\addonStartup.json.lz4" "$PROFILEDIRECTORY\addonStartup.json.unpacked"` + Delete "$PROFILEDIRECTORY\addonStartup.json.lz4" + ${WordReplace} $0 "\" "/" "+" $2 + ${WordReplace} $1 "\" "/" "+" $3 + ${WordReplace} $2 " " "%20" "+" $2 + ${WordReplace} $3 " " "%20" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\addonStartup.json.unpacked" "file:///$2" "file:///$3" + ${WordReplace} $0 "\" "\\" "+" $2 + ${WordReplace} $1 "\" "\\" "+" $3 + ${ReplaceInFile} "$PROFILEDIRECTORY\addonStartup.json.unpacked" "$2" "$3" + nsExec::Exec `"$EXEDIR\App\Bin\jsonlz4.exe" "$PROFILEDIRECTORY\addonStartup.json.unpacked" "$PROFILEDIRECTORY\addonStartup.json.lz4"` + Delete "$PROFILEDIRECTORY\addonStartup.json.unpacked" + ${EndIf} + + ${GetParent} $LASTPROFILEDIRECTORY $0 + ${GetParent} $0 $0 + ${GetParent} $0 $0 + StrCpy $0 '$0\' ;last PortableApps directory + ${GetParent} $ORIGINALPROFILEDIRECTORY $1 + ${GetParent} $1 $1 + ${GetParent} $1 $1 + StrCpy $1 '$1\' ;current PortableApps directory + StrCmp $0 $1 RunProgram + ${If} ${FileExists} "$PROFILEDIRECTORY\mimeTypes.rdf" + ${ReplaceInFile} "$PROFILEDIRECTORY\mimeTypes.rdf" $0 $1 + ${EndIf} + + RunProgram: + StrCmp $SKIPCOMPREGFIX "true" GetPassedParameters + + ;=== Delete component registry to ensure compatibility with all extensions + Delete $PROFILEDIRECTORY\compreg.dat + + GetPassedParameters: + ;=== Get any passed parameters + ${GetParameters} $strPassedParameters + + ;=== Setup exec string + System::Call kernel32::GetCurrentProcess()i.s + System::Call kernel32::IsWow64Process(is,*i.r0) + ${If} $0 != 0 + ${AndIf} ${FileExists} "$PROGRAMDIRECTORY64\$PROGRAMEXECUTABLE" + ${AndIf} ${AtLeastWin7} + ${AndIf} $bolAlwaysUse32Bit == false + StrCpy $EXECSTRING `"$PROGRAMDIRECTORY64\$PROGRAMEXECUTABLE" -profile "$PROFILEDIRECTORY"` + StrCpy $bolUsing64Bit true + ${Else} + StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" -profile "$PROFILEDIRECTORY"` + StrCpy $bolUsing64Bit false + ${EndIf} + + ${If} $strPassedParameters != '' + StrCpy $EXECSTRING `$EXECSTRING $strPassedParameters` + ${EndIf} + + ;CheckMultipleInstances: + StrCmp $ALLOWMULTIPLEINSTANCES "true" "" AdditionalParameters + StrCpy $EXECSTRING `$EXECSTRING -no-remote` + + AdditionalParameters: + StrCmp $ADDITIONALPARAMETERS "" PluginsEnvironment + + ;=== Additional Parameters + StrCpy $EXECSTRING `$EXECSTRING $ADDITIONALPARAMETERS` + + PluginsEnvironment: + ;=== Set the plugins directory if we have a path + ${IfNot} ${FileExists} "$PLUGINSDIRECTORY\*.*" + StrCpy $PLUGINSDIRECTORY "" + ${EndIf} + ${GetParent} $EXEDIR $0 + ${If} $bolUsing64Bit == true + ${If} ${FileExists} "$0\CommonFiles\Java64\bin\plugin2\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Java64\bin\plugin2" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Java64\bin\plugin2" + ${EndIf} + ${ElseIf} ${FileExists} "$0\CommonFiles\Java64\bin\new_plugin\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Java64\bin\new_plugin" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Java64\bin\new_plugin" + ${EndIf} + ${EndIf} + ${Else} + ${If} ${FileExists} "$0\CommonFiles\Java\bin\plugin2\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Java\bin\plugin2" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Java\bin\plugin2" + ${EndIf} + ${ElseIf} ${FileExists} "$0\CommonFiles\Java\bin\new_plugin\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Java\bin\new_plugin" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Java\bin\new_plugin" + ${EndIf} + ${EndIf} + ${EndIf} + ${If} ${FileExists} "$0\CommonFiles\Silverlight\files\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Silverlight\files" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Silverlight\files" + ${EndIf} + ${EndIf} + ${If} ${FileExists} "$0\CommonFiles\Flash\files\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\Flash\files" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\Flash\files" + ${EndIf} + ${EndIf} + ${If} ${FileExists} "$0\CommonFiles\BrowserPlugins\*.*" + ${If} $PLUGINSDIRECTORY != "" + StrCpy $PLUGINSDIRECTORY "$PLUGINSDIRECTORY;$0\CommonFiles\BrowserPlugins" + ${Else} + StrCpy $PLUGINSDIRECTORY "$0\CommonFiles\BrowserPlugins" + ${EndIf} + ${EndIf} + + StrCmp $PLUGINSDIRECTORY "" LaunchNow + System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("MOZ_PLUGIN_PATH", "$PLUGINSDIRECTORY").r0' + + LaunchNow: + System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("MOZ_CRASHREPORTER_DATA_DIRECTORY", "$PROFILEDIRECTORY\CrashReports").r0' + + StrCmp $SECONDARYLAUNCH "true" StartProgramAndExit + StrCmp $WAITFORPROGRAM "true" "" StartProgramAndExit + SetOutPath $PROGRAMDIRECTORY + ExecWait $EXECSTRING + + ;CheckRunning: + StrCmp $ALLOWMULTIPLEINSTANCES "true" CheckIfRemoveLocalFiles + + CheckRunning: + ${ProcessWaitClose} "firefox.exe" -1 $R0 + Sleep 2000 + ${If} ${ProcessExists} "firefox.exe" + Goto CheckRunning + ${EndIf} + ${If} ${ProcessExists} "updater.exe" + ${GetProcessPath} "updater.exe" $R1 + ${If} $R1 == "$PROGRAMDIRECTORY\updater.exe" + ${OrIf} $R1 == "$PROGRAMDIRECTORY64\updater.exe" + Goto CheckRunning + ${EndIf} + ${EndIf} + Goto CleanupRunLocally + + StartProgramAndExit: + SetOutPath $PROGRAMDIRECTORY + Exec $EXECSTRING + Goto TheEnd + + CleanupRunLocally: + StrCmp $RUNLOCALLY "true" "" CheckIfRemoveLocalFiles + RMDir /r "$TEMP\${NAME}\" + + CheckIfRemoveLocalFiles: + ${If} ${ProcessExists} "firefox.exe" + Goto TheEnd + ${Else} + Goto RemoveLocalFiles + ${EndIf} + + RemoveLocalFiles: + StrCmp $ALLOWMULTIPLEINSTANCES "true" RemoveLocalFiles2 + RMDir /r "$APPDATA\Mozilla\Firefox\Crash Reports\" + Rename "$APPDATA\Mozilla\Firefox\Crash Reports-BackupByFirefoxPortable" "$APPDATA\Mozilla\Firefox\Crash Reports" + + RemoveLocalFiles2: + StrCmp $ALLOWMULTIPLEINSTANCES "true" RemoveLocalFiles3 + RMDir /r "$APPDATA\Mozilla\Extensions\" + Rename "$APPDATA\Mozilla\Extensions-BackupByFirefoxPortable" "$APPDATA\Mozilla\Extensions" + + RemoveLocalFiles3: + Delete "$APPDATA\Mozilla\Firefox\pluginreg.dat" + ${If} $bolPendingPingsExists == false + RMDir /r "$APPDATA\Mozilla\Firefox\Pending Pings\*.*" + ${EndIf} + + RMDir "$APPDATA\Mozilla\Firefox\Pending Pings\" ;=== Will only delete if empty (no /r switch) + RMDir "$APPDATA\Mozilla\Firefox\Profiles\" ;=== Will only delete if empty (no /r switch) + RMDir "$APPDATA\Mozilla\Firefox\Profile\" ;=== Will only delete if empty (no /r switch) + ${RMDirIfNotJunction} "$APPDATA\Mozilla\Firefox\" ;=== Will only delete if empty + RMDir "$APPDATA\Mozilla\SystemExtensionsDev\" ;=== Will only delete if empty (no /r switch) + ${RMDirIfNotJunction} "$APPDATA\Mozilla\" ;=== Will only delete if empty + RMDir "$LOCALAPPDATA\Mozilla\Firefox\firefox\updates\0" ;=== Will only delete if empty (no /r switch) + RMDir "$LOCALAPPDATA\Mozilla\Firefox\firefox\updates" ;=== Will only delete if empty (no /r switch) + RMDir "$LOCALAPPDATA\Mozilla\Firefox\firefox" ;=== Will only delete if empty (no /r switch) + ${RMDirIfNotJunction} "$LOCALAPPDATA\Mozilla\Firefox\" ;=== Will only delete if empty + + ;Remove empty directories left due to a Firefox updater bug + ${If} ${FileExists} "$LOCALAPPDATA\Mozilla\updates\*.*" + FindFirst $0 $1 "$LOCALAPPDATA\Mozilla\updates\*.*" + RemoveLocalFiles3Loop: + StrCmp $1 "" RemoveLocalFiles3LoopDone + ${If} ${FileExists} "$LOCALAPPDATA\Mozilla\updates\$1\*.*" + ${AndIf} $1 != "." + ${AndIf} $1 != ".." + RMDir "$LOCALAPPDATA\Mozilla\updates\$1" + ${EndIf} + FindNext $0 $1 + Goto RemoveLocalFiles3Loop + RemoveLocalFiles3LoopDone: + FindClose $0 + ${EndIf} + + ${RMDirIfNotJunction} "$LOCALAPPDATA\Mozilla\updates" ;=== Will only delete if empty (no /r switch) + ${RMDirIfNotJunction} "$LOCALAPPDATA\Mozilla\" ;=== Will only delete if empty (no /r switch) + ${RMDirIfNotJunction} "$LOCALAPPDATALow\Mozilla\" ;=== Will only delete if empty (no /r switch) + + ${If} $bolProgramDataMozillaUpdatesExists == false + RMDir /r "$PROGRAMDATA\Mozilla\updates" + ${EndIf} + ${RMDirIfNotJunction} "$PROGRAMDATA\Mozilla" + + RMDir "$TEMP\Mozilla\mozilla-temp-files" + + StrCmp $MOZILLAORGKEYEXISTS "true" RemoveMachineRegistryKey + ${registry::DeleteKey} "HKEY_CURRENT_USER\Software\mozilla.org" $R0 + RemoveMachineRegistryKey: + StrCmp $HKLMMOZILLAORGKEYEXISTS "true" RemoveOtherKeys + ${registry::KeyExists} "HKLM\Software\mozilla.org" $R0 + StrCmp $R0 "-1" RemoveOtherKeys ;=== If it doesn't exist, skip the next line + UserInfo::GetAccountType + Pop $0 + StrCmp $0 "Guest" RemoveOtherKeys + StrCmp $0 "User" RemoveOtherKeys + ${registry::DeleteKey} "HKLM\Software\mozilla.org" $R0 + RemoveOtherKeys: + ;Store the crash report setting + ${registry::Read} "HKCU\Software\Mozilla\Firefox\Crash Reporter" "SubmitCrashReport" $R1 $R2 + WriteINIStr "$SETTINGSDIRECTORY\${NAME}Settings.ini" "${NAME}Settings" "SubmitCrashReport" "$R1" + + ${If} $bolHKCUSoftwareMozillaExists == true + ${If} $bolHKCUSoftwareMozillaFirefoxExists == true + ${If} $bolHKCUSoftwareMozillaFirefoxCrashReporterExists == true + ${registry::Write} "HKCU\Software\Mozilla\Firefox\Crash Reporter" "SubmitCrashReport" "$SubmitCrashReportBackup" "REG_DWORD" $R1 + ${Else} + ${registry::DeleteKey} "HKCU\Software\Mozilla\Firefox\Crash Reporter" $R0 + ${EndIf} + ${Else} + ${registry::DeleteKey} "HKCU\Software\Mozilla\Firefox" $R0 + ${EndIf} + ${Else} + ${registry::DeleteKey} "HKCU\Software\Mozilla" $R0 + ${EndIf} + + TheEnd: + ${registry::Unload} + newadvsplash::stop /WAIT +SectionEnd \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/License.txt b/Resources/MozillaFirefoxPortable/Other/Source/License.txt new file mode 100644 index 00000000..7616dade --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/License.txt @@ -0,0 +1,344 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT +PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED +IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, +EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY +AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL +NECESSARY SERVICING, REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR +AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY +OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM +AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING +ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM +(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY +OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS +BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comInstallerCustom.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comInstallerCustom.nsh new file mode 100644 index 00000000..c2af77de --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comInstallerCustom.nsh @@ -0,0 +1,16 @@ +;!include NewTextReplace.nsh +;!include ReplaceInFileWithTextReplace.nsh + +!macro CustomCodePreInstall + ${If} ${FileExists} "$INSTDIR\Data\profile\*.*" + ReadINIStr $0 "$INSTDIR\App\AppInfo\appinfo.ini" "Version" "PackageVersion" + ${VersionCompare} $0 "20.0.0.0" $R0 + ${If} $R0 == 2 + WriteINIStr "$INSTDIR\Data\settings\FirefoxPortableSettings.ini" "FirefoxPortableSettings" "SubmitCrashReport" "0" + ${EndIf} + ;${VersionCompare} $0 "61.0.0.0" $R0 + ;${If} $R0 == 2 + ; ${ReplaceInFile} "$INSTDIR\Data\profile\prefs.js" `user_pref("browser.cache.disk.capacity", 0);` `user_pref("browser.cache.disk.enable", false);` + ;${EndIf} + ${EndIf} +!macroend diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ARABIC.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ARABIC.nsh new file mode 100644 index 00000000..c99fd47a --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ARABIC.nsh @@ -0,0 +1,9 @@ +;=== LauncherStrings-Arabic.nsh (2007-03-01) + +LangString LauncherFileNotFound ${LANG_ARABIC} "لم يتم تشغيل البرنامج ${PORTABLEAPPNAME}. لحل المشكلة حاول تنصيبه مرة أخرى . (خطأ: لم يتم أيجاد الملف $MISSINGFILEORPATH )" +LangString LauncherAlreadyRunning ${LANG_ARABIC} "نسخة أخرى من البرنامج ${APPNAME} تعمل حالياً. من فضلك أغلق النسخة الفعالة من ${APPNAME} قبل تشغيل نسخة جديدة من ${PORTABLEAPPNAME}." +LangString LauncherAppDescription ${LANG_ARABIC} "برنامج ${PORTABLEAPPNAME} هو تعديل برنامج ${APPNAME} للعمل كنسخة متنقلة، مما يتيح لك تشغيله من ذاكرة USB Flash Drive، أو iPod أو أى وسيلة تخزين متنقلة." +LangString LauncherAskCopyLocal ${LANG_ARABIC} "يبدو أن برنامج ${PORTABLEAPPNAME} يعمل من مجلد له تصاريح القراءة فقط. أتريد نقله مؤقتاً إلى قرصك الصلب وتشغيله من هناك ؟ $\n$\nملحوظة صغيرة : إذا وافقت سوف يتم نقل معلوماتك الشخصية التى ربما توجد مع البرنامج إلى القرص الصلب، رغم أن تلك المعلومات سوف يتم إزالتها أوتوماتيكياً بمجرد إغلاق البرنامج، ولكن هذا لا يمنع المخربين من عرض تلك المعلومات بعد ذلك." +LangString LauncherNoReadOnly ${LANG_ARABIC} "برنامج ${PORTABLEAPPNAME} لا يمكنه العمل في مجلد بتصريحات القراءة فقط. سوف يتم الآن إغلاق البرنامج." +LangString LauncherPathTooLong ${LANG_ARABIC} "الطريق إلى ${PORTABLEAPPNAME} طويل جدا. يرجى تقصير المسار من خلال القضاء على بعض الدلائل الأصل أو تقصير أسماء الدليل." +LangString LauncherNextButton ${LANG_ARABIC} "التالي >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_CZECH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_CZECH.nsh new file mode 100644 index 00000000..2ae1e545 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_CZECH.nsh @@ -0,0 +1,25 @@ +LangString LauncherFileNotFound ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit. Pro opravu tohoto problému zkuste aplikace přeinstalovat. (CHYBA: $MISSINGFILEORPATH nelze nelézt)" +LangString LauncherAlreadyRunning ${LANG_CZECH} "Aplikace ${APPNAME} je již spuštěna. Pro spuštění ${PORTABLEAPPNAME} prosím nejprve ukončete běžící aplikaci ${APPNAME}." +LangString LauncherAskCopyLocal ${LANG_CZECH} "Aplikace ${PORTABLEAPPNAME} je zřejmě spouštěna z umístění, které je pouze pro čtení. Chcete ji dočasně zkopírovat na místní disk a spustit odtud?$\n$\nPoznámka k ochraně soukromí: Pokud zkopírování odsouhlasíte, vaše osobní data v aplikaci ${PORTABLEAPPNAME} budou rovněž dočasně zkopírována na místní disk. Přestože bude kopie těchto dat smazána po zavření ${PORTABLEAPPNAME}, může se stát, že k nim může někdo později získat přístup." +LangString LauncherNoReadOnly ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit přímo z umístění, které je pouze pro čtení." +LangString LauncherPathTooLong ${LANG_CZECH} "Cesta k ${PORTABLEAPPNAME} je příliš dlouhá. Zkraťte ji prosím přesunutím do některého z nadřazených adresářů nebo zkrácením jejich názvů." +LangString LauncherNoUNCSupport ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit z UNC umístění. Připojte prosím adresář jako disk (s písmenným označením) a zkuste to znovu." +LangString LauncherUNCWarn ${LANG_CZECH} "Aplikace ${PORTABLEAPPNAME} je nyní spuštěna z UNC umístění. Toto může a nemusí fungovat a mohlo by dojít i k poškození dat. Pro lepší fungování můžete adresář připojit jako disk (s písmenným označením) a zkusit to znovu.$\r$\n$\r$\nOpravdu chcete pokračovat?" +LangString LauncherNoSpaces ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit z umístění, které obsahuje mezeru. Upravte prosím současnou cestu ($EXEDIR), smažte z ní všechny mezery a spusťte přenosnou aplikaci znovu. Více informací naleznete v souboru help.html." +LangString LauncherRequiresAdmin ${LANG_CZECH} "${PORTABLEAPPNAME} vyžaduje pro spuštění jako administrátor." +LangString LauncherNotAdminTryAgain ${LANG_CZECH} "Klepněte na Znovu pro opětovné ověření nebo Zrušit pro ukončení." +LangString LauncherNotAdminLimitedFunctionality ${LANG_CZECH} "Některé funkce ${PORTABLEAPPNAME} nemusí fungovat pokud aplikaci nespustíte jako administrátor." +LangString LauncherNotAdminLimitedFunctionalityTryAgain ${LANG_CZECH} "Klepněte na Zrušit pro ukončení, Znovu pro opětovné ověření nebo Ignorovat pro pokračování." +LangString LauncherAdminError ${LANG_CZECH} "Nelze spustit jako administrátor, chyba $0." +LangString LauncherAdminLogonServiceNotRunning ${LANG_CZECH} "${PORTABLEAPPNAME} vyžaduje administrátorská práva, ale služba Windows Logon není spuštěna. ${PORTABLEAPPNAME} nelze spustit." +LangString LauncherIncompatibleMinOS ${LANG_CZECH} "${APPNAME} vyžaduje Windows $0 nebo novější. Na tamto PC je nainstalován systém Windows $1, a ${APPNAME} tak nelze spustit." +LangString LauncherIncompatibleMaxOS ${LANG_CZECH} "${APPNAME} vyžaduje Windows $0 nebo starší. Na tamto PC je nainstalován systém Windows $1, a ${APPNAME} tak nelze spustit." +LangString LauncherDirectoryMoveNotAllowed ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit, jelikož se od posledního spuštění změnilo umístění z $LastDirectory do $CurrentDirectory." +LangString LauncherDirectoryMoveWarn ${LANG_CZECH} "Umístění ${PORTABLEAPPNAME} se od posledního spuštění změnilo z $LastDirectory do $CurrentDirectory. Přesouvání přenosných aplikací tímto způsobem není doporučeno a některé funkce tak nemusí fungovat. Opravdu chcete pokračovat?" +LangString LauncherAlreadyStarting ${LANG_CZECH} "Jiná instance ${PORTABLEAPPNAME} je již spouštěna. Vyčkejte prosím na její spuštění." +LangString LauncherAlreadyStopping ${LANG_CZECH} "Jiná instance ${PORTABLEAPPNAME} je nyní ukončována. Před jejím opětovným spuštěním prosím vyčkejte na dokončení." +LangString LauncherCrashCleanup ${LANG_CZECH} "Aplikace ${PORTABLEAPPNAME} nebyla po poslední spuštění správně ukončena a bude nyní vyčištěna. Spusťte prosím ${PORTABLEAPPNAME} znovu ručně." +LangString LauncherNoJava ${LANG_CZECH} "${APPNAME} vyžaduje instalaci Java Runtime Environment. Nainstalujte prosím jPortable z http://portableapps.com/jportable z zkuste to poté znovu." +LangString LauncherNoJavaDownload ${LANG_CZECH} "${APPNAME} vyžaduje Java Runtime Environment. Chcete nyní automaticky stáhnout a nainstalovat jPortable na vaše zařízení?" +LangString LauncherNoJavaCancelled ${LANG_CZECH} "Aplikaci ${PORTABLEAPPNAME} nelze spustit bez Java Runtime Environment a bude nyní ukončena." +LangString LauncherProgramFiles ${LANG_CZECH} "${PORTABLEAPPNAME} nelze spustit z $0. Toto umístění je pouze pro standardní místní software. Spusťte tedy prosím tuto aplikaci z jiného umístění." diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_DUTCH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_DUTCH.nsh new file mode 100644 index 00000000..6926eeca --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_DUTCH.nsh @@ -0,0 +1,7 @@ +;Martijn van Berkel +LangString LauncherFileNotFound ${LANG_DUTCH} "${PORTABLEAPPNAME} kan niet worden gestart. Probeer de applicatie opnieuw te installeren om dit probleem te verhelpen. (Fout: $MISSINGFILEORPATH kon niet worden gevonden.)" +LangString LauncherAlreadyRunning ${LANG_DUTCH} "${APPNAME} is al opgestart. Sluit a.u.b. andere instanties van ${APPNAME} af voordat u ${PORTABLEAPPNAME} start." +LangString LauncherAskCopyLocal ${LANG_DUTCH} "${PORTABLEAPPNAME} blijkt opgestart te zijn vanaf een locatie die alleen-lezen is. Wilt u een tijdelijke kopie naar uw hardeschijf kopiëren en het programma daarvandaan opstarten?$\n$\nPrivacywaarschuwing: Als u Ja kiest, zullen uw persoonlijke gegevens van ${PORTABLEAPPNAME} tijdelijk gekopieëerd worden naar een lokale schijf. Hoewel deze gegevens na het afsluiten van ${PORTABLEAPPNAME} worden verwijderd, kan het mogelijk zijn dat iemand deze gegevens later kan benaderen." +LangString LauncherNoReadOnly ${LANG_DUTCH} "${PORTABLEAPPNAME} kan niet vanaf een alleen-lezen locatie worden opgestart en zal nu worden afgesloten." +LangString LauncherPathTooLong ${LANG_DUTCH} "Het pad naar ${PORTABLEAPPNAME} is te lang. Gelieve het pad te verkleinen door het programma in een hogere map te plaatsen of door mapnamen te verkleinen." + diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh new file mode 100644 index 00000000..f96e8423 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_ENGLISH} "${PORTABLEAPPNAME} cannot be started. You may wish to re-install to fix this issue. (ERROR: $MISSINGFILEORPATH could not be found)" +LangString LauncherAlreadyRunning ${LANG_ENGLISH} "Another instance of ${APPNAME} is already running. Please close other instances of ${APPNAME} before launching ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_ENGLISH} "${PORTABLEAPPNAME} appears to be running from a location that is read-only. Would you like to temporarily copy it to the local hard drive and run it from there?$\n$\nPrivacy Note: If you say Yes, your personal data within ${PORTABLEAPPNAME} will be temporarily copied to a local drive. Although this copy of your data will be deleted when you close ${PORTABLEAPPNAME}, it may be possible for someone else to access your data later." +LangString LauncherNoReadOnly ${LANG_ENGLISH} "${PORTABLEAPPNAME} can not run directly from a read-only location and will now close." +LangString LauncherPathTooLong ${LANG_ENGLISH} "The path to ${PORTABLEAPPNAME} is too long. Please shorten the path by eliminating some parent directories or shortening directory names." +LangString LauncherNextButton ${LANG_ENGLISH} "&Next >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISHGB.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISHGB.nsh new file mode 100644 index 00000000..8f88f5c5 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ENGLISHGB.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_ENGLISHGB} "${PORTABLEAPPNAME} cannot be started. You may wish to re-install to fix this issue. (ERROR: $MISSINGFILEORPATH could not be found)" +LangString LauncherAlreadyRunning ${LANG_ENGLISHGB} "Another instance of ${APPNAME} is already running. Please close other instances of ${APPNAME} before launching ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_ENGLISHGB} "${PORTABLEAPPNAME} appears to be running from a location that is read-only. Would you like to temporarily copy it to the local hard drive and run it from there?$\n$\nPrivacy Note: If you say Yes, your personal data within ${PORTABLEAPPNAME} will be temporarily copied to a local drive. Although this copy of your data will be deleted when you close ${PORTABLEAPPNAME}, it may be possible for someone else to access your data later." +LangString LauncherNoReadOnly ${LANG_ENGLISHGB} "${PORTABLEAPPNAME} can not run directly from a read-only location and will now close." +LangString LauncherPathTooLong ${LANG_ENGLISHGB} "The path to ${PORTABLEAPPNAME} is too long. Please shorten the path by eliminating some parent directories or shortening directory names." +LangString LauncherNextButton ${LANG_ENGLISHGB} "&Next >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FARSI.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FARSI.nsh new file mode 100644 index 00000000..cef28379 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FARSI.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_FARSI} "${PORTABLEAPPNAME} را نمی توان آغاز کرد. ممکن است بخواهید این مسئله را دوباره نصب کنید. (ERROR: $MISSINGFILEORPATH یافت نشد)" +LangString LauncherAlreadyRunning ${LANG_FARSI} "یک نمونه دیگر از ${APPNAME} در حال اجرا است. لطفا قبل از راه اندازی ${PORTABLEAPPNAME} موارد دیگر ${APPNAME} را ببندید." +LangString LauncherAskCopyLocal ${LANG_FARSI} "به نظر میرسد که «${PORTABLEAPPNAME} از یک مکان فقط خواندنی اجرا میشود. آیا میخواهید آن را به طور موقت کپی کنید و آن را از اینجا ببرید؟ $\n$\n توجه داشته باشید که خصوصیات: اگر بگوید بله، اطلاعات شخصی شما در ${PORTABLEAPPNAME} به طور موقت در یک درایو محلی کپی می شوند. اگرچه این نسخه از داده های شما هنگام بست${PORTABLEAPPNAME} حذف می شود ممکن است فرد دیگری بتواند به داده های شما دسترسی پیدا کند بعد." +LangString LauncherNoReadOnly ${LANG_FARSI} "${PORTABLEAPPNAME} نمی تواند مستقیما از یک مکان فقط خواندنی اجرا شود و اکنون بسته شود." +LangString LauncherPathTooLong ${LANG_FARSI} "مسیر به ${PORTABLEAPPNAME} بیش از حد طولانی است. لطفا با حذف برخی از دایرکتوری های والدین یا کوتاه کردن نام دایرکتوری، مسیر را کوتاه کنید" +LangString LauncherNextButton ${LANG_FARSI} "بعدی >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FRENCH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FRENCH.nsh new file mode 100644 index 00000000..1ceb4d9b --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_FRENCH.nsh @@ -0,0 +1,7 @@ +;Courtesy of Dirinfo +LangString LauncherFileNotFound ${LANG_FRENCH} "${PORTABLEAPPNAME} n'a pas pu démarrer. Vous pourriez tenter de le réinstaller pour corriger ce problème. (ERREUR: $MISSINGFILEORPATH non trouvé)" +LangString LauncherAlreadyRunning ${LANG_FRENCH} "Une autre instance de ${APPNAME} est déjà en cours d'exécution. Veuillez fermer les autres instances de ${APPNAME} avant de lancer ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_FRENCH} "${PORTABLEAPPNAME} semble s'exécuter depuis un emplacement en lecture-seule. Voudriez-vous le copier dans un dossier temporaire du disque dur et le lancer depuis là ?$\n$\nPrivacy Note: Si vous acceptez, vos données personnelles appartenant à ${PORTABLEAPPNAME} seront temporairement copiées sur un disque local. Bien que cette copie de vos données sera effacée quand vous fermerez ${PORTABLEAPPNAME}, une personne mal intentionnée pourraît éventuellement y avoir accès ultérieurement." +LangString LauncherNoReadOnly ${LANG_FRENCH} "${PORTABLEAPPNAME} ne peut s'éxécuter depuis un emplacement en lecture-seule, et va maintenant se fermer." +LangString LauncherPathTooLong ${LANG_FRENCH} "Le chemin au ${PORTABLEAPPNAME} est trop long. Raccourcis-vous s'il te plaît le chemin à travers le troncation sur les listes étantes de cette utilisation ou à travers les brièvetés des noms de liste de rassembleur." +LangString LauncherNextButton ${LANG_FRENCH} "&Suivant >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_GERMAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_GERMAN.nsh new file mode 100644 index 00000000..76906487 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_GERMAN.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_GERMAN} "${PORTABLEAPPNAME} kann nicht gestartet werden. Bitte installieren Sie die Anwendung ggf. neu. (FEHLER: $MISSINGFILEORPATH wurde nicht gefunden.)" +LangString LauncherAlreadyRunning ${LANG_GERMAN} "Es läuft bereits eine andere Instanz von ${APPNAME}. Bitte schließen Sie erst alle anderen Instanzen von ${APPNAME}, bevor Sie ${PORTABLEAPPNAME} starten." +LangString LauncherAskCopyLocal ${LANG_GERMAN} "${PORTABLEAPPNAME} scheint an einem Ort ohne Schreib-Zugriff zu laufen. Möchten Sie eine temporäre Kopie auf Ihrer lokalen Festplatte erstellen und das Programm von dort aus starten?$\n$\nHinweis zum Datenschutz: Wenn Sie Ja sagen, werden Ihre persönlichen Daten aus ${PORTABLEAPPNAME} temporär auf Ihre lokale Festplatte kopiert. Diese Daten werden zwar wieder gelöscht, sobald Sie ${PORTABLEAPPNAME} schliessen, können aber unter Umständen trotzdem von Dritten gelesen werden." +LangString LauncherNoReadOnly ${LANG_GERMAN} "${PORTABLEAPPNAME} kann nicht direkt von einem Ort ohne Schreib-Zugriff gestartet werden und wird jetzt geschlossen." +LangString LauncherPathTooLong ${LANG_GERMAN} "Der Pfad zu ${PORTABLEAPPNAME} ist zu lang. Bitte verkürze Sie den Pfad durch die Auslassen einiger über dieser Anwendung liegenden Verzeichnissse oder durch Kürzen der verzeichnisnamen." +LangString LauncherNextButton ${LANG_GERMAN} "&Weiter >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HEBREW.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HEBREW.nsh new file mode 100644 index 00000000..4d74ea55 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HEBREW.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_HEBREW} "${PORTABLEAPPNAME} לא מצליח להיפתח. אולי תרצו להתקין מחדש כדי לתקן עניין זה. (*שגיאה*: לא נמצא $MISSINGFILEORPATH)" +LangString LauncherAlreadyRunning ${LANG_HEBREW} "הרצה אחרת של ${APPNAME} כבר קיימת. אנא סיגרו הרצות אחרות של${APPNAME} לפני שתריצו את ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_HEBREW} "נראה ש-${PORTABLEAPPNAME} רץ ממקום שהוא לקריאה בלבד. האם תרצו להעתיקו באופן זמני לכונן הקשיח המקומי ולהריץ אותו משם?$\n$\nהערת פרטיות: אם תאמרו כן, המידע האישי שלכם שבתוך AppNamePortable יועתק באופן זמני לכונן מקומי. למרות שעותק זה יימחק כשתיסגרו את ${PORTABLEAPPNAME}, אולי יהיה אפשרי למישהו אחר לגשת למידע זה מאוחר יותר." +LangString LauncherNoReadOnly ${LANG_HEBREW} "${PORTABLEAPPNAME} לא יכול לרוץ ישירות ממקום לקריאה בלבד ועכשיו ייסגר." +LangString LauncherPathTooLong ${LANG_HEBREW} "הנתיב של ${PORTABLEAPPNAME} ארוך מדי. אנא קצרו את הנתיב על ידי השמטת כמה ספריות אב וקיצור שמות ספרייה." +LangString LauncherNextButton ${LANG_HEBREW} "< ה&קודם" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HINDI.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HINDI.nsh new file mode 100644 index 00000000..d192e79e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HINDI.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_HINDI} "${PORTABLEAPPNAME} प्रारंभ नहीं किया जा सकता है। आप इस समस्या को ठीक करने के लिए पुनः स्थापित करना चाह सकते हैं। (त्रुटि: $MISSINGFILEORPATH नहीं मिला)" +LangString LauncherAlreadyRunning ${LANG_HINDI} "${APPNAME} का एक और उदाहरण पहले से चल रहा है। ${PORTABLEAPPNAME} लॉन्च करने से पहले कृपया ${APPNAME} के अन्य उदाहरण बंद करें।" +LangString LauncherAskCopyLocal ${LANG_HINDI} "${PORTABLEAPPNAME} उस स्थान से चल रहा प्रतीत होता है जो केवल पढ़ने योग्य है। क्या आप इसे अस्थायी रूप से स्थानीय हार्ड ड्राइव पर कॉपी करना चाहते हैं और इसे वहां से चला सकते हैं? $\n$\n गोपनीयता नोट: यदि आप हाँ कहते हैं, तो ${PORTABLEAPPNAME} के भीतर आपका व्यक्तिगत डेटा अस्थायी रूप से स्थानीय ड्राइव पर कॉपी किया जाएगा। हालांकि जब आप ${PORTABLEAPPNAME} बंद करते हैं तो आपके डेटा की यह प्रति हटा दी जाएगी, फिर भी किसी और के लिए आपके डेटा तक पहुंचना संभव हो सकता है।" +LangString LauncherNoReadOnly ${LANG_HINDI} "${PORTABLEAPPNAME} सीधे पढ़ने-योग्य स्थान से नहीं चलाया जा सकता है और अब बंद हो जाएगा।" +LangString LauncherPathTooLong ${LANG_HINDI} "${PORTABLEAPPNAME} का मार्ग बहुत लंबा है। कृपया कुछ मूल निर्देशिकाओं को हटाकर या निर्देशिका नामों को छोटा करके पथ को छोटा करें।" +LangString LauncherNextButton ${LANG_HINDI} "आगामी >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HUNGARIAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HUNGARIAN.nsh new file mode 100644 index 00000000..205d11d9 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_HUNGARIAN.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_HUNGARIAN} "A(z) ${PORTABLEAPPNAME} nem indítható el. A hiba javításához újra kell telepíteni az alkalmazást. (HIBA: $MISSINGFILEORPATH nem található.)" +LangString LauncherAlreadyRunning ${LANG_HUNGARIAN} "A(z) ${APPNAME} alkalmazás egy másik példánya már fut. Kérem zárja be a(z) ${APPNAME} további példányait mielott elindítja a(z) ${PORTABLEAPPNAME} alkalmazást." +LangString LauncherAskCopyLocal ${LANG_HUNGARIAN} "A(z) ${PORTABLEAPPNAME} alkalmazás csak olvasható helyrol fut. Át szeretné másolni átmenetileg az alkalmazást a helyi merevlemezre és onnan futtatni az alkalmazást?$\n$\nBiztonsági megjegyzés: Amennyiben Igennel válaszol, a(z) ${PORTABLEAPPNAME} által kezelt személyes adatok át lesznek másolva a helyi merevlemezre. A(z) ${PORTABLEAPPNAME} alkalmazás bezárása után ez a helyi gépen tárolt másolat törlése kerül. Ennek ellenére esetleg más személy is hozzáférhet ezekhez az adatokhoz." +LangString LauncherNoReadOnly ${LANG_HUNGARIAN} "A(z) ${PORTABLEAPPNAME} alkalmazás nem futtatható közvetlenül csak olvasható helyrol, így az alkalmazás most bezáródik." +LangString LauncherPathTooLong ${LANG_HUNGARIAN} "A(z) ${PORTABLEAPPNAME} alkalmazás elérési útvonala túl hosszú. Adjon meg rövidebb elérési utat." +LangString notfound ${LANG_HUNGARIAN} "nem található" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_INDONESIAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_INDONESIAN.nsh new file mode 100644 index 00000000..d1a93066 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_INDONESIAN.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_INDONESIAN} "${PORTABLEAPPNAME} tidak dapat dimulai. Anda mungkin ingin menginstal ulang untuk memperbaiki masalah ini. (KESALAHAN: $MISSINGFILEORPATH tidak dapat ditemukan)" +LangString LauncherAlreadyRunning ${LANG_INDONESIAN} "Contoh lain dari ${APPNAME} sudah berjalan. Silakan tutup contoh lain $ {APPNAME} sebelum meluncurkan ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_INDONESIAN} "${PORTABLEAPPNAME} tampaknya berjalan dari lokasi yang hanya-baca. Apakah Anda ingin menyalinnya sementara ke hard drive lokal dan menjalankannya dari sana?$\n$\nPrivasi Catatan: Jika Anda menjawab Ya, data pribadi Anda dalam ${PORTABLEAPPNAME} akan disalin sementara ke drive lokal. Meskipun salinan data Anda ini akan dihapus ketika Anda menutup ${PORTABLEAPPNAME}, ada kemungkinan bagi orang lain untuk mengakses data Anda nanti." +LangString LauncherNoReadOnly ${LANG_INDONESIAN} "${PORTABLEAPPNAME} tidak dapat berjalan langsung dari lokasi hanya-baca dan sekarang akan ditutup." +LangString LauncherPathTooLong ${LANG_INDONESIAN} "Jalan ke ${PORTABLEAPPNAME} terlalu panjang. Harap persingkat jalur dengan menghilangkan beberapa direktori induk atau mempersingkat nama direktori." +LangString LauncherNextButton ${LANG_INDONESIAN} "&Selanjutnya >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ITALIAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ITALIAN.nsh new file mode 100644 index 00000000..5dab768b --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ITALIAN.nsh @@ -0,0 +1,7 @@ +;Courtesy of sblandin +LangString LauncherFileNotFound ${LANG_ITALIAN} "Impossibile avviare ${PORTABLEAPPNAME}. Potrebbe essere necessario re-installare per risolvere questo problema. (ERRORE: Impossibile trovare $MISSINGFILEORPATH)." +LangString LauncherAlreadyRunning ${LANG_ITALIAN} "È già in esecuzione un'istanza di ${APPNAME}. Per favore, terminate le altre istanze di ${APPNAME} prima di avviare ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_ITALIAN} "Sembra che ${PORTABLEAPPNAME} venga eseguito da un supporto di sola lettura. Vorresti che venisse copiato temporaneamente sul disco locale ed eseguito da lì?$\n$\nNota sulla privacy: Se risponderai di sì, i tuoi dati personali utilizzati da ${PORTABLEAPPNAME} verranno temporaneamente copiati sul disco locale. Benchè la copia dei tuoi dati verrà cancellata alla chiusura di ${PORTABLEAPPNAME}, potrebbe essere possibile che qualcun altro sia in grado di accedere ai tuoi dati più tardi." +LangString LauncherNoReadOnly ${LANG_ITALIAN} "L'applicazione ${PORTABLEAPPNAME} non può essere eseguita direttamente da un supporto di sola lettura e verrà chiusa." +LangString LauncherPathTooLong ${LANG_ITALIAN} "Il percorso ${PORTABLEAPPNAME} è troppo lungo. Si prega di abbreviarlo eliminando alcune directory superiori o accorciandone i nomi." +LangString LauncherNextButton ${LANG_ITALIAN} "&Avanti >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_JAPANESE.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_JAPANESE.nsh new file mode 100644 index 00000000..f11fd806 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_JAPANESE.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_JAPANESE} "${PORTABLEAPPNAME}が起動できません。問題を解決するためには、再インストールした方が良いかもわかりません。(エラー:$MISSINGFILEORPATHが見つかりません。)" +LangString LauncherAlreadyRunning ${LANG_JAPANESE} "同じ${APPNAME}がもう一つ、既に起動しています。${PORTABLEAPPNAME}を起動する前に、別の${APPNAME}を終了してください。" +LangString LauncherAskCopyLocal ${LANG_JAPANESE} "${PORTABLEAPPNAME}は、書込みできない「読取専用」エリアから起動しているようです。${PORTABLEAPPNAME}を一時的にPC本体のハードディスクにコピーして、そこから起動させますか?$\n$\n個人情報に関する注意:あなたがYesと答えた場合、${PORTABLEAPPNAME}の中に有るあなたの個人データが一時的にPC本体のハードドライブにコピーされます。${PORTABLEAPPNAME}を閉じた時にこのデータのコピーは削除されますが、後で他の誰かがあなたのこのデータにアクセスすることができるかもしれません。" +LangString LauncherNoReadOnly ${LANG_JAPANESE} "${PORTABLEAPPNAME}は「読取専用エリア」からは直接起動ができないので、終了します。" +LangString LauncherNextButton ${LANG_JAPANESE} "次へ(&N) >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_KOREAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_KOREAN.nsh new file mode 100644 index 00000000..8ab3d340 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_KOREAN.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_KOREAN} "${PORTABLEAPPNAME}(을)를 실행할 수 없습니다. 프로그램을 다시 설치해 주십시오. (에러: $MISSINGFILEORPATH(을)를 찾을 수 없습니다)" +LangString LauncherAlreadyRunning ${LANG_KOREAN} "${APPNAME}의 다른 인스턴스가 이미 실행 중입니다. 먼저 ${APPNAME}의 다른 인스턴스를 닫은 후 ${PORTABLEAPPNAME}(을)를 실행하십시오." +LangString LauncherAskCopyLocal ${LANG_KOREAN} "${PORTABLEAPPNAME} appears to be running from a location that is read-only. Would you like to temporarily copy it to the local hard drive and run it from there?$\n$\nPrivacy Note: If you say Yes, your personal data within ${PORTABLEAPPNAME} will be temporarily copied to a local drive. Although this copy of your data will be deleted when you close ${PORTABLEAPPNAME}, it may be possible for someone else to access your data later." +LangString LauncherNoReadOnly ${LANG_KOREAN} "${PORTABLEAPPNAME} can not run directly from a read-only location and will now close." +LangString LauncherPathTooLong ${LANG_KOREAN} "The path to ${PORTABLEAPPNAME} is too long. Please shorten the path by eliminating some parent directories or shortening directory names." +LangString LauncherNextButton ${LANG_KOREAN} "&Next >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_POLISH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_POLISH.nsh new file mode 100644 index 00000000..520679dc --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_POLISH.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_POLISH} "Nie moz.na uruchomic' ${PORTABLEAPPNAME}. Moz.esz spróbowac' ponownie zainstalowac' program, aby rozwia;zac' ten problem. (B?A;D: nie moz.na znalez'c' $MISSINGFILEORPATH)" +LangString LauncherAlreadyRunning ${LANG_POLISH} "Inna instancja ${APPNAME} zosta?a juz. uruchomiona. Zamknij inne instancje ${APPNAME} przed uruchomieniem ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_POLISH} "Program ${PORTABLEAPPNAME} wydaje sie; byc' uruchomiony z lokalizacji, która jest tylko do odczytu. Czy chcesz, aby tymczasowo skopiowac' program na lokalny dysk twardy i uruchomic' go stamta;d?$\n$\nUwaga prywatnos'ci: Jez.eli odpowiesz tak, dane osobowe w ${PORTABLEAPPNAME} be;da; tymczasowo skopiowane na dysk lokalny. Chociaz. kopia danych zostanie usunie;ta po zamknie;ciu ${PORTABLEAPPNAME}, moz.e byc' moz.liwe, z.e kogos' inny uzyska póz'niej doste;p do tych danych." +LangString LauncherNoReadOnly ${LANG_POLISH} "Program ${PORTABLEAPPNAME} nie moz.e byc' uruchomiony bezpos'rednio z lokalizacji tylko do odczytu i zostanie teraz zamknie;ty." +LangString LauncherPathTooLong ${LANG_POLISH} "S'ciez.ka do ${PORTABLEAPPNAME} jest zbyt d?uga. Skróc' s'ciez.ke; poprzez usunie;cie niektórych katalogów nadrze;dnych lub skrócenie nazwy katalogów" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESE.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESE.nsh new file mode 100644 index 00000000..5ecac141 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESE.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_PORTUGUESE} "O ${PORTABLEAPPNAME} não pode ser iniciado. Deve reinstalar para resolver o problema. (ERROR: $MISSINGFILEORPATH não foi encontrado)" +LangString LauncherAlreadyRunning ${LANG_PORTUGUESE} "Outra instância de ${APPNAME} já está a ser executada. Por favor feche a outra instância de ${APPNAME} antes de executar ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_PORTUGUESE} "${PORTABLEAPPNAME} parece estar a ser executada de uma localização que é só de leitura. Gostaria de a copiar temporariamente para o disco rígido local e executá-la daí? $\n$\nNota de Privacidade: Se escolher Sim, a sua informação pessoal dentro de ${PORTABLEAPPNAME} será copiada temporariamente para o disco local. Apesar desta cópia da sua informação ser apagada quando encerrar ${PORTABLEAPPNAME}, pode ser possível para alguém aceder à sua informação mais tarde." +LangString LauncherNoReadOnly ${LANG_PORTUGUESE} "${PORTABLEAPPNAME} não pode ser executada directamente de uma localização só de leitura e vai encerrar agora." +LangString LauncherPathTooLong ${LANG_PORTUGUESE} "O caminho para ${PORTABLEAPPNAME} é muito comprido. Por favor remova algumas pastas ou reduza os seus nomes para tornar o caminho mais curto." \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESEBR.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESEBR.nsh new file mode 100644 index 00000000..530dd1e7 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_PORTUGUESEBR.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_PORTUGUESE} "O ${PORTABLEAPPNAME} não pode ser iniciado. Deve reinstalar para resolver o problema. (ERROR: $MISSINGFILEORPATH não foi encontrado)" +LangString LauncherAlreadyRunning ${LANG_PORTUGUESE} "Outra instância de ${APPNAME} já está a ser executada. Por favor feche a outra instância de ${APPNAME} antes de executar ${PORTABLEAPPNAME} ." +LangString LauncherAskCopyLocal ${LANG_PORTUGUESE} "${PORTABLEAPPNAME} parece estar a ser executada de uma localização que é só de leitura. Gostaria de a copiar temporariamente para o disco rígido local e executá-la daí? $\n$\nNota de Privacidade: Se escolher Sim, a sua informação pessoal dentro de ${PORTABLEAPPNAME} será copiada temporariamente para o disco local. Apesar desta cópia da sua informação ser apagada quando encerrar ${PORTABLEAPPNAME} , pode ser possível para alguém aceder à sua informação mais tarde." +LangString LauncherNoReadOnly ${LANG_PORTUGUESE} "${PORTABLEAPPNAME} não pode ser executada directamente de uma localização só de leitura e vai encerrar agora." +LangString LauncherPathTooLong ${LANG_PORTUGUESE} "O caminho para ${PORTABLEAPPNAME} é muito comprido. Por favor remova algumas pastas ou reduza os seus nomes para tornar o caminho mais curto." \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ROMANIAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ROMANIAN.nsh new file mode 100644 index 00000000..99cdfac5 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_ROMANIAN.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_ROMANIAN} "${PORTABLEAPPNAME} nu poate fi pornit. Poate doriți să reinstalați pentru a remedia această problemă (EROARE: $MISSINGFILEORPATH nu a putut fi găsit)" +LangString LauncherAlreadyRunning ${LANG_ROMANIAN} "O altă instanță de ${APPNAME} este deja difuzată. Închideți alte instanțe de ${APPNAME} înainte de a lansa ${PORTABLEAPPNAME}" +LangString LauncherAskCopyLocal ${LANG_ROMANIAN} "${PORTABLEAPPNAME} pare să ruleze dintr-o locație care este doar pentru citire. Doriți să o copiați temporar pe unitatea hard disk locală și să o rulați de acolo?$\n$\nNotă privind confidențialitatea: Dacă spui Da, datele dvs. personale din ${PORTABLEAPPNAME} vor fi copiate temporar pe o unitate locală. Deși această copie a datelor dvs. va fi ștearsă când închideți ${PORTABLEAPPNAME}, este posibil ca altcineva să vă acceseze datele mai tarziu." +LangString LauncherNoReadOnly ${LANG_ROMANIAN} "${PORTABLEAPPNAME} nu poate rula direct dintr-o locație numai pentru citire și va fi închisă acum." +LangString LauncherPathTooLong ${LANG_ROMANIAN} "Calea către ${PORTABLEAPPNAME} este prea lungă. Reduceți calea eliminând unele directoare sau redenumiți numele directorului." +LangString LauncherNextButton ${LANG_ROMANIAN} "&Următorul >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_RUSSIAN.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_RUSSIAN.nsh new file mode 100644 index 00000000..a31cbc58 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_RUSSIAN.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_RUSSIAN} "Не удается запустить ${PORTABLEAPPNAME}. Возможно, данную неисправность устранит переустановка приложения. (ОШИБКА: компонент $MISSINGFILEORPATH не найден)" +LangString LauncherAlreadyRunning ${LANG_RUSSIAN} "Обнаружена активность другой копии приложения ${APPNAME}. Пожалуйста, закройте все копии ${APPNAME} перед запуском ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_RUSSIAN} "Вероятно, приложение ${PORTABLEAPPNAME} запущено из области, доступной только для чтения. Хотели бы временно скопировать приложение на локальный жесткий диск компьютера и запустить его оттуда?$\n$\nУведомление о конфиденциальности! Если Вы ответите 'Да', то Ваши персональные данные, хранящиеся внутри ${PORTABLEAPPNAME} , будут временно скопированы на диск компьютера. Несмотря на то, что копия Ваших данных после закрытия ${PORTABLEAPPNAME} будет автоматически удалена, возможность постороннего доступа к ней впоследствии сохранится." +LangString LauncherNoReadOnly ${LANG_RUSSIAN} "${PORTABLEAPPNAME} не может работать непосредственно из области, доступной только для чтения, и сейчас закроется." +LangString LauncherPathTooLong ${LANG_RUSSIAN} "Недопустимо большая длина пути к приложению ${PORTABLEAPPNAME}. Пожалуйста, сократите количество корневых каталогов или их имена для устранения данной проблемы." \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SIMPCHINESE.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SIMPCHINESE.nsh new file mode 100644 index 00000000..feafa0b8 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SIMPCHINESE.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_SIMPCHINESE} "无法启动${PORTABLEAPPNAME}。重新安装也许可以修正该错误(错误:没有找到$MISSINGFILEORPATH)。" +LangString LauncherAlreadyRunning ${LANG_SIMPCHINESE} "另一个${APPNAME}正在运行,请在启动${PORTABLEAPPNAME}前关闭${APPNAME}。" +LangString LauncherAskCopyLocal ${LANG_SIMPCHINESE} "${PORTABLEAPPNAME} appears to be running from a location that is read-only. Would you like to temporarily copy it to the local hard drive and run it from there?$\n$\nPrivacy Note: If you say Yes, your personal data within ${PORTABLEAPPNAME} will be temporarily copied to a local drive. Although this copy of your data will be deleted when you close ${PORTABLEAPPNAME}, it may be possible for someone else to access your data later." +LangString LauncherNoReadOnly ${LANG_SIMPCHINESE} "${PORTABLEAPPNAME} can not run directly from a read-only location and will now close." +LangString LauncherNextButton ${LANG_SIMPCHINESE} "下一步(&N) >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SLOVAK.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SLOVAK.nsh new file mode 100644 index 00000000..a78d7f8d --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SLOVAK.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_SLOVAK} "Aplikácia ${PORTABLEAPPNAME} nemohla byť nainštalovaná. Tento problém môžete skúsiť vyriešiť preinštalovaním. (CHYBA: $MISSINGFILEORPATH nebolo nájdené)" +LangString LauncherAlreadyRunning ${LANG_SLOVAK} "Aplikácia ${APPNAME} je už spustená. Pred spustením aplikácie ${PORTABLEAPPNAME}, prosím, zatvorte aplikáciu ${APPNAME}." +LangString LauncherAskCopyLocal ${LANG_SLOVAK} "Aplikácia ${PORTABLEAPPNAME} je zrejme spustená z umiestnenia, ktoré je len na čítanie. Chceli by ste ju dočasne skopírovať na pevný disk a spustiť z neho?$\n$\nPoznámka ohľadom súkromia: Ak bude vaša odpoveď Áno, vaše osobné údaje z aplikácie ${PORTABLEAPPNAME} budú dočasne skopírované na pevný disk. Aj keď táto kópia vašich údajov bude po ukončení aplikácie ${PORTABLEAPPNAME} odstránená, je možné, že sa k vašim údajom neskôr niekto dostane." +LangString LauncherNoReadOnly ${LANG_SLOVAK} "Aplikácia ${PORTABLEAPPNAME} nemôže byť spustená z umiestnenia, ktoré je len na čítanie a bude ukončená." +LangString LauncherPathTooLong ${LANG_SLOVAK} "Cesta k aplikácii ${PORTABLEAPPNAME} je príliš dlhá. Prosím, skráťte cestu k aplikácii odstránením niektorých nadradených priečinkov alebo skrátením ich názvov." +LangString LauncherNextButton ${LANG_SLOVAK} "&Ďalej >" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISH.nsh new file mode 100644 index 00000000..3817e763 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISH.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_SPANISH} "${PORTABLEAPPNAME} no ha podido ser iniciado. Puede probar a reinstalar para solucionar este problema. (ERROR: $MISSINGFILEORPATH no encontrado)" +LangString LauncherAlreadyRunning ${LANG_SPANISH} "Otra instancia de ${APPNAME} está ya ejecutándose. Por favor cierre otras instancias de ${APPNAME} antes de lanzar ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_SPANISH} "${PORTABLEAPPNAME} parece estar ejecutándose desde un emplazamiento de sólo-lectura. ¿Desea copiarlo temporalmente al disco duro local y ejecutarlo desde ahí?$\n$\nNota sobre privacidad: Si acepta, sus datos personales correspondientes a ${PORTABLEAPPNAME} serán copiados de forma temporal a un disco local. Si bien esta copia de sus datos será borrada cuando cierre ${PORTABLEAPPNAME}, una persona mal intencionada podría eventualmente acceder a ellos más tarde." +LangString LauncherNoReadOnly ${LANG_SPANISH} "${PORTABLEAPPNAME} no puede ser ejecutado directamente desde un emplazamiento de sólo-lectura y va a proceder a cerrarse." +LangString LauncherPathTooLong ${LANG_SPANISH} "La ruta a ${PORTABLEAPPNAME} es demasiado larga. Por favor acorte la ruta asignando nombres de directorios más cortos o seleccionando un nuevo emplazamiento para la aplicación" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISHINTERNATIONAL.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISHINTERNATIONAL.nsh new file mode 100644 index 00000000..3817e763 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_SPANISHINTERNATIONAL.nsh @@ -0,0 +1,5 @@ +LangString LauncherFileNotFound ${LANG_SPANISH} "${PORTABLEAPPNAME} no ha podido ser iniciado. Puede probar a reinstalar para solucionar este problema. (ERROR: $MISSINGFILEORPATH no encontrado)" +LangString LauncherAlreadyRunning ${LANG_SPANISH} "Otra instancia de ${APPNAME} está ya ejecutándose. Por favor cierre otras instancias de ${APPNAME} antes de lanzar ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_SPANISH} "${PORTABLEAPPNAME} parece estar ejecutándose desde un emplazamiento de sólo-lectura. ¿Desea copiarlo temporalmente al disco duro local y ejecutarlo desde ahí?$\n$\nNota sobre privacidad: Si acepta, sus datos personales correspondientes a ${PORTABLEAPPNAME} serán copiados de forma temporal a un disco local. Si bien esta copia de sus datos será borrada cuando cierre ${PORTABLEAPPNAME}, una persona mal intencionada podría eventualmente acceder a ellos más tarde." +LangString LauncherNoReadOnly ${LANG_SPANISH} "${PORTABLEAPPNAME} no puede ser ejecutado directamente desde un emplazamiento de sólo-lectura y va a proceder a cerrarse." +LangString LauncherPathTooLong ${LANG_SPANISH} "La ruta a ${PORTABLEAPPNAME} es demasiado larga. Por favor acorte la ruta asignando nombres de directorios más cortos o seleccionando un nuevo emplazamiento para la aplicación" \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TRADCHINESE.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TRADCHINESE.nsh new file mode 100644 index 00000000..5797fb5e --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TRADCHINESE.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_TRADCHINESE} "${PORTABLEAPPNAME} 無法正常執行。重新安裝也許可以解決此問題。$\n$\n(錯誤: 無法找到 $MISSINGFILEORPATH)" +LangString LauncherAlreadyRunning ${LANG_TRADCHINESE} "已經有一份 ${APPNAME} 正在運行。請先關閉運行中的 ${APPNAME},再執行 ${PORTABLEAPPNAME}。" +LangString LauncherAskCopyLocal ${LANG_TRADCHINESE} "${PORTABLEAPPNAME} 似乎被存放在一個唯讀裝置。您是否要暫時複製一份 ${PORTABLEAPPNAME} 到本機硬碟,並在本機硬碟執行 ${PORTABLEAPPNAME}?$\n$\n隱私權備註: 如果您選擇「是(Y)」,您存放在 ${PORTABLEAPPNAME} 的個人資料將被暫時地複製到本機硬碟。雖然此一複本在您關閉 ${PORTABLEAPPNAME} 之後會自動刪除,但是有心人士還是可以用特殊方式竊取您的資料。" +LangString LauncherNoReadOnly ${LANG_TRADCHINESE} "${PORTABLEAPPNAME} 無法在唯讀的裝置上執行,程式即將結束。" +LangString LauncherPathTooLong ${LANG_TRADCHINESE} "${PORTABLEAPPNAME} 的檔案路徑過長,請透過減少目錄層數或縮短目錄名稱等方式縮短檔案路徑的長度。" +LangString LauncherNextButton ${LANG_TRADCHINESE} "下一步(&N) >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TURKISH.nsh b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TURKISH.nsh new file mode 100644 index 00000000..8ac909a7 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/PortableApps.comLauncherLANG_TURKISH.nsh @@ -0,0 +1,6 @@ +LangString LauncherFileNotFound ${LANG_TURKISH} "$AppNamePortable başlatılamadı. Bu durumu düzeltmek için yeniden kurmanız gerekebilir. (HATA: $MissingFileOrPath bulunamadı)" +LangString LauncherAlreadyRunning ${LANG_TURKISH} "Başka bir $AppName kopyası zaten çalışıyor. $AppNamePortable'ı çalıştırmadan önce lütfen diğer $AppName kopyalarını kapatın." +LangString LauncherAskCopyLocal ${LANG_TURKISH} "$AppNamePortable yalnızca okunabilir bir ortamdan çalıştırılmış gibi görünüyor. Geçici olarak yerel hard diske kopyalayıp oradan çalıştırmak ister misiniz?$\n$\nGizlilik Notu: Evet'i seçerseniz $AppNamePortable içindeki kişisel bilgileriniz geçici olarak yerel diske kopyalanacaktır. $AppNamePortable'ı kapattığınızda bu verilerin bu kopyası silinecek olsa da, başka birinin sonradan bu verilere erişmesi mümkün olabilir." +LangString LauncherNoReadOnly ${LANG_TURKISH} "$AppNamePortable sadece okunabilir bir ortamdan doğrudan çalıştırılamaz ve şimdi kapanacak." +LangString LauncherPathTooLong ${LANG_TURKISH} "$AppNamePortable dizini fazla uzun. Lütfen üst dizinlerin bir kısmını kaldırarak veya dizin ismini kısaltarak dizini kısaltın." +LangString LauncherNextButton ${LANG_TURKISH} "Sonraki >" diff --git a/Resources/MozillaFirefoxPortable/Other/Source/ProcFunc.nsh b/Resources/MozillaFirefoxPortable/Other/Source/ProcFunc.nsh new file mode 100644 index 00000000..23ce710f --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/ProcFunc.nsh @@ -0,0 +1,835 @@ +/* +_____________________________________________________________________________ + + Process Functions Header v2.2 +_____________________________________________________________________________ + + 2008-2010 Erik Pilsits aka wraithdu + License: zlib/libpng + + See documentation for more information about the following functions. + + Usage in script: + 1. !include "ProcFunc.nsh" + 2. [Section|Function] + ${ProcFunction} "Param1" "Param2" "..." $var + [SectionEnd|FunctionEnd] + + + ProcFunction=[GetProcessPID|GetProcessPath|GetProcessParent|GetProcessName| + EnumProcessPaths|ProcessWait|ProcessWait2|ProcessWaitClose| + CloseProcess|TerminateProcess|Execute] + + There is also a LogicLib extension: + ${If} ${ProcessExists} file.exe + ... + ${EndIf} + +_____________________________________________________________________________ + + Thanks to: +_____________________________________________________________________________ + +Some functions based on work by Donald Miller and Phoenix1701@gmail.com + +_____________________________________________________________________________ + + Individual documentation: +_____________________________________________________________________________ + +${ProcessExists} "[process]" + "[process]" ; Name or PID + + Use with a LogicLib conditional command like If or Unless. + Evaluates to true if the process exists or false if it does not or + the CreateToolhelp32Snapshot fails. + +${GetProcessPID} "[process]" $var + "[process]" ; Name or PID + + $var(output) ; -2 - CreateToolhelp32Snapshot failed + ; 0 - process does not exist + ; >0 - PID + +${GetProcessPath} "[process]" $var + "[process]" ; Name or PID + + $var(output) ; -2 - CreateToolhelp32Snapshot failed + ; -1 - OpenProcess failed + ; 0 - process does not exist + ; Or path to process + +${GetProcessParent} "[process]" $var + "[process]" ; Name or PID + + $var(output) ; -2 - CreateToolhelp32Snapshot failed + ; 0 - process does not exist + ; Or PPID + +${GetProcessName} "[PID]" $var + "[PID]" ; PID + + $var(output) ; -2 - CreateToolhelp32Snapshot failed + ; 0 - process does not exist + ; Or process name + +${EnumProcessPaths} "Function" $var + "Function" ; Callback function + $var(output) ; -2 - EnumProcesses failed + ; 1 - success + + Function "Function" + Pop $var1 ; matching path string + Pop $var2 ; matching process PID + ...user commands + Push [1/0] ; must return 1 on the stack to continue + ; must return some value or corrupt the stack + ; DO NOT save data in $0-$9 + FunctionEnd + +${ProcessWait} "[process]" "[timeout]" $var + "[process]" ; Name + "[timeout]" ; -1 - do not timeout + ; >0 - timeout in milliseconds + + $var(output) ; -2 - CreateToolhelp32Snapshot failed + ; -1 - operation timed out + ; Or PID + +${ProcessWait2} "[process]" "[timeout]" $var + "[process]" ; Name + "[timeout]" ; -1 - do not timeout + ; >0 - timeout in milliseconds + + $var(output) ; -1 - operation timed out + ; Or PID + +${ProcessWaitClose} "[process]" "[timeout]" $var + "[process]" ; Name + "[timeout]" ; -1 - do not timeout + ; >0 - timeout in milliseconds + + $var(output) ; -1 - operation timed out + ; 0 - process does not exist + ; Or PID of ended process + +${CloseProcess} "[process]" $var + "[process]" ; Name or PID + + $var(output) ; 0 - process does not exist + ; Or PID of ended process + +${TerminateProcess} "[process]" $var + "[process]" ; Name or PID + + $var(output) ; -1 - operation failed + ; 0 - process does not exist + ; Or PID of ended process + +${Execute} "[command]" "[working_dir]" $var + "[command]" ; '"X:\path\to\prog.exe" arg1 arg2 "arg3 with space"' + "[working_dir]" ; Working directory ("X:\path\to\dir") or nothing ("") + + $var(output) ; 0 - failed to create process + ; Or PID +*/ + + +;_____________________________________________________________________________ +; +; Macros +;_____________________________________________________________________________ +; +; Change log window verbosity (default: 3=no script) +; +; Example: +; !include "ProcFunc.nsh" +; ${PROCFUNC_VERBOSE} 4 # all verbosity +; ${PROCFUNC_VERBOSE} 3 # no script + +!ifndef PROCFUNC_INCLUDED +!define PROCFUNC_INCLUDED + +!include Util.nsh +!include LogicLib.nsh + +!verbose push +!verbose 3 +!ifndef _PROCFUNC_VERBOSE + !define _PROCFUNC_VERBOSE 3 +!endif +!verbose ${_PROCFUNC_VERBOSE} +!define PROCFUNC_VERBOSE `!insertmacro PROCFUNC_VERBOSE` +!verbose pop + +!macro PROCFUNC_VERBOSE _VERBOSE + !verbose push + !verbose 3 + !undef _PROCFUNC_VERBOSE + !define _PROCFUNC_VERBOSE ${_VERBOSE} + !verbose pop +!macroend + +!define PROCESS_QUERY_INFORMATION 0x0400 +!define PROCESS_TERMINATE 0x0001 +!define PROCESS_VM_READ 0x0010 +!define SYNCHRONIZE 0x00100000 + +!define WAIT_TIMEOUT 0x00000102 + +!ifdef NSIS_UNICODE + !define _PROCFUNC_WSTRING "&w260" +!else + !define _PROCFUNC_WSTRING "&w520" +!endif + +!macro ProcessExists + !error "ProcessExists has been renamed to GetProcessPID" +!macroend +!macro _ProcessExists _a _b _t _f + !insertmacro _LOGICLIB_TEMP + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${_b}` + ${CallArtificialFunction} LLProcessExists_ + IntCmp $_LOGICLIB_TEMP 0 `${_f}` + Goto `${_t}` + !verbose pop +!macroend +!define ProcessExists `"" ProcessExists` + +!macro GetProcessPID +!macroend +!define GetProcessPID "!insertmacro GetProcessPIDCall" +!macro GetProcessPIDCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push 0 + Push `${process}` + !ifdef CallArtificialFunction_TYPE ; macro nesting disallowed, breaks otherwise if used from WaitClose + ${CallArtificialFunction2} ProcFuncs_ + !else + ${CallArtificialFunction} ProcFuncs_ + !endif + Pop ${outVar} + !verbose pop +!macroend + +!macro GetProcessPath +!macroend +!define GetProcessPath "!insertmacro GetProcessPathCall" +!macro GetProcessPathCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push 1 + Push `${process}` + ${CallArtificialFunction} ProcFuncs_ + Pop ${outVar} + !verbose pop +!macroend + +!macro GetProcessParent +!macroend +!define GetProcessParent "!insertmacro GetProcessParentCall" +!macro GetProcessParentCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push 2 + Push `${process}` + ${CallArtificialFunction} ProcFuncs_ + Pop ${outVar} + !verbose pop +!macroend + +!macro GetProcessName +!macroend +!define GetProcessName "!insertmacro GetProcessNameCall" +!macro GetProcessNameCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push 6 + Push `${process}` + ${CallArtificialFunction} ProcFuncs_ + Pop ${outVar} + !verbose pop +!macroend + +!macro EnumProcessPaths +!macroend +!define EnumProcessPaths "!insertmacro EnumProcessPathsCall" +!macro EnumProcessPathsCall user_func outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push $0 + GetFunctionAddress $0 `${user_func}` + Push `$0` + ${CallArtificialFunction} EnumProcessPaths_ + Exch + Pop $0 + Pop ${outVar} + !verbose pop +!macroend + +!macro ProcessWait +!macroend +!define ProcessWait "!insertmacro ProcessWaitCall" +!macro ProcessWaitCall process timeout outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${timeout}` + Push `${process}` + ${CallArtificialFunction} ProcessWait_ + Pop ${outVar} + !verbose pop +!macroend + +!macro ProcessWait2 +!macroend +!define ProcessWait2 "!insertmacro ProcessWait2Call" +!macro ProcessWait2Call process timeout outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${timeout}` + Push `${process}` + ${CallArtificialFunction} ProcessWait2_ + Pop ${outVar} + !verbose pop +!macroend + +!macro ProcessWaitClose +!macroend +!define ProcessWaitClose "!insertmacro ProcessWaitCloseCall" +!macro ProcessWaitCloseCall process timeout outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${timeout}` + Push `${process}` + ${CallArtificialFunction} ProcessWaitClose_ + Pop ${outVar} + !verbose pop +!macroend + +!macro CloseProcess +!macroend +!define CloseProcess "!insertmacro CloseProcessCall" +!macro CloseProcessCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${process}` + ${CallArtificialFunction} CloseProcess_ + Pop ${outVar} + !verbose pop +!macroend + +!macro TerminateProcess +!macroend +!define TerminateProcess "!insertmacro TerminateProcessCall" +!macro TerminateProcessCall process outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${process}` + ${CallArtificialFunction} TerminateProcess_ + Pop ${outVar} + !verbose pop +!macroend + +!macro Execute +!macroend +!define Execute "!insertmacro ExecuteCall" +!macro ExecuteCall cmdline wrkdir outVar + !verbose push + !verbose ${_PROCFUNC_VERBOSE} + Push `${wrkdir}` + Push `${cmdline}` + ${CallArtificialFunction} Execute_ + Pop ${outVar} + !verbose pop +!macroend + +!macro ProcFuncs_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process / PID + Pop $1 ; mode + + Push 0 ; set return value if not found + + ; set mode of operation in $1 + ${Select} $1 ; mode 0 = GetProcessPID, mode 1 = GetProcessPath, mode 2 = GetProcessParent + ${Case} 0 + StrCpy $2 $0 4 -4 + ${If} $2 == ".exe" + ; exists from process name + StrCpy $1 0 + ${Else} + ; exists from pid + StrCpy $1 1 + ${EndIf} + ${Case} 1 + StrCpy $2 $0 4 -4 + ${If} $2 == ".exe" + ; get path from process name + StrCpy $1 2 + ${Else} + ; get path from pid + StrCpy $1 3 + ${EndIf} + ${Case} 2 + StrCpy $2 $0 4 -4 + ${If} $2 == ".exe" + ; get parent from process name + StrCpy $1 4 + ${Else} + ; get parent from pid + StrCpy $1 5 + ${EndIf} + ${EndSelect} + + System::Call '*(&l4,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING})i .r2' ; $2 = PROCESSENTRY32W structure + ; take system process snapshot in $3 + System::Call 'kernel32::CreateToolhelp32Snapshot(i 2, i 0)i .r3' + ${Unless} $3 = -1 + System::Call 'kernel32::Process32FirstW(i r3, i r2)i .r4' + ${Unless} $4 = 0 + ${Do} + ${Select} $1 + ${Case3} 0 2 4 + ; get process name in $5 + System::Call '*$2(i,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING} .r5)' + ${Case4} 1 3 5 6 + ; get process PID in $5 + System::Call '*$2(i,i,i .r5)' + ${EndSelect} + ; is this process the one we are looking for? + ${If} $5 == $0 ; string test works ok for numeric PIDs as well + ${Select} $1 ; mode 0/1 = GetProcessPID, mode 2/3 = GetProcessPath, mode 4/5 = GetProcessParent, mode 6 = GetProcessName + ${Case2} 0 1 + ; return pid + Pop $5 ; old return value + System::Call '*$2(i,i,i .s)'; process pid to stack + ${Case2} 2 3 + ; return full path + Pop $5 + ; open process + System::Call '*$2(i,i,i .s)'; process pid to stack + System::Call 'kernel32::OpenProcess(i ${PROCESS_QUERY_INFORMATION}|${PROCESS_VM_READ}, i 0, i s)i .r5' ; process handle to $5 + ${Unless} $5 = 0 + ; full path to stack + System::Call 'psapi::GetModuleFileNameExW(i r5, i 0, w .s, i ${NSIS_MAX_STRLEN})' + System::Call 'kernel32::CloseHandle(i r5)' + ${Else} + Push -1 ; OpenProcess failure return value + ${EndUnless} + ${Case2} 4 5 + ; return parent PID + Pop $5 + System::Call '*$2(i,i,i,i,i,i,i .s)'; parent pid to stack + ${Case} 6 + ; return base name + Pop $5 + System::Call '*$2(i,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING} .s)' + ${EndSelect} + ${Break} + ${EndIf} + System::Call 'kernel32::Process32NextW(i r3, i r2)i .r4' + ${LoopUntil} $4 = 0 + System::Call 'kernel32::CloseHandle(i r3)' ; close snapshot + ${EndUnless} + ${Else} + Pop $5 + Push -2 ; function failure return value + ${EndUnless} + System::Free $2 ; free buffer + + System::Store "l" ; restore registers +!macroend + +!macro EnumProcessPaths_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; user_func + + StrCpy $1 1 ; OK to loop + + System::Alloc 1024 + Pop $2 ; process list buffer + ; get an array of all process ids + System::Call 'psapi::EnumProcesses(i r2, i 1024, *i .r3)i .r4' ; $3 = sizeof buffer + ${Unless} $4 = 0 + IntOp $3 $3 / 4 ; Divide by sizeof(DWORD) to get $3 process count + IntOp $3 $3 - 1 ; decrement for 0 base loop + ${For} $4 0 $3 + ${IfThen} $1 != 1 ${|} ${Break} ${|} + ; get a PID from the array + IntOp $5 $4 * 4 ; calculate offset + IntOp $5 $5 + $2 ; add offset to original buffer address + System::Call '*$5(i .r5)' ; get next PID = $5 + ${Unless} $5 = 0 + System::Call 'kernel32::OpenProcess(i ${PROCESS_QUERY_INFORMATION}|${PROCESS_VM_READ}, i 0, i r5)i .r6' + ${Unless} $6 = 0 ; $6 is hProcess + ; get full path + System::Call 'psapi::GetModuleFileNameExW(i r6, i 0, w .r7, i ${NSIS_MAX_STRLEN})i .r8' ; $7 = path + ${Unless} $8 = 0 ; no path + System::Store "s" ; store registers in System's private stack + Push $5 ; PID to stack + Push $7 ; path to stack + Call $0 ; user func must return 1 on the stack to continue looping + System::Store "l" ; restore registers + Pop $1 ; continue? + ${EndUnless} + System::Call 'kernel32::CloseHandle(i r6)' + ${EndUnless} + ${EndUnless} + ${Next} + Push 1 ; return value + ${Else} + Push -2 ; function failure return value + ${EndUnless} + System::Free $2 ; free buffer + + System::Store "l" ; restore registers +!macroend + +!macro ProcessWait_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process + Pop $1 ; timeout + + StrCpy $6 1 ; initialize loop + StrCpy $7 0 ; initialize timeout counter + + System::Call '*(&l4,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING})i .r2' ; $2 = PROCESSENTRY32W structure + ${DoWhile} $6 = 1 ; processwait loop + ; take system process snapshot in $3 + System::Call 'kernel32::CreateToolhelp32Snapshot(i 2, i 0)i .r3' + ${Unless} $3 = -1 + System::Call 'kernel32::Process32FirstW(i r3, i r2)i .r4' + ${Unless} $4 = 0 + ${Do} + ; get process name in $5 + System::Call '*$2(i,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING} .r5)' + ${If} $5 == $0 + ; exists, return pid + System::Call '*$2(i,i,i .s)'; process pid to stack ; process pid + StrCpy $6 0 ; end loop + ${Break} + ${EndIf} + System::Call 'kernel32::Process32NextW(i r3, i r2)i .r4' + ${LoopUntil} $4 = 0 + System::Call 'kernel32::CloseHandle(i r3)' ; close snapshot + ${EndUnless} + ${Else} + Push -2 + ${Break} + ${EndUnless} + ; timeout loop + ${If} $6 = 1 + ${If} $1 >= 0 + IntOp $7 $7 + 500 ; increment timeout counter + ${AndIf} $7 >= $1 ; timed out, break loop + Push -1 ; timeout return value + ${Break} ; end loop if timeout + ${EndIf} + Sleep 500 ; pause before looping + ${EndIf} + ${Loop} ; processwaitloop + System::Free $2 ; free buffer + + System::Store "l" ; restore registers +!macroend + +!macro ProcessWait2_ + System::Store "s" ; store registers in System's private stack + System::Store "P0" ; FindProcDLL return value + Pop $0 ; process + Pop $1 ; timeout + + StrCpy $2 0 ; initialize timeout counter + + ${Do} + FindProcDLL::FindProc $0 + ${IfThen} $R0 = 1 ${|} ${Break} ${|} + ${If} $1 >= 0 + IntOp $2 $2 + 250 + ${AndIf} $2 >= $1 + Push -1 ; timeout return value + ${Break} + ${EndIf} + Sleep 250 + ${Loop} + + ${If} $R0 = 1 ; success, get pid + ${GetProcessPID} $0 $0 + Push $0 ; return pid + ${EndIf} + + System::Store "R0" ; restore registers + System::Store "l" +!macroend + +!macro ProcessWaitClose_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process / PID + Pop $1 ; timeout + + ; passed process name or pid + StrCpy $2 $0 4 -4 + ${If} $2 == ".exe" + ${GetProcessPID} $0 $0 + ${EndIf} + + ; else passed pid directly + + ${Unless} $0 = 0 + System::Call 'kernel32::OpenProcess(i ${SYNCHRONIZE}, i 0, i r0)i .r2' + ${Unless} $2 = 0 ; $2 is hProcess + System::Call 'kernel32::WaitForSingleObject(i r2, i $1)i .r1' + ${If} $1 = ${WAIT_TIMEOUT} + Push -1 ; timed out + ${Else} + Push $0 ; return pid of ended process + ${EndIf} + System::Call 'kernel32::CloseHandle(i r2)' + ${Else} + Push 0 ; failure return value + ${EndUnless} + ${Else} + Push 0 ; failure return value + ${EndUnless} + + System::Store "l" ; restore registers +!macroend + +!macro CloseProcess_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process / PID + + ; passed process name or pid + StrCpy $1 $0 4 -4 + ${If} $1 == ".exe" + ${GetProcessPID} $0 $0 + ${EndIf} + + ; else passed pid directly + + ${Unless} $0 = 0 ; $0 = target pid + Push $0 ; return pid of process + ; use EnumWindows and a callback + System::Get '(i .r1, i)i sr4' ; $1 = hwnd, $4 = callback#, s (stack) = source for return value + Pop $3 ; $3 = callback address + System::Call 'user32::EnumWindows(k r3, i)i' ; enumerate top-level windows + ${DoWhile} $4 == "callback1" + System::Call 'user32::GetWindowThreadProcessId(i r1, *i .r2)i' ; $2 = pid that created the window + ${If} $2 = $0 ; match to target pid + SendMessage $1 16 0 0 /TIMEOUT=1 ; send WM_CLOSE to all top-level windows owned by process, timeout immediately + ${EndIf} + Push 1 ; callback return value; keep enumerating windows (returning 0 stops) + StrCpy $4 "" ; clear callback# + System::Call '$3' ; return from callback + ${Loop} + System::Free $3 ; free callback + ${Else} + Push 0 ; failure return value + ${EndUnless} + + System::Store "l" ; restore registers +!macroend + +!macro TerminateProcess_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process / PID + + ; passed process name or pid + StrCpy $1 $0 4 -4 + ${If} $1 == ".exe" + ${GetProcessPID} $0 $0 + ${EndIf} + + ; else passed pid directly + + ${Unless} $0 = 0 + System::Call 'kernel32::OpenProcess(i ${PROCESS_TERMINATE}, i 0, i r0)i .r1' + ${Unless} $1 = 0 ; $1 is hProcess + System::Call 'kernel32::TerminateProcess(i r1, i 0)i .r1' + ${If} $1 = 0 ; fail + Push -1 + ${Else} + Push $0 ; return pid of ended process + ${EndIf} + System::Call 'kernel32::CloseHandle(i r1)' + ${Else} + Push 0 ; failure return value + ${EndUnless} + ${Else} + Push 0 ; failure return value + ${EndUnless} + + System::Store "l" ; restore registers +!macroend + +!macro Execute_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; cmdline + Pop $1 ; wrkdir + + System::Alloc 68 ; 4*16 + 2*2 / STARTUPINFO structure = $2 + Pop $2 + System::Call '*$2(i 68)' ; set cb = sizeof(STARTUPINFO) + System::Call '*(i,i,i,i)i .r3' ; PROCESS_INFORMATION structure = $3 + + ${If} $1 == "" + StrCpy $1 "i" + ${Else} + StrCpy $1 'w "$1"' + ${EndIf} + + System::Call `kernel32::CreateProcessW(i, w '$0', i, i, i 0, i 0, i, $1, i r2, i r3)i .r4` ; return 0 if fail + ${Unless} $4 = 0 ; failed to create process + System::Call '*$3(i .r4, i .r5, i .r6)' ; read handles and PID + System::Call 'kernel32::CloseHandle(i $4)' ; close hProcess + System::Call 'kernel32::CloseHandle(i $5)' ; close hThread + Push $6 ; return PID + ${Else} + Push 0 ; return val if failed + ${EndUnless} + + System::Free $2 ; free STARTUPINFO struct + System::Free $3 ; free PROCESS_INFORMATION struct + + System::Store "l" ; restore registers +!macroend + +!macro LLProcessExists_ + System::Store "s" ; store registers in System's private stack + Pop $0 ; process name + + StrCpy $_LOGICLIB_TEMP 0 + + System::Call '*(&l4,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING})i .r2' ; $2 = PROCESSENTRY32W structure + ; take system process snapshot in $3 + System::Call 'kernel32::CreateToolhelp32Snapshot(i 2, i 0)i .r3' + IntCmp $3 -1 done + System::Call 'kernel32::Process32FirstW(i r3, i r2)i .r4' + IntCmp $4 0 endloop + loop: + System::Call '*$2(i,i,i,i,i,i,i,i,i,${_PROCFUNC_WSTRING} .r5)' + StrCmp $5 $0 0 next_process + StrCpy $_LOGICLIB_TEMP 1 + Goto endloop + next_process: + System::Call 'kernel32::Process32NextW(i r3, i r2)i .r4' + IntCmp $4 0 endloop + Goto loop + endloop: + System::Call 'kernel32::CloseHandle(i r3)' ; close snapshot + done: + System::Free $2 ; free buffer + + System::Store "l" ; restore registers +!macroend + +!endif ; PROCFUNC_INCLUDED + +/**************************************************************************** + Functions + ========= + + HANDLE WINAPI OpenProcess( + __in DWORD dwDesiredAccess, + __in BOOL bInheritHandle, + __in DWORD dwProcessId + ); + + BOOL WINAPI CreateProcess( + __in_opt LPCTSTR lpApplicationName, + __inout_opt LPTSTR lpCommandLine, + __in_opt LPSECURITY_ATTRIBUTES lpProcessAttributes, + __in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes, + __in BOOL bInheritHandles, + __in DWORD dwCreationFlags, + __in_opt LPVOID lpEnvironment, + __in_opt LPCTSTR lpCurrentDirectory, + __in LPSTARTUPINFO lpStartupInfo, + __out LPPROCESS_INFORMATION lpProcessInformation + ); + + typedef struct _STARTUPINFO { + DWORD cb; + LPTSTR lpReserved; + LPTSTR lpDesktop; + LPTSTR lpTitle; + DWORD dwX; + DWORD dwY; + DWORD dwXSize; + DWORD dwYSize; + DWORD dwXCountChars; + DWORD dwYCountChars; + DWORD dwFillAttribute; + DWORD dwFlags; + WORD wShowWindow; + WORD cbReserved2; + LPBYTE lpReserved2; + HANDLE hStdInput; + HANDLE hStdOutput; + HANDLE hStdError; + } STARTUPINFO, + *LPSTARTUPINFO; + + typedef struct _PROCESS_INFORMATION { + HANDLE hProcess; + HANDLE hThread; + DWORD dwProcessId; + DWORD dwThreadId; + } PROCESS_INFORMATION, + *LPPROCESS_INFORMATION; + + BOOL WINAPI EnumProcesses( + __out DWORD* pProcessIds, + __in DWORD cb, + __out DWORD* pBytesReturned + ); + + DWORD WINAPI GetModuleBaseName( + __in HANDLE hProcess, + __in_opt HMODULE hModule, + __out LPTSTR lpBaseName, + __in DWORD nSize + ); + + DWORD WINAPI GetModuleFileNameEx( + __in HANDLE hProcess, + __in_opt HMODULE hModule, + __out LPTSTR lpFilename, + __in DWORD nSize + ); + + BOOL WINAPI CloseHandle( + __in HANDLE hObject + ); + + DWORD WINAPI WaitForSingleObject( + __in HANDLE hHandle, + __in DWORD dwMilliseconds + ); + + BOOL WINAPI TerminateProcess( + __in HANDLE hProcess, + __in UINT uExitCode + ); + + BOOL EnumWindows( + __in WNDENUMPROC lpEnumFunc, + __in LPARAM lParam + ); + + DWORD GetWindowThreadProcessId( + __in HWND hWnd, + __out LPDWORD lpdwProcessId + ); + + BOOL PostMessage( + __in HWND hWnd, + __in UINT Msg, + __in WPARAM wParam, + __in LPARAM lParam + ); + +****************************************************************************/ diff --git a/Resources/MozillaFirefoxPortable/Other/Source/RMDirIfNotJunction.nsh b/Resources/MozillaFirefoxPortable/Other/Source/RMDirIfNotJunction.nsh new file mode 100644 index 00000000..223570b6 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/RMDirIfNotJunction.nsh @@ -0,0 +1,35 @@ +; RMDirIfNotJunction 1.1 (2020-04-29) +; +; Removes an empty directory if it is not a junction +; +; Usage: ${RMDirIfNotJunction} REMOVE_PATH + +!include "FileFunc.nsh" + +Function RMDirIfNotJunction + ;Start with a clean slate + ClearErrors + + ;Get our parameters + Exch $0 ;REMOVE_PATH + Push $1 ;TempVar + + ;Determine if it is a junction + ${GetFileAttributes} "$0" "REPARSE_POINT" $1 + + ${If} $1 == 0 + ;Not a junction, remove the directory if empty + RMDir $0 + ${EndIf} + + ;Clear the stack + Pop $1 + Pop $0 +FunctionEnd + +!macro RMDirIfNotJunction REMOVE_PATH + Push `${REMOVE_PATH}` + Call RMDirIfNotJunction +!macroend + +!define RMDirIfNotJunction '!insertmacro "RMDirIfNotJunction"' \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/ReadINIStrWithDefault.nsh b/Resources/MozillaFirefoxPortable/Other/Source/ReadINIStrWithDefault.nsh new file mode 100644 index 00000000..6ff034df --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/ReadINIStrWithDefault.nsh @@ -0,0 +1,55 @@ +; ReadINIStrWithDefault 1.1 (2009-05-12) +; +; Substitutes a default value if the INI is undefined +; Copyright 2008-2009 John T. Haller of PortableApps.com +; Released under the BSD +; +; Usage: ${ReadINIStrWithDefault} OUTPUT_VALUE INI_FILENAME SECTION_NAME ENTRY_NAME DEFAULT_VALUE +; +; History: +; 1.1 (2009-05-12): Fixed error with $0 and $2 being swapped + +Function ReadINIStrWithDefault + ;Start with a clean slate + ClearErrors + + ;Get our parameters + Exch $0 ;DEFAULT_VALUE + Exch + Exch $1 ;ENTRY_NAME + Exch 2 + Exch $2 ;SECTION_NAME + Exch 3 + Exch $3 ;INI_FILENAME + Push $4 ;OUTPUT_VALUE + + ;Read from the INI + ReadINIStr $4 $3 $2 $1 + IfErrors 0 +3 + StrCpy $4 $0 + ClearErrors + + ;Keep the variable for last + StrCpy $0 $4 + + ;Clear the stack + Pop $4 + Pop $3 + Exch 2 + Pop $2 + Pop $1 + + ;Reset the last variable and leave our result on the stack + Exch $0 +FunctionEnd + +!macro ReadINIStrWithDefault OUTPUT_VALUE INI_FILENAME SECTION_NAME ENTRY_NAME DEFAULT_VALUE + Push `${INI_FILENAME}` + Push `${SECTION_NAME}` + Push `${ENTRY_NAME}` + Push `${DEFAULT_VALUE}` + Call ReadINIStrWithDefault + Pop `${OUTPUT_VALUE}` +!macroend + +!define ReadINIStrWithDefault '!insertmacro "ReadINIStrWithDefault"' \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/Readme.txt b/Resources/MozillaFirefoxPortable/Other/Source/Readme.txt new file mode 100644 index 00000000..d7bdeee8 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/Readme.txt @@ -0,0 +1,175 @@ +Firefox Portable Launcher +========================= +Copyright 2004-2017 John T. Haller of PortableApps.com + +Website: http://PortableApps.com/FirefoxPortable + +This software is OSI Certified Open Source Software. +OSI Certified is a certification mark of the Open Source Initiative. + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +ABOUT FIREFOX PORTABLE +====================== +The Firefox Portable Launcher allows you to run Firefox from a removable drive +whose letter changes as you move it to another computer. The browser and the +profile can be entirely self-contained on the drive and then used on any Windows +computer. Specific configuration changes are made to the chrome.rdf so that +your extensions will still work as the drive letter changes. + + +LICENSE +======= +This code is released under the GPL. Within the FirefoxPortableSource directory +you will find the code (FirefoxPortable.nsi) as well as the full GPL license +(License.txt). If you use the launcher or code in your own product, please give +proper and prominent attribution. + + +INSTALLATION / DIRECTORY STRUCTURE +================================== +By default, the program expects the following directory structure: + +-\ <--- Directory with FirefoxPortable.exe + +\App\ + +\firefox\ + +\Data\ + +\profile\ + +\settings\ + +\plugins\ (optional) + +The above files may also be placed in a FirefoxPortable directory with the +FirefoxPortable.exe launcher a directory above that. + +It can be used in other directory configurations by including the FirefoxPortable.ini +file in the same directory as FirefoxPortable.exe and configuring it as detailed in +the INI file section below. + + +FIREFOXPORTABLE.INI CONFIGURATION +================================= +The Firefox Portable Launcher will look for an ini file called FirefoxPortable.ini +within its directory. If you are happy with the default options, it is not necessary, +though. There is an example INI included with this package to get you started within +the Other\Source directory. Note that it will not work from this location as it must +be placed in the same directory as FirefoxPortable.exe. The INI file is formatted as +follows: + +[FirefoxPortable] +FirefoxDirectory=App\firefox +ProfileDirectory=Data\profile +SettingsDirectory=Data\settings +PluginsDirectory=Data\plugins +FirefoxExecutable=firefox.exe +AdditionalParameters= +LocalHomepage= +WaitForFirefox=false +DisableSplashScreen=false +AllowMultipleInstances=false +DisableIntelligentStart=false +SkipCompregFix=false +RunLocally=false +AlwaysUse32Bit=false + +The FirefoxDirectory, ProfileDrectory, SettingsDirectory and PluginsDirectory entries +should be set to the *relative* path to the directories containing firefox.exe, your +profile, your plugins, etc. from the current directory. All must be a subdirectory +(or multiple subdirectories) of the directory containing FirefoxPortable.exe. The +default entries for these are described in the installation section above. The +FirefoxDirectory as well as the path provided with a 64 appended will be checked for +the 32-bit and 64-bit versions of Firefox respectively. + +The FirefoxExecutable entry allows you to set the Firefox Portable Launcher to use +an alternate EXE call to launch firefox. This is helpful if you are using a machine +that is set to deny firefox.exe from running. You'll need to rename the firefox.exe +file and then enter the name you gave it on the firefoxexecutable= line of the INI. + +The AdditionalParameters entry allows you to pass additional commandline parameter +entries to firefox.exe. Whatever you enter here will be appended to the call to +firefox.exe. + +The LocalHomepage entry allows you to set Firefox Portable to use a local file on your +read-only disc (CD/DVD/etc) as your homepage when running in Live mode. It's not necessary +for use on regular drives (the launcher handles portablizing your homepage path). The +file must be a path relative to the launcher. If you were to set it to a file in the +same directory as FirefoxPortable.exe, you would use LocalHomepage=homepage.html If it +was in a subdirectory called homepage, you would enter LocalHomepage=homepage/homepage.html. + +The WaitForFirefox entry allows you to set the launcher to remain active until Firefox has +closed. This is useful if you wish to have another process wait until Firefox Portable +has closed. The launcher will automatically wait for Firefox to close in cases where it +needs to clean up after firefox.exe (for instance, to clean up %APPDATA%\Mozilla\Firefox +when there is no locally-installed Firefox). + +The DisableSplashScreen entry allows you to run the Firefox Portable Launcher without the +splash screen showing up. The default is false. + +The AllowMultipleInstances entry will allow Firefox Portable to run alongside your +regular local copy of Firefox if you set it to true (lowercase). The default is false. + +The DisableIntelligentStart entry allows you to to have Firefox Portable run its chrome +and component registry fixes on every start. Normally, it tracks when you've moved to a +new path (switching PCs for instance) and only processes the chrome and component +registry when you do. By skipping it when the path is the same, Firefox Portable starts +up faster. But, if you copy a profile into Firefox Portable between sessions (it handles +a copy in on first run automatically), it won't know to process these. This usually +happens if you copy a profile into Firefox Portable from your local PC on a regular basis +with a sync utility that doesn't work with Firefox Portable (like Portable Apps Sync +does). Setting this to true causes Firefox Portable to process each on every start. + +The SkipCompregFix entry allows you to set Firefox Portable not to adjust the component +registry (compreg.dat) for certain extension compatibility on launch. It is useful if +you are only using Firefox Portable on computers you control and are able to have the +drive letter set the same each time or if you are not using extensions which make use of +the component registry (like Forecast Fox or the Mozilla Calendar) as Firefox Portable +will launch more quickly. Set it to true (lowercase) to skip chrome.rdf processing. The +default is false. + +The RunLocally entry allows you to set Firefox Portable to copy your profile, plugins and +Firefox binaries to the local machine's temp directory. This can be useful for instances +where you'd like to run Firefox Portable from a CD (aka Firefox Portable Live) or when +you're working on a machine that may have spyware or viruses and you'd like to keep your +device set to read-only mode. The only caveat is, of course, that any changes you make +that session (cookies, bookmarks, etc) aren't saved back to your device. When done +running, the local temp directories used by Firefox Portable are removed. RunLocally does +not currently work with AllowMultipleInstances as it cannot track which version of +Firefox is running. RunLocally will only use the 32-bit version of Firefox. Note that this +option is not well maintained and may or may not work with each new release. + +The AlwaysUse32Bit entry allows you to set Firefox Portable to use the 32-bit version of +Firefox even when run on a 64-bit machine. This can be useful when used with a legacy +plugin which is only available as a 32-bit plugin as well as when testing extensions and +web apps. + + +PROGRAM HISTORY / ABOUT THE AUTHORS +=================================== +This launcher contains suggestions from multiple sources. It began as a batch file launcher +written by myself (John T. Haller) and posted to the mozillaZine.org thread about running +Firefox from a USB key. tracon later released a launcher called fflaunch which I +enhanced and re-released as Firefox Portable. mai9 later improved on fflaunch's +techniques and released it as Free The Fox. Multiple suggestions back and forth from mai9, +myself and others lead to the launcher we have today. This most recent version adds my +methods for allowing the code to be run from anywhere on first launch (as opposed to a +specific directory), pass in commandline options, run without an ini file, allow the use +of profiles from local installations, intelligent startup (the launcher determines whether +paths have changed) and more. + + +CURRENT LIMITATIONS +=================== +INCOMPATIBLE EXTENSIONS - Certain extensions use additional local files or prefs.js in a +non-standard way to store information, neither of which are handled by the Firefox Portable +launcher when moving between machines. \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/ReplaceInFileWithTextReplace.nsh b/Resources/MozillaFirefoxPortable/Other/Source/ReplaceInFileWithTextReplace.nsh new file mode 100644 index 00000000..d099e5b0 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/ReplaceInFileWithTextReplace.nsh @@ -0,0 +1,64 @@ +; ReplaceInFile wrapper for testreplace function +; John T. Haller of PortableApps.com +; BSD License +; Requires TextReplace plugin installed in NSIS and !include "TextReplace.nsh" in main nsi +; +; Usage: ${ReplaceInFile} SOURCE_FILE SEARCH_TEXT REPLACEMENT +; or use ReplaceInFileCS for case-sensitive (use when possible, it's faster) +; No return variable. Error will be set if unable to do the replacement (invalid file, locked file, etc) + +Function ReplaceInFile + Exch $0 ;REPLACEMENT + Exch + Exch $1 ;SEARCH_TEXT + Exch 2 + Exch $2 ;SOURCE_FILE + Exch 3 + Exch $3 ;CASE_INSENSITIVE + Push $4 ;NEW_FILE + Push $5 ;RETURN_VALUE + + StrCpy $4 `$2.OldReplaceInFile` + + ${textreplace::ReplaceInFile} "$2" "$4" "$1" "$0" "$3 /C=0" $5 + + IntCmp $5 0 StackCleanup ReturnError RenameToOriginal + + ReturnError: + SetErrors + Goto StackCleanup + + RenameToOriginal: + Delete $2 + Rename $4 $2 + + StackCleanup: + Pop $5 + Pop $4 + Pop $3 + Pop $0 + Pop $1 + Pop $2 + + ${textreplace::Unload} +FunctionEnd + +!macro ReplaceInFileCS SOURCE_FILE SEARCH_TEXT REPLACEMENT + Push `/S=1` + Push `${SOURCE_FILE}` + Push `${SEARCH_TEXT}` + Push `${REPLACEMENT}` + Call ReplaceInFile +!macroend + +!macro ReplaceInFile SOURCE_FILE SEARCH_TEXT REPLACEMENT + Push `/S=0` + Push `${SOURCE_FILE}` + Push `${SEARCH_TEXT}` + Push `${REPLACEMENT}` + Call ReplaceInFile +!macroend + +!define ReplaceInFileCS '!insertmacro "ReplaceInFileCS"' + +!define ReplaceInFile '!insertmacro "ReplaceInFile"' \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/Other/Source/SetFileAttributesDirectoryNormal.nsh b/Resources/MozillaFirefoxPortable/Other/Source/SetFileAttributesDirectoryNormal.nsh new file mode 100644 index 00000000..486dce95 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/Other/Source/SetFileAttributesDirectoryNormal.nsh @@ -0,0 +1,49 @@ +; SetFileAttributesDirectoryNormal v 1.1 +; Sets all the files in a given directory (and sub directories) to NORMAL attributes +; +; Usage: ${SetFileAttributesDirectoryNormal} DIRECTORY_TO_SET_NORMAL +; +; Macro and Define added by John T. Haller of PortableApps.com +; +; Uses function Attrib v1.1 +; http://nsis.sourceforge.net/Attrib +; By: Hendri Adriaens (HendriAdriaens@hotmail.com) +; Additions by hobbyscripter to enable recursion of sub-directories +; BSD License + +Function SetFileAttributesDirectoryNormal + Exch $1 ; Dir + Push $2 + Push $3 + FindFirst $2 $3 "$1\*.*" + StrCmp $3 "" exitloop + + loop: + StrCmp $3 "" exitloop + StrCmp $3 "." next + StrCmp $3 ".." next + IfFileExists "$1\$3\*.*" 0 +4 + Push "$1\$3" + Call SetFileAttributesDirectoryNormal + Goto next + ; SetFileAttributes does not accept variables as attribute, + ; so manually set this to the necessary value. + SetFileAttributes "$1\$3" NORMAL + + next: + FindNext $2 $3 + Goto loop + + exitloop: + FindClose $2 + Pop $3 + Pop $2 + Pop $1 +FunctionEnd + +!macro SetFileAttributesDirectoryNormal DIRECTORY_TO_SET_NORMAL + Push `${DIRECTORY_TO_SET_NORMAL}` + Call SetFileAttributesDirectoryNormal +!macroend + +!define SetFileAttributesDirectoryNormal '!insertmacro "SetFileAttributesDirectoryNormal"' \ No newline at end of file diff --git a/Resources/MozillaFirefoxPortable/help.html b/Resources/MozillaFirefoxPortable/help.html new file mode 100644 index 00000000..cfc1af02 --- /dev/null +++ b/Resources/MozillaFirefoxPortable/help.html @@ -0,0 +1,193 @@ + +Mozilla Firefox, Portable Edition Help + + + + + +

+
+

Mozilla Firefox, Portable Edition Help

+

web browser

+

Mozilla Firefox®, Portable Edition is the popular Mozilla Firefox® web browser packaged with a PortableApps.com Launcher as a portable app, so you can take your bookmarks, extensions and saved passwords with you. It has all the same great features as Mozilla Firefox including popup-blocking, tabbed-browsing, integrated search, improved privacy features, automatic updating and more. Plus, it leaves no personal information behind on the machine you run it on, so you can take your favorite browser along with all your favorite bookmarks and extensions with you wherever you go. Learn more about Mozilla Firefox...

+ +Make a Donation - Support PortableApps.com's Hosting and Development + +

Go to the Mozilla Firefox, Portable Edition Homepage >>

+ +

Get more portable apps at PortableApps.com

+ +

This software is OSI Certified Open Source Software. OSI Certified is a certification mark of the Open Source Initiative.

+ +

Firefox Portable-Specific Issues

+ +

You can read about advanced configuration options for the Firefox Portable Launcher in its Readme.txt.

+ +

General Mozilla Firefox Issues

+ + +

Acknowledgements

+

Many thanks to Gerard Balagu (mai9) for the original code handling extension path rewriting in his FreeTheFox launcher and tracon for some of the original ideas with his fflaunch launcher. Thanks as well to FlashBanG and all the folks participating in the mozillaZine forum thread for their ideas, suggestions and support.

+ +

Mozilla®, Firefox® and the Firefox logo are registered trademarks of the Mozilla Foundation and are used under license.

+
+ + + \ No newline at end of file diff --git a/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win32/geckodriver.exe b/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win32/geckodriver.exe new file mode 100644 index 00000000..e4dbf79a Binary files /dev/null and b/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win32/geckodriver.exe differ diff --git a/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win64/geckodriver.exe b/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win64/geckodriver.exe new file mode 100644 index 00000000..4ce451bc Binary files /dev/null and b/Resources/SeleniumWebDrivers/Firefox/geckodriver-v0.27.0-win64/geckodriver.exe differ