zigupでZigを管理する

2024-10-05  /  開発環境Zig

homebrew 経由のインストールがやはり良くないようなので、いったん zigup を使ってみることにしました。

zigup ってなに?

zigup とは Zigのバージョンマネージャーです。かなりシンプルな使い心地です。

自分は、あまりバージョンマネージャーは好きではないです。RVMとかNVMとかシェルに設定が必要なもので、その影響で違う環境と挙動が異なったりすることがあったからです。

zigupはシンボリックリンクを使って管理しているだけの非常にシンプルなものだったので、変な影響はなさそうです。

とりあえず既存のものをアンインストール

zlszig に依存しているようなので両方削除します。

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はまだまだ開発中でバージョンによって非互換も起こりえるので、今はバージョン管理できた方が良いかなと思いますし、しばらくはこれで行こうと思います。