はじめに
この記事は、Qiita Advent Calendar 22日目の記事です。
以下の記事より、すべての記事をご覧になれます。
本編
皆さんはNixをご存知でしょうか?
システム全体(グローバル)にも各リポジトリごと(ローカル)にも開発環境を用意できる素晴らしい機能だそうです。(という認識です)今回アドカレのネタが尽きてしまったので中途半端に手を出したのも運の尽き、瞑想劇を残しておきたいと思います。
インストールの方法
インストールは下記の公式ホームページに情報が書いてあります。
が、これを使わない方がどうやら良さそう。代わりに、下のサイトにあるスクリプトを使う方がいいらしいです。
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
この時点で僕は「ややこしい」って思っています。
使い方(グローバル)
Flakesを使う前にまず最初にチャンネル登録(おそらくリポジトリという意味)が必要なので、チャンネル登録をしましょう。
nix-channel --add https://nixos.org/channels/nixpkgs-unstable
nix-channel --update
パッケージのインストール自体はnix-env
というコマンドを使うそう。
nix-env -i "package"
nix-env --install "package"
で、この時にインストールしたいパッケージはnix-env -qa
で探すそう。
nix-env -qa "package"
アップデートの時は
nix-env -u "package" #特定のパッケージをアップデート
nix-env -u #全部アップデート
これだそうです。なんでnix-env
とnix-channel
を分けたのでしょうか。
感想
正直重いしHomebrewでいいような気がします。が、LinuxとMacを共通のリポジトリで管理できたらいリポジトリ以外にあるものも管理できたりっていうのはすごいいいような気もしますので、食わず嫌いはやめて、来年はちょっとFlaksにもチャレンジしてみたいと思います。
最後に
今回改めてNixを調べてみたけどむずい、NixOSって恐るべしって感じ。