Como você instala um pacote único no NixOS?


9

Eu tenho uma caixa NixOS que eu mantenho no nixos-16.03canal. Quero que a máquina permaneça em um estado praticamente estável e, portanto, desejo evitar mudar para o nixos-unstablecanal.

No entanto, preciso instalar uma versão mais recente de um pacote que esteja disponível nesse canal ( nodejs-6_xnesta instância). No manual, há uma seção que descreve a instalação com um clique , que parecia a princípio exatamente o que eu precisava. No entanto, o servidor Hydra em http://hydra.nixos.org não parece estar fornecendo nenhum .nixpkgarquivo usado pela nix-install-packageferramenta descrita nessa seção.

O wiki também documenta um processo pelo qual se pode personalizar um pacote (a página é chamada de Modificando Pacotes ), que suponho que poderia ser usada para meus propósitos, embora pareça que eu estaria lutando com a ferramenta em vez de usá- la.

Também perguntei sobre isso no IRC (obrigado M-Ralithpor responder pacientemente às minhas perguntas ignorantes!), Mas não entendi direito como aplicá-lo. O conselho foi "substituir o src e a versão na sua configuração do nixpkgs", que parece que eu poderia escrever uma expressão nix .nixpkgs/configuration.nixe substituir essas propriedades do pacote no meu canal inscrito ( nixos-16.03). Quando perguntei sobre pacotes que não existem no canal, o conselho era "especificar o pacote inteiro em vez de substituir o src e a versão", o que entendo que seria necessário duplicar toda a expressão nix do pacote Estou interessado.nix-env

Para pacotes que existem em outro canal que eu quero instalar, mas permaneço no meu canal atual, existe uma maneira melhor? Quase parece que eu deveria ser capaz de fazer algo assim nix-build <url> | nix-env -i. O que seria ideal é instalar este, mas não ter uma configuração que possa impedir que ele seja atualizado mais tarde, se meu canal atual for atualizado.

Respostas:


8

você pode usar a nix-envferramenta

% nix-env -f https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz -iA tig

ou use a nix-buildferramenta

% nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz -A tig

como isso ajuda!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.