signalapp / libsignal

Home to the Signal Protocol as well as other cryptographic primitives which make Signal possible.
GNU Affero General Public License v3.0
3.55k stars 415 forks source link

NPM: Publish releases for M1 Macs too #426

Closed jrose-signal closed 2 years ago

jrose-signal commented 2 years ago

This requires building on the macOS 11 GitHub runner; the 10.15 runner isn't set up for cross-compiling when not using Xcode.

Also, ensure that when we test the NPM package before publishing, we're using the libraries we're going to submit, rather than ones built on the final runner.

jrose-signal commented 2 years ago

Thanks again to @dennisameling for getting the initial multi-arch compilation working!

dennisameling commented 2 years ago

@jrose-signal thanks a lot for this! 🎉 May I ask for Windows ARM64 to be added as well? I've been releasing builds of ARM64 Signal Desktop since the beginning of June (and building the native deps here). It's been working very well and stable. Happy to provide a PR if that's OK for you 🙏🏼

jrose-signal commented 2 years ago

I'll circle back to this after New Year's, but discussion with the Desktop folks is leaning positive about it.

balupton commented 2 years ago

@dennisameling can we keep this momentum going and add a Linux ARM64 PR as well? 🙇‍♂️🙇‍♂️🙇‍♂️ ❤️❤️❤️

jrose-signal commented 2 years ago

@dennisameling We've discussed this a bit more at Signal and while we probably won't be doing an official ARM64 Linux app any time soon, there doesn't seem to be much harm in enabling it here too. Then you can drop it completely from your unofficial dependencies (well, unless you're building for an even more unusual platform since we last spoke!).

dennisameling commented 2 years ago

Thanks! Here's a PR for adding ARM64 Linux prebuilds:

https://github.com/signalapp/libsignal-client/pull/450