Skip to content

Unable to build universal deploy for MacOS 🐛 #173

@aswallace

Description

@aswallace

Initial notes from Sean:

When Arm64 mac runners became the default for GitHub it seems it broke our desktop deploys to MacOS by having only Arm64 arch compatible executables get output as part of the release process. This can be fixed by changing the build options in the package.json to target x86 as a separate deploy or by building a universal version. However, this is where the trouble really begins. It seems like for some reason the universal and x86 builds that build on GitHub don't actually produce an x86 compatible executable, instead I get this error:

image

This seems to be an error many others have gotten as well and the routes and various fixes they perform are varied. What is more annoying is it seems the File Upload App does exactly what we do on my working branch but without the error (see here.

Related Issues

Things I tried to so far:

  • Upgrading electron & electron-builder
  • Upgrading electron-builder to a middle ground version like 22
  • Setting mergeAsar to false
  • Setting the node modules included to exclude certain extensions
    (various combos of above, not to say any of these should necessarily be ruled out since it may require the right combo)

Update: Notes from Anya

I eventually narrowed down the issue to DuckDB. When I remove duckdb as a dependency completely (and noop all duckdb functionality) the universal builds work for both arch. I think they've fixed the mac incompatibility issue in 1.0.0 (we're using 0.8.x) BUT when I try to upgrade to 1.0.0, I get a whole bunch of nasty mapbox/node-pre-gyp dependency & webpack errors. Unfortunately, node-pre-gyp is no longer maintained, so I haven't had much luck in finding solutions
Related discussion:

Currently the deployed versions of the desktop app are based on main, but built on their respective chips and manually added to the release.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions