diff --git a/scripts/build-remote.pl.in b/scripts/build-remote.pl.in index dd56b600c7..c8e73cebb4 100755 --- a/scripts/build-remote.pl.in +++ b/scripts/build-remote.pl.in @@ -289,13 +289,13 @@ if (system("exec ssh $hostName @sshOpts '(read; kill -INT -\$\$) <&0 & exec nix- # Copy the output from the build machine. -foreach my $output (@outputs) { +my @outputs2 = grep { !isValidPath($_) } @outputs; +if (scalar @outputs2 > 0) { my $maybeSignRemote = ""; $maybeSignRemote = "--sign" if $UID != 0; - next if isValidPath($output); - system("exec ssh $hostName @sshOpts 'nix-store --export $maybeSignRemote $output'" . - "| NIX_HELD_LOCKS=$output @bindir@/nix-store --import > /dev/null") == 0 - or die "cannot copy $output from $hostName: $?"; + system("exec ssh $hostName @sshOpts 'nix-store --export $maybeSignRemote @outputs2'" . + "| NIX_HELD_LOCKS='@outputs2' @bindir@/nix-store --import > /dev/null") == 0 + or die("cannot copy paths " . join(", ", @outputs) . " from `$hostName': $?"); }