macOSでも7zのコマンドラインでrarを解凍したい

普通にHomebrewで入れた 7z (p7zip) では rar を解凍しようとすると ERROR: Unsupported Method : ファイルパス と言われて解凍できない。

これはなぜかというと RAR 展開用のプログラムであるunRARをプロプライエタリでかつ「アルゴリズムの再実装には使うなよ」という規約で配布している*1ので Homebrew その他もろもろには含まれていないし Debian でも p7zip-rar という名前で non-free に入れられている。

じゃあどうするか?というと Keka https://www.keka.io/ja/ というアプリの中に keka7z という名前で入っている 7z が RAR サポートが有効の状態でビルドされているのでそれを流用する。

Keka.app を /Applications にインストールしたなら 7z なんちゃら/Applications/Keka.app/Contents/Resources/keka7z なんちゃら にするだけ。