NixOS にパッケージをインストールするときに Configuration.nix を変更する方法と nixos-rebuild-switch を追加して nix-shell を使用することの違いは何ですか?

NixOS にパッケージをインストールするときに Configuration.nix を変更する方法と nixos-rebuild-switch を追加して nix-shell を使用することの違いは何ですか?

NixOSに商品をインストールする一般的なプロセスは、構成.nix、実行nixos-rebuild switch、再起動後、新しい(最後の)オペレーティングシステム世代を選択します。

nix-shellを介してパッケージをインストールすることも可能であることを知っています(しかし、私は試したことはありません)。

これら2つのオプションの違いは何ですか?どちらが他よりも適切ですか?

答え1

nix-shellsは必ずしも保存したくない一時的な環境に適しています。
つまり、この素晴らしい新しいツールについて聞いて使ってみたいので、ツールを開いてnix-shell実行するだけです。このツールはシェル環境の一部にすぎません。他のシェルではこれを見つけることができません。

ツールが気に入らないと、A. 残りの環境を汚染することはなくなり、B.nix-shellツールを再び閉じた後、次のガベージ収集時にそのツールが占めるスペースを確保します。 。

しかし、本当に気に入って環境の永久的な一部になりたいのならenvironment.systemPackages

関連情報