nix-envの--query操作を使用してインストールするパッケージを検索するとします。
$ nix-env -qa 'aspell.*en'
aspell-dict-en-7.1-0
/etc/nixos/configuration.nixNixOSのメイン構成ファイルにこのパッケージ名を記述します。
environment.systemPackages = with pkgs; [
aspell-dict-en
];
それでも、構成sudo nixos-rebuild switchを更新し、宣言的に指定されたすべてのシステム全体のパッケージをインストールするNixOSコマンドを実行すると、エラーで中断します。
error: undefined variable ‘aspell-dict-en’ at /etc/nixos/configuration.nix:44:5
すべてではありませんが、多くのパッケージでは、nix-env返される名前とenvironment.systemPackages構成オプションで指定する名前が異なることを知っていますが、ロジックは理解していません。見つけたパッケージをインストールするにはどうすればよいnix-envですか?
-Pオプションはで機能しません。これは、の代わりにwhichを印刷--installedするとわかるように。回避策はを使用することですが、その出力をに簡単にダンプできないことを意味します。nix-env -q --installed -P | grep terminusterminus-fontterminus_fontnix-env -qaP | grep terminus-fontnix-env -q --installedconfiguration.nix