pipx でインストールしたバイナリ (https://github.com/localstack/aws-sam-cli-local) を実行しようとしたところ以下のようなエラーとなり実行できなかった。
同じ症状のIssueがあった。
Bad interpreter /Users/USER/Library/Application: no such file or directory
on multiple commands · Issue #1226 · pypa/pipx
原因
$PIPX_HOME on macOS since release 1.3.0 breaks awscli · Issue #1198 · pypa/pipx
実行ファイルパスにspaceが入っていると駄目ってやつ。
pipxがバイナリをインストールするディレクトリを変更する
pipx のデフォルトのVirtual Environmentの場所は ~/Library/Application Support
となっているので、これをスペースを含まない場所に変えてあげるといい。
公式 には $HOME/Library/ApplicationSupport
を作って $HOME/Library/Application\ Support/pipx
を $HOME/Library/ApplicationSupport/pipx
にリンクさせるとあるのだけど、このために余計なディレクトリ作るのって気持ちになった。
Linuxでは ~/.local/share/pipx
になっているので、macOSでも同じようにするため PIPX_HOME を設定する。
これで pipx install --force
でインストールし直したら動くようになった。