Você pode tentar instalá-lo usando PRoot . Ou você pode criar seu prefixo personalizado:
NIX_STORE_DIR=/opt/custom/store \
NIX_STATE_DIR=/opt/custom/var/nix \
NIX_DB_DIR=/opt/custom/var/nix/db \
nix-build ...
Esta resposta à questão Gerenciadores de pacotes não-raiz sugere Nix como uma solução. No entanto, a documentação de instalação diz :
The script will invoke
sudo
to create/nix
if it doesn’t already exist. If you don’t have sudo, you should manually create/nix
first asroot
.
Não tenho permissões para fazer em uma máquina de destino. Isso significa que não há nenhuma maneira de eu instalar e, portanto, usar o Nix, a menos que o sysadmin concorde em instalá-lo?
O mesmo se aplica a Guix ?
Você pode tentar instalá-lo usando PRoot . Ou você pode criar seu prefixo personalizado:
NIX_STORE_DIR=/opt/custom/store \
NIX_STATE_DIR=/opt/custom/var/nix \
NIX_DB_DIR=/opt/custom/var/nix/db \
nix-build ...
Você pode, de fato, instalar o Guix sem o make install
final, portanto, sem a necessidade de privilégios de root: link
Tanto o Nix quanto o Guix, quando compilados a partir do código-fonte, permitem que você passe a opção --with-store-dir=${alternative_store_dir}
para seus scripts de configuração. Isso padroniza para /nix/store
e /gnu/store
, respectivamente. Você pode definir isso em algum lugar onde você tenha acesso de gravação.
Esteja ciente de que, para ambos, mudar o caminho da loja significa mudar o hash de muitos derivativos. Isso significa que você não pode mais usar pacotes binários pré-compilados e acabará construindo (quase) tudo a partir da fonte.
Tags nix not-root-user guix