Fehler beim nix-copy-close-Befehl "Befehl nicht gefunden"

508
5ndG

Ich versuche, einen Nix-Abschluss mit meinem Server auf meinen Server zu kopieren

nix-copy-closure user@server.com /nix/store/somelonghash-programname 

aber ich verstehe

bash: nix-store: command not found error: cannot connect to 'user@server.com' 

Wenn ich mich am Server anmelde, kann ssh user@server.comich laufen nix-store --versionund es funktioniert.

Auf beiden Rechnern läuft Ubuntu 16.04.

2

1 Antwort auf die Frage

1
5ndG

Ich habe hier einen Workaround gefunden . Das Skript zum Bereitstellen der Nix-Befehle wird in bereitgestellt ~/.profile. Ich denke, der Grund, aus dem sie nicht verfügbar sind nix-copy-closure, liefert ssh nicht, ~/.profilewenn Befehle nicht interaktiv ausgeführt werden. Hinzufügen

command=". ~/.profile; if [ -n \"$SSH_ORIGINAL_COMMAND\" ]; then eval \"$SSH_ORIGINAL_COMMAND\"; else exec \"$SHELL\"; fi" 

Bevor mein öffentlicher ssh-Schlüssel (und in derselben Zeile) ~/.ssh/authorized_keysauf dem Server eingeht, löst sich das Problem für mich.

Ich würde trotzdem gerne wissen, warum dies nix-copy-closurenicht automatisch geschieht.