question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

EVS doesn't support macOS Universal builds?

See original GitHub issue

Hi all,

Running into an issue when trying to use EVS signing utility on my Universal build of our darwin app –

> python3 -m castlabs_evs.vmp sign-pkg ./dist_electron/mac-universal
Signing: ./dist_electron/mac-universal/Lift.app
UnsupportedError: Binary type or archtecture not supported

Any way we can sign for Universal builds?

Debug details:

electronVersion: "13.1.6-wvvmp",
Python 3.9.1
node v14.15.3

Thanks!

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:5

github_iconTop GitHub Comments

5reactions
khwaajcommented, Aug 25, 2021

I had some time to take a closer look at this and, as it turns out, implementing it in EVS was far easier than I had anticipated, so I went ahead and updated the service and client with support for universal binaries. If you want to try it out, you need to upgrade the client like this:

python3 -m pip install --upgrade castlabs-evs

Once you have the v1.1.0 client you will be able to sign universal binaries, as long as the included executables are based on EVS. Keep in mind that a universal binary with two architectures is twice the size, which means a signing request will take twice the time to upload the binary to the service (on slow connections passing -z may be beneficial).

On a separate note I noticed that @electron/universal, which is used under the hood by several packagers, is unable to merge ECS releases because of the pre-generated .sig files that exist in the app bundle. Since you have been experimenting with this you are probably aware already. Anyway, for the record, to fix this with electron-builder I simply added code to the afterPack hook that removes the offending .sig file from the package (it will be regenerated when you sign the package anyway):

const fs = require('fs')

exports.default = async function(context) {
  fs.unlinkSync(context.appOutDir + '/my.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/Electron Framework.sig')
}
1reaction
alectrocutecommented, Sep 2, 2021

@khwaaj Following up to say I just successfully signed our Universal 13.1.6-wvvmp build with castlabs-evs. The -z flag wasn’t needed, the artifact uploaded with zero issues. Safe to say, we now have full macOS support!

Read more comments on GitHub >

github_iconTop Results From Across the Web

Building a Universal macOS Binary - Apple Developer
A universal binary runs natively on both Apple silicon and Intel-based Mac computers, because it contains executable code for both architectures. Turn all...
Read more >
macOS build universal binary 2 with CMake - Stack Overflow
How would I build a Universal Binary 2 that supports both Intel and Apple Silicon using CMake/Make? I have found some documentation here ......
Read more >
command line - How can I distinguish ARM binaries from x86 ...
You can use the file command to see which architectures a binary (or library) includes native code for. The M1 processor uses the...
Read more >
Code Signing - electron-builder
macOS and Windows code signing is supported. ... However, it is not possible to export the EV Certificate as it is bound to...
Read more >
What matters about Matter, the new smart home standard
Amazon Alexa Matter support. Google Nest and Google Home Matter support. Apple Home Matter support. Samsung SmartThings Matter support.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found