Olhando para a fonte , parece muito provavelmente você tem outro diretório nixpkgs
em algum lugar em ~
.
nix-env
pesquisa (recursivamente) todos os diretórios para default.nix
adicionando o diretório pai como um atributo de nível superior.
Usar nix-env -f ~
parece ser uma má idéia - muito para pesquisar e chances para tais colisões. A menos que haja algo que esteja faltando, o symlinking ~/nixpkgs
into ~/.nix-defexpr
parece ser uma boa solução.
Não há nada errado em simplesmente usar nix-env -f nixpkgs -iA exercism
. Nesse formato, nix vê um default.nix
diretamente no argumento -f
e usa isso como o atributo de nível superior definido.
Se você não encontrar outro diretório nixpkgs, eu tentarei usar a opção --show-trace
.