debug: [main] skeleton version 2.2.5
verbose: [main] setting single instance mode
App threw an error during load
TypeError: app.makeSingleInstance is not a function
at App.applySingleInstance (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/app/app.js:131:42)
at new App (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/app/app.js:63:14)
at Object.<anonymous> (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/app/app.js:731:25)
at Module._compile (internal/modules/cjs/loader.js:786:30)
at Object.extWrap (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/node_modules/reify/node/compile-hook.js:53:7)
at Object.extManager (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/node_modules/reify/node/compile-hook.js:19:12)
at Object.manager [as .js] (/Users/dkersch/Development/coygo/webapp/.meteor/desktop-build/node_modules/reify/node/wrapper.js:108:20)
at Module.load (internal/modules/cjs/loader.js:645:32)
at Function.Module._load (internal/modules/cjs/loader.js:560:12)
at Module.require (internal/modules/cjs/loader.js:685:19)
Looks like makeSingleInstance() was deprecated in 4.0
Potential fix for everyone (briefly tested on my fork):
if (semver.lt(process.versions.electron, '4.0.0')) { //https://www.electronjs.org/docs/all#appmakesingleinstance
const isSecondInstance = app.makeSingleInstance(() => {
// Someone tried to run a second instance, we should focus our window.
if (this.window) {
if (this.window.isMinimized()) {
this.window.restore();
}
this.window.focus();
}
});
} else {
app.requestSingleInstanceLock()
const isSecondInstance = app.on('second-instance', () => {
// Someone tried to run a second instance, we should focus our window.
if (this.window) {
if (this.window.isMinimized()) {
this.window.restore();
}
this.window.focus();
}
this.l.warn('current instance was terminated because another instance is running');
app.quit();
});
}
Setup:
package.json
.desktop/settings
command:
Expected result: The app to successfully build
Current result:
Looks like
makeSingleInstance()
was deprecated in 4.0Issue in skeleton code.
Potential workaround: singleInstance: false
Potential fix for everyone (briefly tested on my fork):