зеркало из https://github.com/mozilla/pjs.git
Bug 399665 - Support replacing BrandShortName and BrandFullName in the installer. r=sspitzer, approvalM9=mconnor, approval1.9=mconnor
This commit is contained in:
Родитель
1f65948fdd
Коммит
2f4e4ab3df
|
@ -120,6 +120,7 @@ VIAddVersionKey "FileDescription" "${BrandShortName} Installer"
|
|||
!insertmacro RegCleanAppHandler
|
||||
!insertmacro RegCleanMain
|
||||
!insertmacro RegCleanUninstall
|
||||
!insertmacro SetBrandNameVars
|
||||
!insertmacro UnloadUAC
|
||||
!insertmacro WriteRegStr2
|
||||
!insertmacro WriteRegDWORD2
|
||||
|
@ -787,6 +788,9 @@ FunctionEnd
|
|||
# Initialization Functions
|
||||
|
||||
Function .onInit
|
||||
StrCpy $LANGUAGE 0
|
||||
${SetBrandNameVars} "$EXEDIR\localized\distribution\setup.ini"
|
||||
|
||||
${InstallOnInitCommon} "$(WARN_UNSUPPORTED_MSG)"
|
||||
|
||||
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "options.ini"
|
||||
|
@ -797,8 +801,6 @@ Function .onInit
|
|||
!insertmacro createComponentsINI
|
||||
!insertmacro createShortcutsINI
|
||||
|
||||
StrCpy $LANGUAGE 0
|
||||
|
||||
; There must always be nonlocalized and localized directories.
|
||||
${GetSize} "$EXEDIR\nonlocalized\" "/S=0K" $R5 $R7 $R8
|
||||
${GetSize} "$EXEDIR\localized\" "/S=0K" $R6 $R7 $R8
|
||||
|
|
|
@ -121,6 +121,7 @@ VIAddVersionKey "FileDescription" "${BrandShortName} Helper"
|
|||
!insertmacro un.RegCleanUninstall
|
||||
!insertmacro un.RegCleanProtocolHandler
|
||||
!insertmacro un.RemoveQuotesFromPath
|
||||
!insertmacro un.SetBrandNameVars
|
||||
|
||||
!include shared.nsh
|
||||
|
||||
|
@ -466,7 +467,9 @@ Function un.onInit
|
|||
${Unless} ${FileExists} "$INSTDIR\${FileMainEXE}"
|
||||
Abort
|
||||
${EndUnless}
|
||||
|
||||
StrCpy $LANGUAGE 0
|
||||
${un.SetBrandNameVars} "$INSTDIR\distribution\setup.ini"
|
||||
|
||||
; Initialize $hHeaderBitmap to prevent redundant changing of the bitmap if
|
||||
; the user clicks the back button
|
||||
|
|
|
@ -193,6 +193,12 @@ include $(call EXPAND_LOCALE_SRCDIR,toolkit/locales)/installer/windows/charset.m
|
|||
|
||||
repackage-win32-installer: WIN32_INSTALLER_OUT=$(_ABS_DIST)/install/sea/$(PKG_BASENAME).installer.exe
|
||||
repackage-win32-installer: $(WIN32_INSTALLER_IN) $(SUBMAKEFILES)
|
||||
ifneq (en-US,$(AB_CD))
|
||||
@echo "Comparing $(AB_CD) to en-US installer locale files"
|
||||
@$(PERL) $(topsrcdir)/toolkit/locales/compare-locales.pl $(srcdir)/en-US/installer $(LOCALE_SRCDIR)/installer
|
||||
@echo "Verifying $(AB_CD) installer variable usage"
|
||||
@$(PERL) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/check-locales.pl $(LOCALE_SRCDIR)/installer
|
||||
endif
|
||||
@echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)."
|
||||
ifdef MOZ_BRANDING_DIRECTORY
|
||||
$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY) export
|
||||
|
|
|
@ -41,67 +41,68 @@
|
|||
# Accesskeys are defined by prefixing the letter that is to be used for the
|
||||
# accesskey with an ampersand (e.g. &).
|
||||
|
||||
# Do not replace ${BrandShortName} or ${BrandFullName} with a custom string.
|
||||
# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
|
||||
# custom string and always use the same one as used by the en-US files.
|
||||
# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
|
||||
# for double ampersand) and prevents the letter following the ampersand from
|
||||
# being used as an accesskey.
|
||||
|
||||
# You can use \n to create a newline in the string but only when the string
|
||||
# from en-US contains a \n.
|
||||
|
||||
REG_APP_DESC=${BrandShortName} delivers safe, easy web browsing. A familiar user interface, enhanced security features including protection from online identity theft, and integrated search let you get the most out of the web.
|
||||
REG_APP_DESC=$BrandShortName delivers safe, easy web browsing. A familiar user interface, enhanced security features including protection from online identity theft, and integrated search let you get the most out of the web.
|
||||
OPTIONAL_COMPONENTS_TITLE=Choose Optional Components
|
||||
OPTIONAL_COMPONENTS_SUBTITLE=Choose which features of $(^NameDA) you want to install.
|
||||
OPTIONAL_COMPONENTS_SUBTITLE=Choose which features of $BrandShortName you want to install.
|
||||
OPTIONAL_COMPONENTS_LABEL=Optional Components:
|
||||
APP_DESC=Required files for the ${BrandShortName} application
|
||||
DOMI_TITLE=DOM Inspector
|
||||
DOMI_TEXT=Inspects the structure and properties of a window and its contents.
|
||||
QFA_TITLE=Quality Feedback Agent
|
||||
QFA_TEXT=Sends information about program crashes to Mozilla.
|
||||
CONTEXT_OPTIONS=${BrandShortName} &Options
|
||||
CONTEXT_SAFE_MODE=${BrandShortName} &Safe Mode
|
||||
CONTEXT_OPTIONS=$BrandShortName &Options
|
||||
CONTEXT_SAFE_MODE=$BrandShortName &Safe Mode
|
||||
SAFE_MODE=Safe Mode
|
||||
OPTIONS_PAGE_TITLE=Setup Type
|
||||
OPTIONS_PAGE_SUBTITLE=Choose setup options
|
||||
SHORTCUTS_PAGE_TITLE=Set Up Shortcuts
|
||||
SHORTCUTS_PAGE_SUBTITLE=Create Program Icons
|
||||
SUMMARY_PAGE_TITLE=Summary
|
||||
SUMMARY_PAGE_SUBTITLE=Ready to start installing ${BrandShortName}
|
||||
SUMMARY_INSTALLED_TO=${BrandShortName} will be installed to the following location:
|
||||
SUMMARY_PAGE_SUBTITLE=Ready to start installing $BrandShortName
|
||||
SUMMARY_INSTALLED_TO=$BrandShortName will be installed to the following location:
|
||||
SUMMARY_CLICK=Click Install to continue.
|
||||
SURVEY_TEXT=&Tell us what you thought of ${BrandShortName}
|
||||
LAUNCH_TEXT=&Launch ${BrandFullName} now
|
||||
WARN_APP_RUNNING_INSTALL=${BrandFullName} must be closed to proceed with the installation.\n\nClick "OK" to exit ${BrandFullName} automatically and continue.
|
||||
CREATE_ICONS_DESC=Create icons for ${BrandShortName}:
|
||||
SURVEY_TEXT=&Tell us what you thought of $BrandShortName
|
||||
LAUNCH_TEXT=&Launch $BrandShortName now
|
||||
WARN_APP_RUNNING_INSTALL=$BrandShortName must be closed to proceed with the installation.\n\nClick "OK" to exit $BrandShortName automatically and continue.
|
||||
CREATE_ICONS_DESC=Create icons for $BrandShortName:
|
||||
ICONS_DESKTOP=On my &Desktop
|
||||
ICONS_STARTMENU=In my &Start Menu Programs folder
|
||||
ICONS_QUICKLAUNCH=In my &Quick Launch bar
|
||||
WARN_MANUALLY_CLOSE_APP_UNINSTALL=${BrandFullName} must be closed to proceed with the uninstall.\n\nPlease close ${BrandFullName} to continue.
|
||||
WARN_MANUALLY_CLOSE_APP_LAUNCH=${BrandFullName} is already running.\n\nPlease close ${BrandFullName} prior to launching the version you have just installed.
|
||||
WARN_MANUALLY_CLOSE_APP_UNINSTALL=$BrandShortName must be closed to proceed with the uninstall.\n\nPlease close $BrandShortName to continue.
|
||||
WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName is already running.\n\nPlease close $BrandShortName prior to launching the version you have just installed.
|
||||
WARN_WRITE_ACCESS=You don't have access to write to the installation directory.\n\nClick OK to select a different directory.
|
||||
WARN_DISK_SPACE=You don't have sufficient disk space to install to this location.\n\nClick OK to select a different location.
|
||||
WARN_UNSUPPORTED_MSG=Sorry, ${BrandShortName} can't be installed. This version of ${BrandShortName} requires ${MinUnsupportedVer} or newer.
|
||||
WARN_RESTART_REQUIRED_UNINSTALL=Your computer must be restarted to complete a previous uninstall of ${BrandShortName}. Do you want to reboot now?
|
||||
WARN_UNSUPPORTED_MSG=Sorry, $BrandShortName can't be installed. This version of $BrandShortName requires ${MinUnsupportedVer} or newer.
|
||||
WARN_RESTART_REQUIRED_UNINSTALL=Your computer must be restarted to complete a previous uninstall of $BrandShortName. Do you want to reboot now?
|
||||
ERROR_CREATE_DIRECTORY=Error creating directory:\n\n$0\n\nClick Cancel to stop the installation or\nRetry to try again.
|
||||
|
||||
UN_CONFIRM_PAGE_TITLE=Uninstall ${BrandFullName}
|
||||
UN_CONFIRM_PAGE_SUBTITLE=Remove ${BrandFullName} from your computer.
|
||||
UN_CONFIRM_UNINSTALLED_FROM=${BrandShortName} will be uninstalled from the following location:
|
||||
UN_CONFIRM_PAGE_TITLE=Uninstall $BrandFullName
|
||||
UN_CONFIRM_PAGE_SUBTITLE=Remove $BrandFullName from your computer.
|
||||
UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName will be uninstalled from the following location:
|
||||
UN_CONFIRM_CLICK=Click Uninstall to continue.
|
||||
UN_REMOVE_PROFILES=&Remove my ${BrandShortName} personal data and customizations
|
||||
UN_REMOVE_PROFILES_DESC=This will permanently remove your bookmarks, saved passwords, cookies and customizations. You may wish to keep this information if you plan on installing another version of ${BrandShortName} in the future.
|
||||
UN_REMOVE_PROFILES=&Remove my $BrandShortName personal data and customizations
|
||||
UN_REMOVE_PROFILES_DESC=This will permanently remove your bookmarks, saved passwords, cookies and customizations. You may wish to keep this information if you plan on installing another version of $BrandShortName in the future.
|
||||
|
||||
STATUS_INSTALL_APP=Installing ${BrandShortName}...
|
||||
STATUS_INSTALL_APP=Installing $BrandShortName...
|
||||
STATUS_INSTALL_LANG=Installing Language Files (${AB_CD})...
|
||||
STATUS_INSTALL_OPTIONAL=Installing Optional Components...
|
||||
STATUS_UNINSTALL_MAIN=Uninstalling ${BrandShortName}...
|
||||
STATUS_UNINSTALL_MAIN=Uninstalling $BrandShortName...
|
||||
STATUS_CLEANUP=A Little Housekeeping...
|
||||
|
||||
# _DESC strings support approximately 65 characters per line.
|
||||
# One line
|
||||
OPTIONS_SUMMARY=Choose the type of setup you prefer, then click Next.
|
||||
# One line
|
||||
OPTION_STANDARD_DESC=${BrandShortName} will be installed with the most common options.
|
||||
OPTION_STANDARD_DESC=$BrandShortName will be installed with the most common options.
|
||||
OPTION_STANDARD_RADIO=&Standard
|
||||
# One line
|
||||
OPTION_COMPLETE_DESC=${BrandShortName} will be installed with all available options.
|
||||
OPTION_COMPLETE_DESC=$BrandShortName will be installed with all available options.
|
||||
OPTION_COMPLETE_RADIO=C&omplete
|
||||
# Two lines
|
||||
OPTION_CUSTOM_DESC=You may choose individual options to be installed. Recommended for experienced users.
|
||||
|
|
|
@ -44,54 +44,55 @@
|
|||
# Accesskeys are defined by prefixing the letter that is to be used for the
|
||||
# accesskey with an ampersand (e.g. &).
|
||||
|
||||
# Do not replace $(^NameDA) or $(^Name) with a custom string.
|
||||
|
||||
# Do not change $(^NameDA) to $(^Name) or $(^Name) to $(^NameDA). NameDA allows
|
||||
# Name to contain an ampersand (e.g. DA stands for double ampersand) and
|
||||
# prevents the letter following the ampersand being used as an accesskey.
|
||||
# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
|
||||
# custom string and always use the same one as used by the en-US files.
|
||||
# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
|
||||
# for double ampersand) and prevents the letter following the ampersand from
|
||||
# being used as an accesskey.
|
||||
|
||||
# You can use \n to create a newline in the string but only when the string
|
||||
# from en-US contains a \n.
|
||||
MUI_TEXT_WELCOME_INFO_TITLE=Welcome to the $(^NameDA) Setup Wizard
|
||||
MUI_TEXT_WELCOME_INFO_TEXT=This wizard will guide you through the installation of $(^NameDA).\n\nIt is recommended that you close all other applications before starting Setup. This will make it possible to update relevant system files without having to reboot your computer.\n\n$_CLICK
|
||||
|
||||
MUI_TEXT_WELCOME_INFO_TITLE=Welcome to the $BrandFullNameDA Setup Wizard
|
||||
MUI_TEXT_WELCOME_INFO_TEXT=This wizard will guide you through the installation of $BrandFullNameDA.\n\nIt is recommended that you close all other applications before starting Setup. This will make it possible to update relevant system files without having to reboot your computer.\n\n$_CLICK
|
||||
MUI_TEXT_LICENSE_TITLE=License Agreement
|
||||
MUI_TEXT_LICENSE_SUBTITLE=Please review the license terms before installing $(^NameDA).
|
||||
MUI_TEXT_LICENSE_SUBTITLE=Please review the license terms before installing $BrandFullNameDA.
|
||||
MUI_INNERTEXT_LICENSE_TOP=Press Page Down to see the rest of the agreement.
|
||||
MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX=If you accept the terms of the agreement, click the check box below. You must accept the agreement to install $(^NameDA). $_CLICK
|
||||
MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS=If you accept the terms of the agreement, select the first option below. You must accept the agreement to install $(^NameDA). $_CLICK
|
||||
MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX=If you accept the terms of the agreement, click the check box below. You must accept the agreement to install $BrandFullNameDA. $_CLICK
|
||||
MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS=If you accept the terms of the agreement, select the first option below. You must accept the agreement to install $BrandFullNameDA. $_CLICK
|
||||
MUI_TEXT_COMPONENTS_TITLE=Choose Components
|
||||
MUI_TEXT_COMPONENTS_SUBTITLE=Choose which features of $(^NameDA) you want to install.
|
||||
MUI_TEXT_COMPONENTS_SUBTITLE=Choose which features of $BrandFullNameDA you want to install.
|
||||
MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Description
|
||||
MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Position your mouse over a component to see its description.
|
||||
MUI_TEXT_DIRECTORY_TITLE=Choose Install Location
|
||||
MUI_TEXT_DIRECTORY_SUBTITLE=Choose the folder in which to install $(^NameDA).
|
||||
MUI_TEXT_DIRECTORY_SUBTITLE=Choose the folder in which to install $BrandFullNameDA.
|
||||
MUI_TEXT_INSTALLING_TITLE=Installing
|
||||
MUI_TEXT_INSTALLING_SUBTITLE=Please wait while $(^NameDA) is being installed.
|
||||
MUI_TEXT_INSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being installed.
|
||||
MUI_TEXT_FINISH_TITLE=Installation Complete
|
||||
MUI_TEXT_FINISH_SUBTITLE=Setup was completed successfully.
|
||||
MUI_TEXT_ABORT_TITLE=Installation Aborted
|
||||
MUI_TEXT_ABORT_SUBTITLE=Setup was not completed successfully.
|
||||
MUI_BUTTONTEXT_FINISH=&Finish
|
||||
MUI_TEXT_FINISH_INFO_TITLE=Completing the $(^NameDA) Setup Wizard
|
||||
MUI_TEXT_FINISH_INFO_TEXT=$(^NameDA) has been installed on your computer.\n\nClick Finish to close this wizard.
|
||||
MUI_TEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the installation of $(^NameDA). Do you want to reboot now?
|
||||
MUI_TEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Setup Wizard
|
||||
MUI_TEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been installed on your computer.\n\nClick Finish to close this wizard.
|
||||
MUI_TEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the installation of $BrandFullNameDA. Do you want to reboot now?
|
||||
MUI_TEXT_FINISH_REBOOTNOW=Reboot now
|
||||
MUI_TEXT_FINISH_REBOOTLATER=I want to manually reboot later
|
||||
MUI_TEXT_STARTMENU_TITLE=Choose Start Menu Folder
|
||||
MUI_TEXT_STARTMENU_SUBTITLE=Choose a Start Menu folder for the $(^NameDA) shortcuts.
|
||||
MUI_TEXT_STARTMENU_SUBTITLE=Choose a Start Menu folder for the $BrandFullNameDA shortcuts.
|
||||
MUI_INNERTEXT_STARTMENU_TOP=Select the Start Menu folder in which you would like to create the program's shortcuts. You can also enter a name to create a new folder.
|
||||
MUI_TEXT_ABORTWARNING=Are you sure you want to quit $(^Name) Setup?
|
||||
MUI_UNTEXT_WELCOME_INFO_TITLE=Welcome to the $(^NameDA) Uninstall Wizard
|
||||
MUI_UNTEXT_WELCOME_INFO_TEXT=This wizard will guide you through the uninstallation of $(^NameDA).\n\nBefore starting the uninstallation, make sure $(^NameDA) is not running.\n\n$_CLICK
|
||||
MUI_UNTEXT_CONFIRM_TITLE=Uninstall $(^NameDA)
|
||||
MUI_UNTEXT_CONFIRM_SUBTITLE=Remove $(^NameDA) from your computer.
|
||||
MUI_TEXT_ABORTWARNING=Are you sure you want to quit $BrandFullName Setup?
|
||||
MUI_UNTEXT_WELCOME_INFO_TITLE=Welcome to the $BrandFullNameDA Uninstall Wizard
|
||||
MUI_UNTEXT_WELCOME_INFO_TEXT=This wizard will guide you through the uninstallation of $BrandFullNameDA.\n\nBefore starting the uninstallation, make sure $BrandFullNameDA is not running.\n\n$_CLICK
|
||||
MUI_UNTEXT_CONFIRM_TITLE=Uninstall $BrandFullNameDA
|
||||
MUI_UNTEXT_CONFIRM_SUBTITLE=Remove $BrandFullNameDA from your computer.
|
||||
MUI_UNTEXT_UNINSTALLING_TITLE=Uninstalling
|
||||
MUI_UNTEXT_UNINSTALLING_SUBTITLE=Please wait while $(^NameDA) is being uninstalled.
|
||||
MUI_UNTEXT_UNINSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being uninstalled.
|
||||
MUI_UNTEXT_FINISH_TITLE=Uninstallation Complete
|
||||
MUI_UNTEXT_FINISH_SUBTITLE=Uninstall was completed successfully.
|
||||
MUI_UNTEXT_ABORT_TITLE=Uninstallation Aborted
|
||||
MUI_UNTEXT_ABORT_SUBTITLE=Uninstall was not completed successfully.
|
||||
MUI_UNTEXT_FINISH_INFO_TITLE=Completing the $(^NameDA) Uninstall Wizard
|
||||
MUI_UNTEXT_FINISH_INFO_TEXT=$(^NameDA) has been uninstalled from your computer.\n\nClick Finish to close this wizard.
|
||||
MUI_UNTEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the uninstallation of $(^NameDA). Do you want to reboot now?
|
||||
MUI_UNTEXT_ABORTWARNING=Are you sure you want to quit $(^Name) Uninstall?
|
||||
MUI_UNTEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Uninstall Wizard
|
||||
MUI_UNTEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been uninstalled from your computer.\n\nClick Finish to close this wizard.
|
||||
MUI_UNTEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the uninstallation of $BrandFullNameDA. Do you want to reboot now?
|
||||
MUI_UNTEXT_ABORTWARNING=Are you sure you want to quit $BrandFullName Uninstall?
|
||||
|
|
|
@ -41,11 +41,11 @@
|
|||
# Accesskeys are defined by prefixing the letter that is to be used for the
|
||||
# accesskey with an ampersand (e.g. &).
|
||||
|
||||
# Do not replace $(^NameDA) or $(^Name) with a custom string.
|
||||
|
||||
# Do not change $(^NameDA) to $(^Name) or $(^Name) to $(^NameDA). NameDA allows
|
||||
# Name to contain an ampersand (e.g. DA stands for double ampersand) and
|
||||
# prevents the letter following the ampersand being used as an accesskey.
|
||||
# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
|
||||
# custom string and always use the same one as used by the en-US files.
|
||||
# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
|
||||
# for double ampersand) and prevents the letter following the ampersand from
|
||||
# being used as an accesskey.
|
||||
|
||||
# You can use \n to create a newline in the string but only when the string
|
||||
# from en-US contains a \n.
|
||||
|
@ -55,8 +55,8 @@
|
|||
# and end of a strong enclose the add and additional double quote to the
|
||||
# beginning and end of the string (e.g. ""This will include quotes"").
|
||||
|
||||
SetupCaption=$(^Name) Setup
|
||||
UninstallCaption=$(^Name) Uninstall
|
||||
SetupCaption=$BrandFullName Setup
|
||||
UninstallCaption=$BrandFullName Uninstall
|
||||
BackBtn=< &Back
|
||||
NextBtn=&Next >
|
||||
AcceptBtn=I &accept the terms in the License Agreement
|
||||
|
@ -71,15 +71,15 @@ ClickNext=Click Next to continue.
|
|||
ClickInstall=Click Install to start the installation.
|
||||
ClickUninstall=Click Uninstall to start the uninstallation.
|
||||
Completed=Completed
|
||||
LicenseTextRB=Please review the license agreement before installing $(^NameDA). If you accept all terms of the agreement, select the first option below. $_CLICK
|
||||
LicenseTextRB=Please review the license agreement before installing $BrandFullNameDA. If you accept all terms of the agreement, select the first option below. $_CLICK
|
||||
ComponentsText=Check the components you want to install and uncheck the components you don't want to install. $_CLICK
|
||||
ComponentsSubText2_NoInstTypes=Select components to install:
|
||||
DirText=Setup will install $(^NameDA) in the following folder. To install in a different folder, click Browse and select another folder. $_CLICK
|
||||
DirText=Setup will install $BrandFullNameDA in the following folder. To install in a different folder, click Browse and select another folder. $_CLICK
|
||||
DirSubText=Destination Folder
|
||||
DirBrowseText=Select the folder to install $(^NameDA) in:
|
||||
DirBrowseText=Select the folder to install $BrandFullNameDA in:
|
||||
SpaceAvailable="Space available: "
|
||||
SpaceRequired="Space required: "
|
||||
UninstallingText=$(^NameDA) will be uninstalled from the following folder. $_CLICK
|
||||
UninstallingText=$BrandFullNameDA will be uninstalled from the following folder. $_CLICK
|
||||
UninstallingSubText=Uninstalling from:
|
||||
FileError=Error opening file for writing: \r\n\r\n$0\r\n\r\nClick Abort to stop the installation,\r\nRetry to try again, or\r\nIgnore to skip this file.
|
||||
FileError_NoIgnore=Error opening file for writing: \r\n\r\n$0\r\n\r\nClick Retry to try again, or\r\nCancel to stop the installation.
|
||||
|
|
|
@ -0,0 +1,115 @@
|
|||
#!/usr/bin/perl -w
|
||||
# ***** BEGIN LICENSE BLOCK *****
|
||||
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public License Version
|
||||
# 1.1 (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
# http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
# for the specific language governing rights and limitations under the
|
||||
# License.
|
||||
#
|
||||
# The Original Code is Mozilla Installer locale verification.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Mozilla Foundation
|
||||
# Portions created by the Initial Developer are Copyright (C) 2006
|
||||
# the Initial Developer. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Robert Strong <robert.bugzilla@gmail.com>
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the terms of
|
||||
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
# of those above. If you wish to allow use of your version of this file only
|
||||
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
# use your version of this file under the terms of the MPL, indicate your
|
||||
# decision by deleting the provisions above and replace them with the notice
|
||||
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
# the provisions above, a recipient may use your version of this file under
|
||||
# the terms of any one of the MPL, the GPL or the LGPL.
|
||||
#
|
||||
# ***** END LICENSE BLOCK *****
|
||||
|
||||
# Note: this was written using compare-locales.pl as a template.
|
||||
|
||||
$failure = 0;
|
||||
|
||||
sub readProperties
|
||||
{
|
||||
my ($file) = @_;
|
||||
|
||||
open PROPS, "<$file" || die ("Couldn't open file $file");
|
||||
|
||||
local $/ = undef;
|
||||
my $contents = <PROPS>;
|
||||
close PROPS;
|
||||
|
||||
$contents =~ s/\\$$//gm;
|
||||
|
||||
return $contents =~ /^\s*([^#!\r\n]*)$/gm;
|
||||
}
|
||||
|
||||
sub checkProperties
|
||||
{
|
||||
my ($path) = @_;
|
||||
|
||||
my @invalid;
|
||||
|
||||
my @entities = readProperties("$gSourceDir/$path");
|
||||
|
||||
foreach my $entity (@entities) {
|
||||
if ($entity =~ m|.*(\$\(\^Name\)).*| ||
|
||||
$entity =~ m|.*(\$\(\^NameDA\)).*| ||
|
||||
$entity =~ m|.*(\$\{BrandFullName\}).*| ||
|
||||
$entity =~ m|.*(\$\{BrandShortName\}).*|) {
|
||||
push @invalid, "$entity\n *** incorrect variable usage please refer to en-US";
|
||||
}
|
||||
}
|
||||
|
||||
if (@invalid) {
|
||||
$failure = 1;
|
||||
print "Properties in $path using invalid values:\n";
|
||||
if (@invalid) {
|
||||
print " In $gSourceDir: (change these in your localization)\n";
|
||||
map { print " $_\n"; } @invalid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub checkDir
|
||||
{
|
||||
my ($path) = @_;
|
||||
|
||||
my (@entries);
|
||||
|
||||
opendir(DIR, "$gSourceDir/$path") ||
|
||||
die ("Couldn't list $gSourceDir/$path");
|
||||
@entries = grep(!(/^(\.|CVS)/ || /~$/), readdir(DIR));
|
||||
closedir(DIR);
|
||||
|
||||
foreach my $file (@entries) {
|
||||
if (-d "$gSourceDir/$path/$file") {
|
||||
checkDir("$path/$file");
|
||||
} else {
|
||||
if ($file =~ /\.properties$/) {
|
||||
checkProperties("$path/$file");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
local ($gSourceDir) = @ARGV;
|
||||
($gSourceDir) || die("Specify one directory to verify");
|
||||
|
||||
if (!-d $gSourceDir) {
|
||||
die("Not a directory");
|
||||
}
|
||||
|
||||
checkDir(".");
|
||||
|
||||
exit $failure;
|
|
@ -324,47 +324,24 @@
|
|||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 1" Top "5"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 1" Bottom "15"
|
||||
|
||||
StrCpy $R1 2
|
||||
${If} ${FileExists} "$EXEDIR\optional\extensions\inspector@mozilla.org"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Type "checkbox"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Text "$(DOMI_TITLE)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Left "15"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Top "20"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Bottom "30"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" State "1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Flags "GROUP"
|
||||
IntOp $R1 $R1 + 1
|
||||
${EndIf}
|
||||
|
||||
${If} ${FileExists} "$EXEDIR\optional\extensions\talkback@mozilla.org"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Type "checkbox"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Text "$(QFA_TITLE)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Left "15"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Top "55"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Bottom "65"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" State "1"
|
||||
IntOp $R1 $R1 + 1
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Type "checkbox"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Text "$(DOMI_TITLE)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Left "15"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Top "20"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Bottom "30"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" State "1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 2" Flags "GROUP"
|
||||
${EndIf}
|
||||
|
||||
${If} ${FileExists} "$EXEDIR\optional\extensions\inspector@mozilla.org"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Type "label"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Text "$(DOMI_TEXT)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Left "30"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Top "32"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Bottom "52"
|
||||
IntOp $R1 $R1 + 1
|
||||
${EndIf}
|
||||
|
||||
${If} ${FileExists} "$EXEDIR\optional\extensions\talkback@mozilla.org"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Type "label"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Text "$(QFA_TEXT)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Left "30"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Top "67"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field $R1" Bottom "87"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Type "label"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Text "$(DOMI_TEXT)"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Left "30"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Right "-1"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Top "32"
|
||||
WriteINIStr "$PLUGINSDIR\components.ini" "Field 3" Bottom "52"
|
||||
${EndIf}
|
||||
!macroend
|
||||
|
||||
|
@ -1377,6 +1354,7 @@
|
|||
StrCmp "$R5" "" +2 +1
|
||||
WriteRegStr SHCTX "$R4\shell\open\command" "" "$R5"
|
||||
|
||||
!ifdef DDEApplication
|
||||
StrCmp "$R9" "true" +1 +11
|
||||
WriteRegStr SHCTX "$R4\shell\open\ddeexec" "" "$\"%1$\",,0,0,,,,"
|
||||
WriteRegStr SHCTX "$R4\shell\open\ddeexec" "NoActivateHandler" ""
|
||||
|
@ -1388,6 +1366,7 @@
|
|||
; default handler and if this key exists IE's shell integration breaks.
|
||||
DeleteRegKey HKLM "$R4\shell\open\ddeexec\ifexec"
|
||||
DeleteRegKey HKCU "$R4\shell\open\ddeexec\ifexec"
|
||||
!endif
|
||||
|
||||
ClearErrors
|
||||
|
||||
|
@ -3662,6 +3641,113 @@
|
|||
################################################################################
|
||||
# Macros for custom branding
|
||||
|
||||
/**
|
||||
* Sets BrandFullName and / or BrandShortName to values provided in the specified
|
||||
* ini file and defaults to BrandShortName and BrandFullName as defined in
|
||||
* branding.nsi when the associated ini file entry is not specified.
|
||||
*
|
||||
* ini file format:
|
||||
* [Branding]
|
||||
* BrandFullName=Custom Full Name
|
||||
* BrandShortName=Custom Short Name
|
||||
*
|
||||
* @param _PATH_TO_INI
|
||||
* Path to the ini file.
|
||||
*
|
||||
* $R6 = return value from ReadINIStr
|
||||
* $R7 = stores BrandShortName
|
||||
* $R8 = stores BrandFullName
|
||||
* $R9 = _PATH_TO_INI
|
||||
*/
|
||||
!macro SetBrandNameVars
|
||||
|
||||
!ifndef ${_MOZFUNC_UN}SetBrandNameVars
|
||||
!define _MOZFUNC_UN_TMP ${_MOZFUNC_UN}
|
||||
!insertmacro ${_MOZFUNC_UN_TMP}WordReplace
|
||||
!undef _MOZFUNC_UN
|
||||
!define _MOZFUNC_UN ${_MOZFUNC_UN_TMP}
|
||||
!undef _MOZFUNC_UN_TMP
|
||||
|
||||
; Prevent declaring vars twice when the SetBrandNameVars macro is
|
||||
; inserted into both the installer and uninstaller.
|
||||
!ifndef SetBrandNameVars
|
||||
Var BrandFullName
|
||||
Var BrandFullNameDA
|
||||
Var BrandShortName
|
||||
!endif
|
||||
|
||||
!verbose push
|
||||
!verbose ${_MOZFUNC_VERBOSE}
|
||||
!define ${_MOZFUNC_UN}SetBrandNameVars "!insertmacro ${_MOZFUNC_UN}SetBrandNameVarsCall"
|
||||
|
||||
Function ${_MOZFUNC_UN}SetBrandNameVars
|
||||
Exch $R9
|
||||
Push $R8
|
||||
Push $R7
|
||||
Push $R6
|
||||
|
||||
StrCpy $R8 "${BrandFullName}"
|
||||
StrCpy $R7 "${BrandShortName}"
|
||||
|
||||
IfFileExists "$R9" +1 finish
|
||||
|
||||
ClearErrors
|
||||
ReadINIStr $R6 $R9 "Branding" "BrandFullName"
|
||||
IfErrors +2 +1
|
||||
StrCpy $R8 "$R6"
|
||||
|
||||
ClearErrors
|
||||
ReadINIStr $R6 $R9 "Branding" "BrandShortName"
|
||||
IfErrors +2 +1
|
||||
StrCpy $R7 "$R6"
|
||||
|
||||
finish:
|
||||
StrCpy $BrandFullName "$R8"
|
||||
${${_MOZFUNC_UN}WordReplace} "$R8" "&" "&&" "+" $R8
|
||||
StrCpy $BrandFullNameDA "$R8"
|
||||
StrCpy $BrandShortName "$R7"
|
||||
|
||||
Pop $R6
|
||||
Pop $R7
|
||||
Pop $R8
|
||||
Exch $R9
|
||||
FunctionEnd
|
||||
|
||||
!verbose pop
|
||||
!endif
|
||||
!macroend
|
||||
|
||||
!macro SetBrandNameVarsCall _PATH_TO_INI
|
||||
!verbose push
|
||||
!verbose ${_MOZFUNC_VERBOSE}
|
||||
Push "${_PATH_TO_INI}"
|
||||
Call SetBrandNameVars
|
||||
!verbose pop
|
||||
!macroend
|
||||
|
||||
!macro un.SetBrandNameVarsCall _PATH_TO_INI
|
||||
!verbose push
|
||||
!verbose ${_MOZFUNC_VERBOSE}
|
||||
Push "${_PATH_TO_INI}"
|
||||
Call un.SetBrandNameVars
|
||||
!verbose pop
|
||||
!macroend
|
||||
|
||||
!macro un.SetBrandNameVars
|
||||
!ifndef un.SetBrandNameVars
|
||||
!verbose push
|
||||
!verbose ${_MOZFUNC_VERBOSE}
|
||||
!undef _MOZFUNC_UN
|
||||
!define _MOZFUNC_UN "un."
|
||||
|
||||
!insertmacro SetBrandNameVars
|
||||
|
||||
!undef _MOZFUNC_UN
|
||||
!define _MOZFUNC_UN
|
||||
!verbose pop
|
||||
!endif
|
||||
!macroend
|
||||
|
||||
/**
|
||||
* Replaces the wizard's header image with the one specified.
|
||||
*
|
||||
|
|
Загрузка…
Ссылка в новой задаче