Załóżmy, że mam szukać pakietu instalacji przy użyciu nix-env„s--query operacji:
$ nix-env -qa 'aspell.*en'
aspell-dict-en-7.1-0
Piszę nazwę tego pakietu w /etc/nixos/configuration.nixgłównym pliku konfiguracyjnym NixOS :
environment.systemPackages = with pkgs; [
aspell-dict-en
];
Jednak jeśli uruchomię sudo nixos-rebuild switch, polecenie NixOS, aby zaktualizować konfigurację i zainstalować wszystkie pakiety systemowe określone przez deklaratywnie , przerywa z błędem:
error: undefined variable ‘aspell-dict-en’ at /etc/nixos/configuration.nix:44:5
Wiem, że dla wielu pakietów, choć nie wszystkie, nazwa, która nix-envpowraca i nazwa, którą należy podać w environment.systemPackagesopcji konfiguracji, są różne, ale nie rozumiem logiki. Jak zainstalować pakiet, który znalazłem nix-env?
-Popcja nie działa--installed, ponieważ można zobaczyć, znix-env -q --installed -P | grep terminusktórymi wydrukamiterminus-fontzamiastterminus_font. Obejściem jest użycienix-env -qaP | grep terminus-font, ale oznacza to, że nie można łatwo zrzucić danych wyjściowych donix-env -q --installedplikuconfiguration.nix.