diff --git a/Engines/Wine/QuickScript/Installer Script/script.js b/Engines/Wine/QuickScript/Installer Script/script.js index 5294760e7b..3a156c9254 100644 --- a/Engines/Wine/QuickScript/Installer Script/script.js +++ b/Engines/Wine/QuickScript/Installer Script/script.js @@ -4,6 +4,8 @@ include("utils.functions.filesystem.extract"); include("utils.functions.filesystem.files"); include("engines.wine.verbs.luna"); +const operatingSystemFetcher = Bean("operatingSystemFetcher"); + class InstallerScript extends QuickScript { constructor() { super(); @@ -22,50 +24,58 @@ class InstallerScript extends QuickScript { setupWizard.presentation(this._name, this._editor, this._applicationHomepage, this._author); // get installation file from concrete InstallerScript implementation - var installationCommand = this._installationCommand(setupWizard); + const installationCommand = this._installationCommand(setupWizard); - var wine = new Wine() - .wizard(setupWizard); + const wine = new Wine().wizard(setupWizard); // let user select wine settings if desired if (this._wineUserSettings) { - var architectures = ["x86", "amd64"]; - var shownArchitectures = ["x86 (recommended)", "amd64"]; - var selectedArchitecture = setupWizard.menu(tr("Please select the wine architecture."), shownArchitectures, "x86 (recommended)"); + const architectures = ["x86", "amd64"]; + const selectedArchitecture = setupWizard.menu( + tr("Please select the wine architecture."), + ["x86 (recommended)", "amd64"], + "x86 (recommended)" + ); + this._wineArchitecture = architectures[selectedArchitecture.index]; - var distributions = wine.availableDistributions(this._wineArchitecture); - var shownDistributions = []; - for (var distributionIdx in distributions) { - if (distributions[distributionIdx] == "upstream") { - shownDistributions.push("upstream (recommended)"); - } - else { - shownDistributions.push(distributions[distributionIdx]); + const distributions = wine.availableDistributions(this._wineArchitecture); + const shownDistributions = distributions.map(distribution => { + if (distribution == "upstream") { + return "upstream (recommended)"; + } else { + return distribution; } - } - var selectedDistribution = setupWizard.menu(tr("Please select the wine distribution."), shownDistributions, "upstream (recommended)"); + }); + const selectedDistribution = setupWizard.menu( + tr("Please select the wine distribution."), + shownDistributions, + "upstream (recommended)" + ); this._wineDistribution = distributions[selectedDistribution.index]; - var operatingSystemFetcher = Bean("operatingSystemFetcher"); - var operatingSystem = operatingSystemFetcher.fetchCurrentOperationSystem().getWinePackage(); - var versions = wine.availableVersions(this._wineDistribution + "-" + operatingSystem + "-" + this._wineArchitecture); - var shownVersions = []; - for (var versionIdx in versions) { - if (versions[versionIdx] == LATEST_STABLE_VERSION) { - shownVersions.push(versions[versionIdx] + " (recommended)"); + const operatingSystem = operatingSystemFetcher.fetchCurrentOperationSystem().getWinePackage(); + const versions = wine.availableVersions( + `${this._wineDistribution}-${operatingSystem}-${this._wineArchitecture}` + ); + const shownVersions = versions.map(version => { + if (version == LATEST_STABLE_VERSION) { + return `${version} (recommended)`; + } else { + return version; } - else { - shownVersions.push(versions[versionIdx]); - } - } - var selectedVersion = setupWizard.menu(tr("Please select the wine version."), shownVersions, LATEST_STABLE_VERSION + " (recommended)"); + }); + const selectedVersion = setupWizard.menu( + tr("Please select the wine version."), + shownVersions, + LATEST_STABLE_VERSION + " (recommended)" + ); + this._wineVersion = versions[selectedVersion.index]; } // setup the prefix - wine.prefix(this._name, this._wineDistribution, this._wineArchitecture, this._wineVersion) - .luna(); + wine.prefix(this._name, this._wineDistribution, this._wineArchitecture, this._wineVersion).luna(); this._preInstall(wine, setupWizard); @@ -76,7 +86,9 @@ class InstallerScript extends QuickScript { // if no executable given, ask user if (!this._executable) { - this._executable = fileName(setupWizard.browse(tr("Please select the executable."), wine.prefixDirectory(), ["exe"])); + this._executable = fileName( + setupWizard.browse(tr("Please select the executable."), wine.prefixDirectory(), ["exe"]) + ); } this._createShortcut(wine.prefix());