diff options
| author | tv <tv@krebsco.de> | 2025-12-09 14:38:05 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2025-12-09 14:53:48 +0100 |
| commit | 35c0cd12b0e3094df7404d840f925c7b4aec57f3 (patch) | |
| tree | 5d5660164ad1c6550afa0021997874eda800eb0c | |
| parent | 9fa32e89f56b95ec0d7042293bf097939e572187 (diff) | |
populate: use ssh control socket
| -rw-r--r-- | pkgs/populate/default.nix | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/pkgs/populate/default.nix b/pkgs/populate/default.nix index c526dfb..a16b6df 100644 --- a/pkgs/populate/default.nix +++ b/pkgs/populate/default.nix @@ -268,12 +268,16 @@ let ${ssh' target} ${quote target.host} ${quote command} ''; - ssh' = target: concatMapStringsSep " " quote (flatten [ - "${openssh}/bin/ssh" - (mkUserPortSSHOpts target) - "-T" - target.extraOptions - ]); + ssh' = target: writers.writeDash "ssh-wrapper" '' + exec ${openssh}/bin/ssh \ + ${concatMapStringsSep " " quote (mkUserPortSSHOpts target)} \ + -o ControlMaster=auto \ + -o ControlPath="$TMPDIR"/ssh-%r@$h:%p.sock \ + -o ControlPersist=1h \ + -T \ + ${concatMapStringsSep " " quote target.extraOptions} \ + "$@" + ''; in |
