Apple Siliconで手軽に始めるNixOSデスクトップ with Tart
再現性のあるプログラムのビルドに定評のあるNixは2年ほど前からその人気に火が付き始め、着実に利用者を増やしています。最近では、Zenn上の記事やハンズオンのおかげで手軽にNixOSを試すことができるようになってきましたが、デスクトップ環境についてはどうでしょうか。デュアルブートや予備のマシンへのインストールで実現することはできますが、手軽とは言えません。そこで、Tartというツールを使ってMacOS上でNixOSのデスクトップ環境を手軽に試してみます。
Tartとは
Tartとは、Apple Silicon専用の仮想化フレームワークを使用している高速かつ効率のよい仮想化ソフトウェアです。Apple Siliconを搭載しているMacOS上でのみ動作します。
インストールはHomebrewやNixで可能です(筆者はnix-darwinでインストールしています)。
MacOSとLinuxの仮想化が可能であり、公式で対応しているバージョンは以下のGitHub Container Registryのリンクで閲覧できます。
MacOS
Linux
TartでNixOSを使う
公式ではNixOSに対応していないため、まずはNixOSのisoファイルを取得します。channels.nixos.orgにアクセスし、nixos-<任意のバージョン>
からGNOME、aarch64のものを選択してダウンロードします。
その後、以下のコマンドを実行します。
tart create --linux --disk-size <必要なディスクサイズ> <ホスト名>
NixOSを起動します。少し時間が掛かります。
tart run --disk <isoファイルへのパス> <ホスト名>
コマンドが成功するとTartのGUIが起動し、NixOSのグラフィカルインストーラが現れます。まだNixOSに不慣れな方は「NixOSで最強のデスクトップを作ろう」のNixOSのインストール手順に従って設定するとよいでしょう。
初期設定が終われば、次回からは以下のコマンドで起動することができます。
tart run <ホスト名>
ssh接続を使う
単純にコマンドを叩きたい場合、ssh接続が手っ取り早いでしょう。
下記を該当のVMを起動している状態で実行してIPアドレスを取得できます。その後はssh <ユーザ名>@<IPアドレス>
で接続が可能です。
tart ip <ホスト名>
以上です!デスクトップVMを利用した具体的なユースケースはあまり思い浮かびませんが、個人的には自身で作成したデスクトップアプリのビルドと実行を手軽に試すことができ、QOLが上がっています。みなさんもぜひ試してみてください😊
Discussion