Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot find module napi-v6-darwin-unknown-x64 in the universal app #7473

Closed
oalfroukh opened this issue Mar 9, 2023 · 22 comments
Closed

Cannot find module napi-v6-darwin-unknown-x64 in the universal app #7473

oalfroukh opened this issue Mar 9, 2023 · 22 comments

Comments

@oalfroukh
Copy link

oalfroukh commented Mar 9, 2023

  • Electron-Builder Version: 24.0.0
  • Node Version: 16.15.1
  • Electron Version:23.1.3
  • Electron Type (current, beta, nightly): current
  • Target: Universal
  • I'm trying to build our Electron app as a Universal (I'm using this command electron-builder --config ./electron-builder.json --mac --universal), but I got this error in the run time for the app after building it from the M1 machine with XCode v14.2 (I'm using sqlite3 v5.1.4)
An unexpected error occurred at startup

09/03/2023, 17:06:04 EET Error details: 
name: Error,
message: Cannot find module '/Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-x64/node_sqlite3.node'
Require stack:
- /Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/sqlite3-binding.js
- /Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/sqlite3.js
- /Applications/myApp.app/Contents/Resources/app-x64.asar/dist/main-bundle.js
- /Applications/myApp.app/Contents/Resources/app.asar/index.js
- ,
  • Here is myApp.app/Contents/Resources directory in the Application path

Screenshot 2023-03-09 170831

  • As you see there is no napi-v6-darwin-unknown-x64 inside app-x64.asar.unpacked while there is napi-v{napi_build_version}-darwin-unknown-x64

  • When I tried to build the app from an Intel machine (Xcode v14.2) there is napi-v6-darwin-unknown-x64 inside app-x64.asar.unpacked while there is no napi-v6-darwin-unknown-arm64 inside app-arm64.asar.unpacked(napi-v{napi_build_version}-darwin-unknown-arm64 exists)

  • Here is electron-builder.json contents:

{
  "appId": "com.myapp.myApp",
  "productName": "mayApp",
  "buildVersion": "2.1.0",
  "compression": "normal",
  "directories": {
    "app": "./rb-services",
    "buildResources": "./setup/build",
    "output": "./compile"
  },
  "afterSign": "./notarize.js",
  "asarUnpack": ["**/*.node"],
  "mac": {
    "category": "public.app-category.business",
    "icon": "./setup/build/icon.icns",
    "hardenedRuntime": true,
    "mergeASARs": false,
    "entitlements": "./setup/build/entitlements.mac.plist",
    "entitlementsInherit": "./setup/build/entitlements.mac.plist",
    "files": [
      "**/*",
      "!**/*.ts",
      "!**/*.tlog",
      "!**/*.log",
      "!**/*.exp",
      "!**/*.lib",
      "!**/*.iobj",
      "!**/*.obj",
      "!**/*.ipdb",
      "!**/*.pdb",
      "!**/*.ilk",
      "!**/*.map",
      "!**/*.vcxproj*",
      "!**/*.lastbuildstate",
      "!**/*config.gypi",
      "!**/*binding.gyp",
      "!**/*Dockerfile",
      "!**/*tsconfig.json",
      "!**/patches/*.patch",
      "!**/node_modules/**/*/doc/**/*",
      "!**/node_modules/**/*/docs/**/*",
      "!**/node_modules/sqlite3/build/**/*",
      "!**/node_modules/sqlite3/build-tmp-napi-v6/**/*",
      "!**/node_modules/**/*.{mk,a,o,h}",
      "!src"
    ],
  "dmg": {
    "title": "mayApp",
    "background": "./setup/build/myApp.png",
    "iconSize": 90,
    "contents": [
      { "x": 448, "y": 300, "type": "link", "path": "/Applications" },
      { "x": 192, "y": 300, "type": "file" }
    ],
    "window": {
      "height": 500
    }
  }, 
  "appx": {
    "publisherDisplayName": "myApp"
  },
  "electronVersion": "23.1.3",
  "buildDependenciesFromSource": true,
  "nodeGypRebuild": false,
  "npmRebuild": true,
  "extends": null
}

** Update: The issue doesn't exist when using electron-builder v23.6.0, it seems related to the latest version (24.0.0)

@oalfroukh
Copy link
Author

Hi @mmaietta
Could you please take a look at this issue, seems it's a side effect of your MR #7196 in v24.0.0-alpha.1 when migrating to electron-rebuild for handling native dependencies

Thanks in advance!

@mmaietta
Copy link
Collaborator

Sure thing. Can you create a minimum reproducible repo for this, such as using electron-quick-start project?

For context on the change, the electron/rebuild migration was a necessity as the previous golang builder doesn't support newer versions of electron due to some C compiler flags

@oalfroukh
Copy link
Author

Here is electron-quick-start repo to reproduce the issue:

electron-quick-start.zip

But I got now an error during executing @electron/rebuild phase when I used a quick start repo, here it is:

> electron-quick-start@1.0.0 dist-mac
> electron-builder --config ./electron-builder.json --mac --universal

  • electron-builder  version=24.0.0 os=22.3.0
  • loaded configuration  file=/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/electron-builder.json
  • writing effective config  file=compile/builder-effective-config.yaml
  • executing @electron/rebuild  appDir=/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start arch=x64
  • loaded configuration  file=/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/electron-builder.json
Attempting to build a module with a space in the path
See https://github.com/nodejs/node-gyp/issues/65#issuecomment-368820565 for reasons why this may not work
  CC(target) Release/obj.target/nothing/node_modules/node-addon-api/nothing.o
  LIBTOOL-STATIC Release/nothing.a
warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: archive library: Release/nothing.a the table of contents is empty (no object file members in the library define global symbols)
  ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep Release/obj/gen/sqlite-autoconf-3410100/sqlite3.c
/bin/sh: projects/electron-quick-startt/electron-quick-start/node_modules/sqlite3/build/Release/lib.host:/Users/omaralfroukh/Desktop/Test: No such file or directory
  TOUCH Release/obj.target/deps/action_before_build.stamp
  CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3410100/sqlite3.o
  LIBTOOL-STATIC Release/sqlite3.a
  CXX(target) Release/obj.target/node_sqlite3/src/backup.o
clang: error: no such file or directory: 'projects/electron-quick-startt/electron-quick-start/node_modules/sqlite3/node_modules/node-addon-api'
make: *** [Release/obj.target/node_sqlite3/src/backup.o] Error 1
  ⨯ node-gyp failed to rebuild '/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/sqlite3'.
For more information, rerun with the DEBUG environment variable set to "electron-rebuild".

Error: `make` failed with exit code: 2

  failedTask=build stackTrace=Error: node-gyp failed to rebuild '/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/sqlite3'.
For more information, rerun with the DEBUG environment variable set to "electron-rebuild".
                                                                                                                                                                                                                                                                                    Error: `make` failed with exit code: 2
                                                                                                                                                                                                                                                                                        at NodeGyp.rebuildModule (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/@electron/rebuild/src/module-type/node-gyp.ts:133:13)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at ModuleRebuilder.rebuildNodeGypModule (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/@electron/rebuild/src/module-rebuilder.ts:93:5)
    at ModuleRebuilder.rebuild (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/@electron/rebuild/src/module-rebuilder.ts:129:8)
    at Rebuilder.rebuildModuleAt (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/@electron/rebuild/src/rebuild.ts:203:9)
    at Rebuilder.rebuild (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/@electron/rebuild/src/rebuild.ts:158:9)
    at installOrRebuild (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/util/yarn.ts:29:5)
    at Packager.installAppDependencies (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/packager.ts:525:7)
    at MacPackager.doPack (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/platformPackager.ts:219:5)
    at MacPackager.doPack (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/macPackager.ts:111:9)
    at MacPackager.pack (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/macPackager.ts:194:7)
    at Packager.doBuild (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/packager.ts:442:9)
    at executeFinally (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/builder-util/src/promise.ts:12:14)
    at Packager._build (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/packager.ts:376:31)
    at Packager.build (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/app-builder-lib/src/packager.ts:337:12)
    at executeFinally (/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start/node_modules/builder-util/src/promise.ts:12:14)

Steps to reproduce:

  • npm i
  • npm run dist-mac

Thanks for your response!

@mmaietta
Copy link
Collaborator

• executing @electron/rebuild appDir=/Users/omaralfroukh/Desktop/Test projects/electron-quick-startt/electron-quick-start arch=x64
clang: error: no such file or directory: 'projects/electron-quick-startt/electron-quick-start/node_modules/sqlite3/node_modules/node-addon-api'
make:

I guess electron/rebuild or make doesn't handle paths with spaces? Try removing the empty space from Test projects and replace with hypen?

I can prob take a look at the repro repo later today or this weekend.

@Nantris
Copy link

Nantris commented Mar 16, 2023

@oalfroukh sorry for the off-topic comment but I'm wondering what "!**/node_modules/**/*.{mk,a,o,h}", achieves - what kind of files are those? Many of your entries look like great additions to our exclusions list.

@mmaietta
Copy link
Collaborator

Got it working with the sample project you sent me @oalfroukh
I had simplified the config, but most notably, AFAICT the mergeASAR: false means that you need to be loading the index.html from the new arch-specific asar.

mainWindow.loadFile(path.join(__dirname, "index.html"));

electron-builder.js config excerpt mac

"asarUnpack": ["**/*.node"],
  "mac": {
    "target": {
      "arch": "universal",
      "target": "dir"
    },
    "hardenedRuntime": true,
    "files": [
      "index.html",
      "main.js",
      "preload.js",
      "renderer.js",
      "styles.css",
    ],
    "mergeASARs": false
  }

@oalfroukh
Copy link
Author

(path.join(__dirname, "index.html"));

Thanks for the follow-up, I'm still faced the same issue, I'm generating the app from Intel macOS now

There is napi-v6-darwin-unknown-x64 inside app-x64.asar.unpacked while there is no napi-v6-darwin-unknown-arm64 inside app-arm64.asar.unpacked that will generate an error when running the app on M1 machine

An unexpected error occurred at startup

09/03/2023, 17:06:04 EET Error details: 
name: Error,
message: Cannot find module '/Applications/myApp.app/Contents/Resources/myApp-arm64.asar/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-arm64/node_sqlite3.node'

Here are the generated app contents:
image

Can you please attach your app contents?

@oalfroukh
Copy link
Author

.{mk,a,o,h}

I think the extensions ".mk", ".a", ".o", and ".h" are used for make files, static libraries, object files, and header files, respectively. Each of these file types serves a specific purpose in the process of compiling and linking source code, but as I saw no need to be in the generated app (at least in my project),

@oalfroukh
Copy link
Author

Hi @mmaietta
Any updates about the case?
Thanks in advance!

@mmaietta
Copy link
Collaborator

I just redownloaded and tested again. The sample project you posted works perfectly fine for me on my M1 when I just change this line

mainWindow.loadFile("index.html");

to

mainWindow.loadFile(path.join(__dirname, "index.html"));

I'm also running xcode 14.2.
Screenshot 2023-03-26 at 8 55 38 AM

@oalfroukh
Copy link
Author

oalfroukh commented Mar 26, 2023

Hi @mmaietta ,

  • First of all, It seems you are using "mergeASARs": true because there is app.asar.unpacked and not app-x64.asar.unpacked & app-arm64.asar.unpacked, but I think the issue will be the same.

  • The issue will not appear on M1 machine, because the app is generated from M1 on your case, so the issue will appear on intel machine only with error Cannot find module '/Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-x64/node_sqlite3.node, as you see on your screenshot there is no napi-v6-darwin-unknown-x64, while the issue will appear on M1 machine when packaging the app from intel machine, that is my point (you can see the attached screenshot on my previous comment, the app generated on intel machine)

Thanks again!

@mmaietta
Copy link
Collaborator

mmaietta commented Mar 26, 2023

I used the exact project config your electron-quick-start used with npm run dist-mac

I also dont own an intel mac to test with

@oalfroukh
Copy link
Author

I used the exact project config your electron-quick-start used with npm run dist-mac

I also dont own an intel mac to test with

Yes, removing compile and node_modules folders and rebuilding the app via npm run dist-mac will generate app-x64.asar & app-x64.asar as expected, it's OK that's not the issue.

** Any suggestion to move forward in solving the issue because those folders should exist in the expected result in the universal app to work fine on both architects?

Thanks for your follow-up!

@mmaietta
Copy link
Collaborator

Wait, why is it not leveraging build/Release/node_sqlite3.node in each of the relative unpacked asars?

~/D/electron-builder-test> ls **/*.node
  app-arm64.asar.unpacked/node_modules/sqlite3/bin/darwin-arm64-110/sqlite3.node
  app-arm64.asar.unpacked/node_modules/sqlite3/bin/darwin-x64-110/sqlite3.node
  app-arm64.asar.unpacked/node_modules/sqlite3/build/Release/node_sqlite3.node
  app-arm64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-arm64/node_sqlite3.node
  app-arm64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-arm64/node_sqlite3.node
  app-arm64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-x64/node_sqlite3.node
  app-x64.asar.unpacked/node_modules/sqlite3/bin/darwin-x64-110/sqlite3.node
  app-x64.asar.unpacked/node_modules/sqlite3/build/Release/node_sqlite3.node
  app-x64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-arm64/node_sqlite3.node
  app-x64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-x64/node_sqlite3.node

@oalfroukh
Copy link
Author

oalfroukh commented Mar 28, 2023

"!**/node_modules/sqlite3/build/**/*",
  • I was using "!**/node_modules/sqlite3/build/**/*", I removed it, but the same issue, when building the app from M1 machine I got the same error when running the app on Intel machine:
An unexpected error occurred at startup

09/03/2023, 17:06:04 EET Error details: 
name: Error,
message: Cannot find module '/Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-x64/node_sqlite3.node'
Require stack:
- /Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/sqlite3-binding.js
- /Applications/myApp.app/Contents/Resources/app-x64.asar/node_modules/sqlite3/lib/sqlite3.js
- /Applications/myApp.app/Contents/Resources/app-x64.asar/dist/main-bundle.js
- /Applications/myApp.app/Contents/Resources/app.asar/index.js
- ,
  • If you see the package.josn of sqlite3 contains this line "module_path": "./lib/binding/napi-v{napi_build_version}-{platform}-{libc}-{arch}", maybe that is why build/Release/node_sqlite3.node not leveraging

  • if you want I can upload the generated dmg from Intel to google drive to try to use it on your M1 machine to be able to reproduce the issue on your machine.

@oalfroukh
Copy link
Author

Hi again @mmaietta

Another point maybe will help in the investigation, if you try to use electron v19.0.0 and electron-builder v23.6.0 that is not using electron-rebuild will see there is node_modules/sqlite3/lib/binding/napi-v6-darwin-unknown-x64/node_sqlite3.node on both app-arm64.asar and app-x64.asar, so I'm not sure who is responsible about this issue electron-builder or electron-rebuild

image

@mmaietta
Copy link
Collaborator

if you want I can upload the generated dmg from Intel to google drive to try to use it on your M1 machine to be able to reproduce the issue on your machine.

I trust you there.

Was finally able to emulate an x64 mac and create the crash you've been describing, did so by invoking rosetta to launch the app.

arch -x86_64 open ~/Development/electron-quick-start-issue7473/dist/mac-universal/myApp.app  --args --inspect --remote-debugging-port=8888

The other route is to right click -> "Get Info" -> "Launch using Rosetta"

I just built a x64-only app using your electron-quick-start.zip you previously linked, and it fails to launch with the same error.
When compiling for universal, I checked everything again with lipo using v24.2.0

~/D/electron-quick-start-issue7473> lipo -info **/sqlite3/**/*.node
Non-fat file: dist/mac-universal/myApp.app/Contents/Resources/app-arm64.asar.unpacked/node_modules/sqlite3/build/Release/node_sqlite3.node is architecture: arm64
Non-fat file: dist/mac-universal/myApp.app/Contents/Resources/app-arm64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-arm64/node_sqlite3.node is architecture: arm64
Non-fat file: dist/mac-universal/myApp.app/Contents/Resources/app-arm64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-x64/node_sqlite3.node is architecture: x86_64
Non-fat file: dist/mac-universal/myApp.app/Contents/Resources/app-x64.asar.unpacked/node_modules/sqlite3/build/Release/node_sqlite3.node is architecture: x86_64
Non-fat file: dist/mac-universal/myApp.app/Contents/Resources/app-x64.asar.unpacked/node_modules/sqlite3/lib/binding/napi-v{napi_build_version}-darwin-unknown-x64/node_sqlite3.node is architecture: x86_64

The reason it's failing is because {napi_build_version} isn't being replaced with 6 with what sqlite3 is expecting (napi-v6-darwin-unknown-x64/node_sqlite3.node. Everything else seems to line up correctly.
I think that may actually be resolved by electron/rebuild#1076 as I have no idea where else napi_build_version could possibly be coming from.

@mmaietta
Copy link
Collaborator

Here you go, this fixes it for me
Add this patch file to your project via patch-package and it properly replaces napi_build_version as expected
@electron+rebuild+3.2.10.patch

diff --git a/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js b/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
index 8fd6878..e9e2b4b 100644
--- a/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
+++ b/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
@@ -46,6 +46,10 @@ class NodeGyp extends _1.NativeModule {
     }
     async buildArgsFromBinaryField() {
         const binary = await this.packageJSONFieldWithDefault('binary', {});
+        let napi_build_version = undefined
+        if (binary.napi_versions) {
+            napi_build_version = this.nodeAPI.getNapiVersion(binary.napi_versions)
+        }
         const flags = await Promise.all(Object.entries(binary).map(async ([binaryKey, binaryValue]) => {
             if (binaryKey === 'napi_versions') {
                 return;
@@ -60,6 +64,9 @@ class NodeGyp extends _1.NativeModule {
                 .replace('{arch}', this.rebuilder.arch)
                 .replace('{version}', await this.packageJSONField('version'))
                 .replace('{libc}', await detect_libc_1.default.family() || 'unknown');
+            if (napi_build_version !== undefined) {
+                value = value.replace('{napi_build_version}', napi_build_version.toString())
+            }
             for (const [replaceKey, replaceValue] of Object.entries(binary)) {
                 value = value.replace(`{${replaceKey}}`, replaceValue);
             }

I was able to launch the app successfully with Rosetta 2 env.

@oalfroukh
Copy link
Author

Here you go, this fixes it for me Add this patch file to your project via patch-package and it properly replaces napi_build_version as expected @electron+rebuild+3.2.10.patch

diff --git a/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js b/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
index 8fd6878..e9e2b4b 100644
--- a/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
+++ b/node_modules/@electron/rebuild/lib/src/module-type/node-gyp.js
@@ -46,6 +46,10 @@ class NodeGyp extends _1.NativeModule {
     }
     async buildArgsFromBinaryField() {
         const binary = await this.packageJSONFieldWithDefault('binary', {});
+        let napi_build_version = undefined
+        if (binary.napi_versions) {
+            napi_build_version = this.nodeAPI.getNapiVersion(binary.napi_versions)
+        }
         const flags = await Promise.all(Object.entries(binary).map(async ([binaryKey, binaryValue]) => {
             if (binaryKey === 'napi_versions') {
                 return;
@@ -60,6 +64,9 @@ class NodeGyp extends _1.NativeModule {
                 .replace('{arch}', this.rebuilder.arch)
                 .replace('{version}', await this.packageJSONField('version'))
                 .replace('{libc}', await detect_libc_1.default.family() || 'unknown');
+            if (napi_build_version !== undefined) {
+                value = value.replace('{napi_build_version}', napi_build_version.toString())
+            }
             for (const [replaceKey, replaceValue] of Object.entries(binary)) {
                 value = value.replace(`{${replaceKey}}`, replaceValue);
             }

I was able to launch the app successfully with Rosetta 2 env.

Hi @mmaietta,
Thanks for your great efforts! I used that patch and it's working fine on my Intel machine.

I have another question maybe it's not related to this topic I see there is a warning message "Detected arm64 process, HFS+ is unavailable. Creating dmg with APFS - supports Mac OSX 10.12+" Does this mean the generated dmg will never work on OSX 10.11 and below? if yes, does generating Universal dmg from Intel machine will support these OSX versions, and will be the same efficient as that generated app from arm64?

@mmaietta
Copy link
Collaborator

That's correct.
arm64 does not support HFS+ dmg creation. Intel machines still will be able to, presuming that Apple hasn't removed that support in most recent versions of mac. If the dmg succeeds on an Intel machine, then it's still HFS+

@oalfroukh
Copy link
Author

That's correct. arm64 does not support HFS+ dmg creation. Intel machines still will be able to, presuming that Apple hasn't removed that support in most recent versions of mac. If the dmg succeeds on an Intel machine, then it's still HFS+

OK, thanks a lot Mike!
so I'll try to use an Intel machine for the official build to give our users the last chance to use our app on these old OSX versions.

@mmaietta
Copy link
Collaborator

Updated @electron/rebuild dependency so that you don't need to use a custom patch-package approach. electron-builder 24.3.0 has the fix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants