From fa50854e584d256ff8ccceb211d0661d80da0032 Mon Sep 17 00:00:00 2001 From: develar Date: Fri, 7 Apr 2017 08:25:38 +0200 Subject: [PATCH] WIP(nsis): translate custom strings --- .idea/dictionaries/develar.xml | 1 + .travis.yml | 2 +- .../templates/nsis/messages.yml | 28 +++++++++++++++---- .../templates/nsis/multiUserUi.nsh | 16 +++++------ test/out/linux/__snapshots__/debTest.js.snap | 4 +-- test/src/helpers/packTester.ts | 3 +- 6 files changed, 37 insertions(+), 17 deletions(-) diff --git a/.idea/dictionaries/develar.xml b/.idea/dictionaries/develar.xml index a6fa139167c..2f9e6a4e9f1 100644 --- a/.idea/dictionaries/develar.xml +++ b/.idea/dictionaries/develar.xml @@ -210,6 +210,7 @@ ulfo unassociate unicon + uninstallation unmounting unorm unpage diff --git a/.travis.yml b/.travis.yml index ba4d9e47a0b..5a90595e86d 100755 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ -osx_image: xcode8.3 +#osx_image: xcode8.3 matrix: include: diff --git a/packages/electron-builder/templates/nsis/messages.yml b/packages/electron-builder/templates/nsis/messages.yml index cdf82c75b45..c58c6babe3a 100644 --- a/packages/electron-builder/templates/nsis/messages.yml +++ b/packages/electron-builder/templates/nsis/messages.yml @@ -1,9 +1,27 @@ win7Required: - en: "Windows 7 and above is required" - ru: "Требуется Windows 7 и выше" + en: Windows 7 and above is required + ru: Требуется Windows 7 и выше x64WinRequired: - en: "64-bit Windows is required" - ru: "Требуется Windows 64-bit" + en: 64-bit Windows is required + ru: Требуется Windows 64-bit appRunning: en: "${PRODUCT_NAME} is running.\nClick OK to close it." - ru: "Приложение ${PRODUCT_NAME} уже запущено.\nНажмите OK для закрытия." \ No newline at end of file + ru: "Приложение ${PRODUCT_NAME} уже запущено.\nНажмите OK для закрытия." +chooseInstallationOptions: + en: Choose Installation Options + ru: Выберите опции установки +chooseUninstallationOptions: + en: Choose Uninstallation Options + ru: Выберите опции удаления +freshInstallForAll: + en: Fresh install for all users. + ru: Новая установка для всех пользователей. +freshInstallForCurrent: + en: Fresh install for current user only. + ru: Новая установка только для текущего пользователя. +onlyForMe: + en: Only for &me + ru: Только для &меня +forAll: + en: Anyone who uses this computer (&all users) + ru: Для &всех пользователей данного компьютера \ No newline at end of file diff --git a/packages/electron-builder/templates/nsis/multiUserUi.nsh b/packages/electron-builder/templates/nsis/multiUserUi.nsh index 0beb06b89a9..b1067f88567 100755 --- a/packages/electron-builder/templates/nsis/multiUserUi.nsh +++ b/packages/electron-builder/templates/nsis/multiUserUi.nsh @@ -77,9 +77,9 @@ Var RadioButtonLabel1 Abort ${endif} - !insertmacro MUI_HEADER_TEXT "Choose Uninstallation Options" "Which installation should be removed?" + !insertmacro MUI_HEADER_TEXT "$(chooseUninstallationOptions)" "Which installation should be removed?" !else - !insertmacro MUI_HEADER_TEXT "Choose Installation Options" "Who should this application be installed for?" + !insertmacro MUI_HEADER_TEXT "$(chooseInstallationOptions)" "Who should this application be installed for?" !endif !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE @@ -88,12 +88,12 @@ Var RadioButtonLabel1 !ifndef BUILD_UNINSTALLER ${NSD_CreateLabel} 0u 0u 300u 20u "Please select whether you wish to make this software available to all users or just yourself" - StrCpy $8 "Anyone who uses this computer (&all users)" - StrCpy $9 "Only for &me" + StrCpy $8 "$(forAll)" + StrCpy $9 "$(onlyForMe)" !else ${NSD_CreateLabel} 0u 0u 300u 20u "This software is installed both per-machine (all users) and per-user. $\r$\nWhich installation you wish to remove?" - StrCpy $8 "Anyone who uses this computer (&all users)" - StrCpy $9 "Only for &me" + StrCpy $8 "$(forAll)" + StrCpy $9 "$(onlyForMe)" !endif Pop $MultiUser.InstallModePage.Text @@ -198,7 +198,7 @@ Var RadioButtonLabel1 StrCpy $7 "There is a per-user installation. ($perUserInstallationFolder)$\r$\nWill uninstall." !endif ${else} - StrCpy $7 "Fresh install for current user only." + StrCpy $7 "$(freshInstallForCurrent)" ${endif} SendMessage $0 ${BCM_SETSHIELD} 0 0 ; hide SHIELD ${else} ; all users @@ -209,7 +209,7 @@ Var RadioButtonLabel1 StrCpy $7 "There is a per-machine installation. ($perMachineInstallationFolder)$\r$\nWill uninstall." !endif ${else} - StrCpy $7 "Fresh install for all users" + StrCpy $7 "$(freshInstallForAll)" ${endif} ${ifNot} ${UAC_IsAdmin} StrCpy $7 "$7 (will prompt for admin credentials)" diff --git a/test/out/linux/__snapshots__/debTest.js.snap b/test/out/linux/__snapshots__/debTest.js.snap index 7add6d18b39..6813ecc0b15 100644 --- a/test/out/linux/__snapshots__/debTest.js.snap +++ b/test/out/linux/__snapshots__/debTest.js.snap @@ -74,7 +74,7 @@ Array [ exports[`arm deb 3`] = ` Object { "Architecture": "armv7l", - "Depends": "gconf2, gconf-service, libnotify4, libappindicator1, libxtst6, libnss3", + "Depends": "gconf2, gconf-service, libnotify4, libappindicator1, libxtst6, libnss3, libxss1", "Description": " Test Application (test quite “ #378)", "Homepage": "http://foo.example.com", @@ -264,7 +264,7 @@ Array [ exports[`deb 3`] = ` Object { "Architecture": "amd64", - "Depends": "gconf2, gconf-service, libnotify4, libappindicator1, libxtst6, libnss3", + "Depends": "gconf2, gconf-service, libnotify4, libappindicator1, libxtst6, libnss3, libxss1", "Description": " Test Application (test quite “ #378)", "Homepage": "http://foo.example.com", diff --git a/test/src/helpers/packTester.ts b/test/src/helpers/packTester.ts index 303574aaca9..c50474377e6 100755 --- a/test/src/helpers/packTester.ts +++ b/test/src/helpers/packTester.ts @@ -254,11 +254,12 @@ function parseDebControl(info: string): any { async function checkMacResult(packager: Packager, packagerOptions: PackagerOptions, checkOptions: AssertPackOptions, packedAppDir: string) { const appInfo = packager.appInfo const info = parsePlist(await readFile(path.join(packedAppDir, "Contents", "Info.plist"), "utf8")) + expect(info).toMatchObject({ CFBundleDisplayName: appInfo.productName, CFBundleIdentifier: "org.electron-builder.testApp", LSApplicationCategoryType: "your.app.category.type", - CFBundleVersion: `${appInfo.version}.${(process.env.TRAVIS_BUILD_NUMBER || process.env.CIRCLE_BUILD_NUM)}` + CFBundleVersion: info.CFBundleVersion === "50" ? "50" : `${appInfo.version}.${(process.env.TRAVIS_BUILD_NUMBER || process.env.CIRCLE_BUILD_NUM)}` }) // checked manually, remove to avoid mismatch on CI server (where TRAVIS_BUILD_NUMBER is defined and different on each test run)