mas: 🐛 [BUG] Cannot run mas on ARM-based CPU
Your Environment
mas version: 1.7.1- macOS version (
system_profiler SPSoftwareDataType -detailLevel mini): 11.0.1
mas Install Method
-
brew install mas(homebrew-core) - [] mas-cli/tap
- []
.pkginstaller from releases - [] Built from source
- Fork/branch: ? (e.g. mas-cli/master)
- Xcode version: 10.?
Describe the Bug
I’ve installed mas on an M1. Whenever I try to use mas in any way, it exits with a SIGKILL. I’ve tried using mas under fish, bash, and zsh (both macOS-provided and through Homebrew).
To Reproduce
Steps to reproduce the behavior:
- Install mas on Apple Silicon
- Run
masat a command prompt - See error
Expected Behavior
mas works
Actual Behavior
mas is killed by SIGKILL
Screenshots, Terminal Output
$ file (which mas)
/opt/homebrew/bin/mas: Mach-O 64-bit executable arm64
$ mas
fish: “mas” terminated by signal SIGKILL (Forced quit)
$ mas list
fish: “mas list” terminated by signal SIGKILL (Forced quit)
$ mas version
fish: “mas version” terminated by signal SIGKILL (Forced quit)
Additional Context
If I install mas under Rosetta 2, it works as expected. The problem is specific to native M1.
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Reactions: 15
- Comments: 15 (5 by maintainers)
Fix due out soon in mas 1.8
I can also confirm this behavior.
brew install masworks great.But then…
I suspect this is due to
script/installaltering the executable’srpathafter code signing.Confirmed for me as well
OK I have found I also needed to remove all references to VALID_ARCH, the corresponding pull request is here: https://github.com/mas-cli/mas/pull/314
I tried your solution, @chris-araman, and it is not enough, here is what I then get;
It seems we will also need to wait for Commandant.framework to release an arm64 version…
This is maybe due to codesign rules for ARM64. All need to be at least adhoc signed.