butler icon indicating copy to clipboard operation
butler copied to clipboard

Add arm64 build option

Open duffn opened this issue 11 months ago • 2 comments

This adds an arm64 build option.

❯ node release/build.js --os darwin --arch arm64
Using user-specified OS darwin
Using user-specified arch arm64

―――――――――――――――――――――――
 Showing tool versions
―――――――――――――――――――――――

📜 node --version
v22.11.0
📜 go version
go version go1.23.4 darwin/arm64
📜 date +%s
export CGO_CFLAGS=-mmacosx-version-min=10.10
export CGO_LDFLAGS=-mmacosx-version-min=10.10
Compiling binary
export GOOS=darwin
export GOARCH=arm64
export CGO_ENABLED=1
📜 go build -ldflags "-X github.com/itchio/butler/buildinfo.Version=head -X github.com/itchio/butler/buildinfo.BuiltAt=1735830626
 -X github.com/itchio/butler/buildinfo.Commit= -w -s"
# github.com/itchio/sevenzip-go/sz
glue.c:119:29: warning: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]

――――――――――――――
 Packaging...
――――――――――――――

📜 mv butler ./artifacts/darwin-arm64/butler
📜 file ./artifacts/darwin-arm64/butler
./artifacts/darwin-arm64/butler: Mach-O 64-bit executable arm64
📜 ./artifacts/darwin-arm64/butler -V
head, built on Jan  2 2025 @ 08:10:26
📜 ./artifacts/darwin-arm64/butler fetch-7z-libs
📜 go test -v ./butlerd/integrate --butlerPath='/Users/nicholasduffy/code/butler/artifacts/darwin-arm64/butler'
# github.com/itchio/sevenzip-go/sz

# .... tests here

ok      github.com/itchio/butler/butlerd/integrate      8.896s

Notes

  • Of course, I can't test the itch.io executable signing, so commented that out in my testing.
  • The build results in this:
❯ uname -a
Darwin me.local 23.6.0 Darwin Kernel Version 23.6.0: Fri Nov 15 15:13:15 PST 2024; root:xnu-10063.141.1.702.7~1/RELEASE_ARM64_T6000 arm64

❯ file ./artifacts/darwin-arm64/butler
./artifacts/darwin-arm64/butler: Mach-O 64-bit executable arm64

❯ ./artifacts/darwin-arm64/butler -V
head, built on Jan  2 2025 @ 08:13:58

Related issues

  • This should resolve https://github.com/itchio/itch/pull/2928

duffn avatar Jan 02 '25 15:01 duffn

I can't seem to compile it myself, mind uploading a copy of the build? I'd like to waste less battery when using itch if I can get away with it

dissociativity avatar Mar 14 '25 08:03 dissociativity

Why isn't there any progress here? Would like to play on an Apple Silicon Mac myself, without Rosetta. If you need any help, let me know!

minomy13 avatar Apr 25 '25 10:04 minomy13