summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorDomen Kožar <domen@dev.si>2014-10-03 10:29:27 +0200
committerDomen Kožar <domen@dev.si>2014-10-03 10:29:27 +0200
commitecf5a08831f18e3ae2fc857c70d60fc11f622dd6 (patch)
treebeadc9b0be1203fd335fe85d873f0c4054d9403d /pkgs/build-support
parentd2dfc6a19fc99a79572b6e722b24051fde59a92a (diff)
parentfd48e801d29adc327fd943e849651b9c85cd7320 (diff)
downloadnixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar.gz
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar.bz2
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar.lz
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar.xz
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.tar.zst
nixlib-ecf5a08831f18e3ae2fc857c70d60fc11f622dd6.zip
Merge pull request #4350 from NixOS/curl_partial_download
fetchurl: resume download of curl exits with status code 18
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/fetchurl/builder.sh10
1 files changed, 9 insertions, 1 deletions
diff --git a/pkgs/build-support/fetchurl/builder.sh b/pkgs/build-support/fetchurl/builder.sh
index 0c6e16551b4a..48881bdb2844 100644
--- a/pkgs/build-support/fetchurl/builder.sh
+++ b/pkgs/build-support/fetchurl/builder.sh
@@ -25,8 +25,16 @@ tryDownload() {
     local url="$1"
     echo
     header "trying $url"
+    local curlexit=18;
+
+    # if we get error code 18, resume partial download
+    while [ $curlexit -eq 18 ]; do
+        $curl -C - --fail "$url" --output "$downloadedFile"
+        local curlexit=$?;
+    done
+
     success=
-    if $curl --fail "$url" --output "$downloadedFile"; then
+    if [ $curlexit -eq 0 ]; then
         success=1
     fi
     stopNest