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

ops fail on ARM machines due to eip712signer incompatibility #375

Closed
Tracked by #396
geoknee opened this issue Nov 22, 2024 · 6 comments · Fixed by #399
Closed
Tracked by #396

ops fail on ARM machines due to eip712signer incompatibility #375

geoknee opened this issue Nov 22, 2024 · 6 comments · Fixed by #399
Assignees

Comments

@geoknee
Copy link
Contributor

geoknee commented Nov 22, 2024

When I follow the playbook verbatim on my M3 Macbook Pro, the OS apparently kills the eip712signer process:

➜  019-fp-holocene-upgrade git:(seb/sep-019-fp-holocene) just \
   --dotenv-path $(pwd)/.env \
   --justfile ../../../nested.just \
   sign \    
   council 1
Running script with assertions
Using script /Users/georgeknee/code/ethereum-optimism/superchain-ops/tasks/sep/019-fp-holocene-upgrade/NestedSignFromJson.s.sol
Using council safe at 0xf64bc17485f0B4Ea5F06A96514182FC4cB561977
getting signer address...
Error: 
Could not connect to Ledger device.
Make sure it's connected and unlocked, with no other desktop wallet apps open.

Context:
- received an unexpected empty response
Signing with: 

[⠊] Compiling...
No files changed, compilation skipped
/var/folders/31/rhx71v1d52n7j67f__hl2qj40000gn/T/just-WDW5sJ/sign: line 95: 78307 Killed: 9               $(git rev-parse --show-toplevel)/bin/eip712sign --ledger --hd-paths "m/44'/60'/1'/0/0" -- forge script ${script} --rpc-url ${rpcUrl} --sig "signJson(string,address)" ${bundlePath} "${safe}"
error: Recipe `sign` failed with exit code 137

The error message is not very helpful, but I managed to work around this by rebuilding eip712signer from source with the following build flags:

CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 go build -o eip712sign
cp eip712sign ../../ethereum-optimism/superchain-ops/bin

Copying the binary over to this repo allows the ops script to complete successfully.

@mds1
Copy link
Contributor

mds1 commented Dec 2, 2024

@geoknee Do you know why this happens? I'm wondering who we can assign this issue to so that it can be resolved before the Holocene mainnet playbooks

@PierreOssun
Copy link

I had the same error message as above (in a clone repo using the same scripts) and also running on a M3 macbook.
I rebuilding eip712signer with the flags and copied the binaries and worked as expected. Thanks for sharing the fix @geoknee

@mds1
Copy link
Contributor

mds1 commented Dec 4, 2024

@geoknee @PierreOssun do you know what go and macOS versions you compiled with? I was on go1.23.0 darwin/arm64 with Sequoia 15.1.1. I upgraded to the latest go version, go1.23.4 darwin/arm64, and will re-test with the default build steps tomorrow to see if that affects anything

cc @mdehoog as well since it looks like you are the maintainer of https://github.com/base-org/eip712sign

@geoknee
Copy link
Contributor Author

geoknee commented Dec 4, 2024

I'm on Sonoma 14.7.1 and go1.21.13 darwin/arm64.

Seems like a compatibility issue with ARM architecture, but I haven't dug a lot more deeply.

@mdehoog
Copy link
Contributor

mdehoog commented Dec 4, 2024

I'm unable to reproduce this (on M2 with OS 15.1 (24B83) and go version go1.22.6 darwin/arm64).

But did notice the utility was lagging behind go-ethereum versions, updated and released a version here: https://github.com/base-org/eip712sign/releases/tag/v0.0.8

@geoknee could you please check if that resolves anything for you? Otherwise we can always switch the justfile to build locally with those parameters.

@blmalone blmalone self-assigned this Dec 10, 2024
geoknee added a commit that referenced this issue Dec 11, 2024
@geoknee
Copy link
Contributor Author

geoknee commented Dec 11, 2024

I'm unable to reproduce this (on M2 with OS 15.1 (24B83) and go version go1.22.6 darwin/arm64).

But did notice the utility was lagging behind go-ethereum versions, updated and released a version here: https://github.com/base-org/eip712sign/releases/tag/v0.0.8

@geoknee could you please check if that resolves anything for you? Otherwise we can always switch the justfile to build locally with those parameters.

@mdehoog yes that seems to do the trick for me #399 . Thanks for the help!

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

Successfully merging a pull request may close this issue.

5 participants