diff --git a/packages/app-cli/app/main.js b/packages/app-cli/app/main.js index ba51809fc7..47cd17d94a 100644 --- a/packages/app-cli/app/main.js +++ b/packages/app-cli/app/main.js @@ -59,7 +59,12 @@ try { keytar = null; } -shimInit(sharp, keytar); +function appVersion() { + const p = require('./package.json'); + return p.version; +} + +shimInit(sharp, keytar, null, appVersion); const application = app(); diff --git a/packages/app-desktop/main-html.js b/packages/app-desktop/main-html.js index cb032c654c..33588318cf 100644 --- a/packages/app-desktop/main-html.js +++ b/packages/app-desktop/main-html.js @@ -87,7 +87,12 @@ try { keytar = null; } -shimInit(null, keytar, React); +function appVersion() { + const p = require('./packageInfo.js'); + return p.version; +} + +shimInit(null, keytar, React, appVersion); // Disable drag and drop of links inside application (which would // open it as if the whole app was a browser) diff --git a/packages/lib/shim-init-node.js b/packages/lib/shim-init-node.js index 6d9f595fe0..81a57aef6e 100644 --- a/packages/lib/shim-init-node.js +++ b/packages/lib/shim-init-node.js @@ -62,7 +62,7 @@ const gunzipFile = function(source, destination) { }); }; -function shimInit(sharp = null, keytar = null, React = null) { +function shimInit(sharp = null, keytar = null, React = null, appVersion = null) { keytar = (shim.isWindows() || shim.isMac()) && !shim.isPortable() ? keytar : null; shim.fsDriver = () => { @@ -513,12 +513,10 @@ function shimInit(sharp = null, keytar = null, React = null) { shim.waitForFrame = () => {}; shim.appVersion = () => { - if (shim.isElectron()) { - const p = require('../packageInfo.js'); - return p.version; - } - const p = require('../package.json'); - return p.version; + if (appVersion) return appVersion(); + // Should not happen but don't throw an error because version number is + // used in error messages. + return 'unknown-version!'; }; shim.pathRelativeToCwd = (path) => {