zigupでZigを管理する
homebrew 経由のインストールがやはり良くないようなので、いったん zigup
を使ってみることにしました。
zigup ってなに?
zigup とは Zigのバージョンマネージャーです。かなりシンプルな使い心地です。
自分は、あまりバージョンマネージャーは好きではないです。RVMとかNVMとかシェルに設定が必要なもので、その影響で違う環境と挙動が異なったりすることがあったからです。
zigupはシンボリックリンクを使って管理しているだけの非常にシンプルなものだったので、変な影響はなさそうです。
とりあえず既存のものをアンインストール
zls
が zig
に依存しているようなので両方削除します。
brew uninstall zls zig
zigup をダウンロード
このサイト でOSとCPUアーキテクチャを選択すると以下のようなコマンドが表示されます。
curl -L https://github.com/marler8997/zigup/releases/download/v2024_05_05/zigup-aarch64-macos.tar.gz | tar xz
こいつを実行すると zigup
が展開されます。PATHが通っている場所に配置すると良いです。
zigup で Zig をインストール
コマンドは以下のように使います。
zigup 0.13.0
必要なファイルをダウンロードして zigup
が配置されている場所(PATHが通っている場所)に シンボリックリンクでzig
を配置してくれます。
zig本体などのファイルは $HOME/zig
の中にあって、バージョンごとにサブディレクトリが生成されているようです。バージョンの切り替えはシンボリックリンクの参照先を変更することで実現しているようですね。
$ readlink $(which zig)
/Users/kawaken/zig/0.13.0/files/zig
zls のインストール
zlsもzigとバージョンを合わせる必要があるので、zlsも一緒にインストールされるとありがたいですが、そこまではできないようです。こちらは個別にインストールします。
curl -s -L -O https://github.com/zigtools/zls/releases/download/0.13.0/zls-aarch64-macos.tar.xz
tar -xf zls-aarch64-macos.tar.xz
mv zls $HOME/bin
おわり
とりあえずこれで問題なさそうでした。zlsも一緒に管理できると楽だけどなーと思いますが…。仕方ない。
Zigはまだまだ開発中でバージョンによって非互換も起こりえるので、今はバージョン管理できた方が良いかなと思いますし、しばらくはこれで行こうと思います。