about summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/build-remote.pl.in11
-rw-r--r--scripts/download-from-binary-cache.pl.in2
-rwxr-xr-xscripts/download-using-manifests.pl.in1
-rwxr-xr-xscripts/nix-build.in2
-rwxr-xr-xscripts/nix-channel.in3
-rwxr-xr-xscripts/nix-copy-closure.in1
-rwxr-xr-xscripts/nix-install-package.in3
-rwxr-xr-xscripts/nix-prefetch-url.in4
-rwxr-xr-xscripts/nix-pull.in3
-rwxr-xr-xscripts/nix-push.in3
10 files changed, 31 insertions, 2 deletions
diff --git a/scripts/build-remote.pl.in b/scripts/build-remote.pl.in
index 2eb339675904..5f0c72b663b8 100755
--- a/scripts/build-remote.pl.in
+++ b/scripts/build-remote.pl.in
@@ -1,5 +1,6 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use Fcntl qw(:DEFAULT :flock);
 use English '-no_match_vars';
 use IO::Handle;
@@ -7,8 +8,14 @@ use Nix::Config;
 use Nix::SSH;
 use Nix::CopyClosure;
 use Nix::Store;
+use Encode;
 no warnings('once');
 
+STDERR->autoflush(1);
+binmode STDERR, ":encoding(utf8)";
+
+my $debug = defined $ENV{NIX_DEBUG_HOOK};
+
 
 # General operation:
 #
@@ -148,7 +155,7 @@ REQ: while (1) {
             }
         }
 
-        if (defined $ENV{NIX_DEBUG_HOOK}) {
+        if ($debug) {
             print STDERR "load on " . $_->{machine}->{hostName} . " = " . $_->{load} . "\n"
                 foreach @available;
         }
@@ -258,7 +265,7 @@ writeInt($maxSilentTime, $to);
 writeInt($buildTimeout, $to);
 my $res = readInt($from);
 if ($res != 0) {
-    my $msg = readString($from);
+    my $msg = decode("utf-8", readString($from));
     print STDERR "error: $msg on ‘$hostName’\n";
     exit $res;
 }
diff --git a/scripts/download-from-binary-cache.pl.in b/scripts/download-from-binary-cache.pl.in
index e09b051a4aa6..cdce8eb74a41 100644
--- a/scripts/download-from-binary-cache.pl.in
+++ b/scripts/download-from-binary-cache.pl.in
@@ -1,5 +1,6 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use DBI;
 use DBD::SQLite;
 use File::Basename;
@@ -12,6 +13,7 @@ use WWW::Curl::Easy;
 use WWW::Curl::Multi;
 use strict;
 
+binmode STDERR, ":encoding(utf8)";
 
 Nix::Config::readConfig;
 
diff --git a/scripts/download-using-manifests.pl.in b/scripts/download-using-manifests.pl.in
index e849a930e71e..591cd6b43a3a 100755
--- a/scripts/download-using-manifests.pl.in
+++ b/scripts/download-using-manifests.pl.in
@@ -9,6 +9,7 @@ use Nix::Utils;
 use POSIX qw(strftime);
 
 STDOUT->autoflush(1);
+binmode STDERR, ":encoding(utf8)";
 
 my $logFile = "$Nix::Config::logDir/downloads";
 
diff --git a/scripts/nix-build.in b/scripts/nix-build.in
index fb92a4909d4c..f8cf318ff07a 100755
--- a/scripts/nix-build.in
+++ b/scripts/nix-build.in
@@ -1,10 +1,12 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use Nix::Config;
 use Nix::Store;
 use Nix::Utils;
 
+binmode STDERR, ":encoding(utf8)";
 
 my $dryRun = 0;
 my $verbose = 0;
diff --git a/scripts/nix-channel.in b/scripts/nix-channel.in
index 407f27490410..e45b913382a7 100755
--- a/scripts/nix-channel.in
+++ b/scripts/nix-channel.in
@@ -1,11 +1,14 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use File::Basename;
 use File::Path qw(mkpath);
 use Nix::Config;
 use Nix::Manifest;
 
+binmode STDERR, ":encoding(utf8)";
+
 Nix::Config::readConfig;
 
 my $manifestDir = $Nix::Config::manifestDir;
diff --git a/scripts/nix-copy-closure.in b/scripts/nix-copy-closure.in
index 10c2a9171d67..f4d186256b70 100755
--- a/scripts/nix-copy-closure.in
+++ b/scripts/nix-copy-closure.in
@@ -6,6 +6,7 @@ use Nix::Store;
 use Nix::CopyClosure;
 use List::Util qw(sum);
 
+binmode STDERR, ":encoding(utf8)";
 
 if (scalar @ARGV < 1) {
     print STDERR <<EOF
diff --git a/scripts/nix-install-package.in b/scripts/nix-install-package.in
index 9340f1b729e6..23f6efbcdb87 100755
--- a/scripts/nix-install-package.in
+++ b/scripts/nix-install-package.in
@@ -1,9 +1,12 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use Nix::Config;
 use Nix::Utils;
 
+binmode STDERR, ":encoding(utf8)";
+
 
 # Parse the command line arguments.
 my @args = @ARGV;
diff --git a/scripts/nix-prefetch-url.in b/scripts/nix-prefetch-url.in
index 869d29c39909..6effbe208146 100755
--- a/scripts/nix-prefetch-url.in
+++ b/scripts/nix-prefetch-url.in
@@ -1,5 +1,6 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use File::Basename;
 use File::stat;
@@ -7,6 +8,9 @@ use Nix::Store;
 use Nix::Config;
 use Nix::Utils;
 
+binmode STDERR, ":encoding(utf8)";
+
+
 my $hashType = $ENV{'NIX_HASH_ALGO'} || "sha256"; # obsolete
 my $cacheDir = $ENV{'NIX_DOWNLOAD_CACHE'};
 
diff --git a/scripts/nix-pull.in b/scripts/nix-pull.in
index f9785d8e5d19..995b50935964 100755
--- a/scripts/nix-pull.in
+++ b/scripts/nix-pull.in
@@ -1,9 +1,12 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use Nix::Config;
 use Nix::Manifest;
 
+binmode STDERR, ":encoding(utf8)";
+
 my $manifestDir = $Nix::Config::manifestDir;
 
 
diff --git a/scripts/nix-push.in b/scripts/nix-push.in
index b0cb6d0da782..c6d187704bc7 100755
--- a/scripts/nix-push.in
+++ b/scripts/nix-push.in
@@ -1,5 +1,6 @@
 #! @perl@ -w @perlFlags@
 
+use utf8;
 use strict;
 use File::Basename;
 use File::Path qw(mkpath);
@@ -11,6 +12,8 @@ use Nix::Manifest;
 use Nix::Utils;
 use Nix::Crypto;
 
+binmode STDERR, ":encoding(utf8)";
+
 my $tmpDir = mkTempDir("nix-push");
 
 my $nixExpr = "$tmpDir/create-nars.nix";