Skip to content

Commit

Permalink
Fix: Run app.setAppPath() with the right path
Browse files Browse the repository at this point in the history
  • Loading branch information
felixrieseberg committed Aug 30, 2023
1 parent 0d2b974 commit 331c768
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 4 deletions.
21 changes: 19 additions & 2 deletions entry-asar/has-asar.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,24 @@
if (process.arch === 'arm64') {
process._archPath = require.resolve('../app-arm64.asar');
setPaths('arm64');
} else {
process._archPath = require.resolve('../app-x64.asar');
setPaths('x64');
}

function setPaths(platform) {
// This should return the full path, ending in something like
// Notion.app/Contents/Resources/app.asar
const appPath = app.getAppPath()
const asarFile = `app-${platform}.asar`

// Maybe we'll handle this in Electron one day
if (appPath.includes('app.asar')) {
const platformAppPath = appPath.replace(/\.app\.asar$/, asarFile)

// This is an undocumented API. It exists.
app.setAppPath(platformAppPath)
}

process._archPath = require.resolve(`../${asarFile}`);
}

require(process._archPath);
21 changes: 19 additions & 2 deletions entry-asar/no-asar.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,24 @@
if (process.arch === 'arm64') {
process._archPath = require.resolve('../app-arm64');
setPaths('arm64');
} else {
process._archPath = require.resolve('../app-x64');
setPaths('x64');
}

function setPaths(platform) {
// This should return the full path, ending in something like
// Notion.app/Contents/Resources/app
const appPath = app.getAppPath()
const appFolder = `app-${platform}`

// Maybe we'll handle this in Electron one day
if (appPath.endsWith('app')) {
const platformAppPath = appPath.replace(/app$/, appFolder)

// This is an undocumented API. It exists.
app.setAppPath(platformAppPath)
}

process._archPath = require.resolve(`../${appFolder}`);
}

require(process._archPath);

0 comments on commit 331c768

Please sign in to comment.