about summary refs log tree commit diff
path: root/scripts/nix-channel.in
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/nix-channel.in')
-rwxr-xr-xscripts/nix-channel.in4
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/nix-channel.in b/scripts/nix-channel.in
index 7b292ee8cf64..4a480ae28b04 100755
--- a/scripts/nix-channel.in
+++ b/scripts/nix-channel.in
@@ -122,7 +122,9 @@ sub update {
         }
 
         # Download the channel tarball.
-        my $fullURL = "$url/nixexprs.tar.bz2";
+        my $fullURL = "$url/nixexprs.tar.xz";
+        system("$Nix::Config::curl --fail --silent --head '$fullURL' > /dev/null") == 0 or
+            $fullURL = "$url/nixexprs.tar.bz2";
         print STDERR "downloading Nix expressions from `$fullURL'...\n";
         my ($hash, $path) = `PRINT_PATH=1 QUIET=1 $Nix::Config::binDir/nix-prefetch-url '$fullURL'`;
         die "cannot fetch `$fullURL'\n" if $? != 0;