A comunidade NixOS tem três manuais, sempre consulte-os primeiro, se estiver preso:
- Manual do Nix , para o gerenciador de pacotes
- Manual do NixOS , para o sistema operacional
- Manual do Nixpkgs , para infraestrutura de pacotes Nix
Cada pacote no Nix é especificado por uma expressão Nix. Uma expressão Nix é um texto escrito em linguagem Nix, geralmente residindo em um arquivo com extensão .nix
.
Toda expressão tem o chamado "nome simbólico", um nome legível para humanos que é impresso quando você usa nix-env
. Veja amostra da expressão Nix . Nix em si não usa este nome simbólico em qualquer lugar internamente, então não importa se o seu pacote é chamado aspell-dict-en
, é apenas para sua conveniência, humana.
O que realmente importa é o chamado "caminho do atributo". Portanto, sua confusão está entre o nome simbólico e o caminho do atributo. Cada pacote tem um caminho de atributo, que você pode usar na opção de configuração environment.systemPackages
para instalar em todo o sistema usando gerenciamento declarativo de pacotes .
Para descobrir o caminho do atributo do seu pacote, adicione outro -P
à sua consulta:
$ nix-env -qaP 'aspell.*en'
nixos.aspellDicts.en aspell-dict-en-7.1-0
Você deve se sentir confortável usando nix-env
diariamente, portanto, pratique a chamada de nix-env
com as opções --query
e --install
. No entanto, você também pode procurar pacotes e descobrir seus caminhos de atributos online em pesquisa de pacotes Nix . Digite aspell
, clique em aspell-dict-en
e você verá várias propriedades do pacote, incluindo o caminho do atributo como parte do comando de instalação:
$ nix-env -iA nixos.pkgs.aspellDicts.en
Agora você pode colocar este caminho de atributo em /etc/nixos/configuration.nix
:
environment.systemPackages = with pkgs; [
aspellDicts.en
];
Em seguida, atualize o sistema executando sudo nixos-rebuild switch
.