From 99a7770d5f4ba820273b7062d99fb7b48bedfa5a Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Wed, 30 Jul 2025 16:16:54 +0200 Subject: [PATCH] Build-script: retry download of external data There are occasional build failures if the server providing 3rd party content cannot be reached. Notably x42-plugins.com is lately overloaded by LLM scrapers again. --- tools/linux_packaging/build | 27 ++++++++++++++------------- tools/osx_packaging/osx_build | 27 ++++++++++++++------------- tools/x-win/package.sh | 27 ++++++++++++++------------- 3 files changed, 42 insertions(+), 39 deletions(-) diff --git a/tools/linux_packaging/build b/tools/linux_packaging/build index 37bd31371b..3071ac7867 100755 --- a/tools/linux_packaging/build +++ b/tools/linux_packaging/build @@ -35,6 +35,7 @@ EXENAME=ardour BUILDTYPE="" NOSTRIP="libsuil|libserd|libsord|liblilv|libsratom|liblrdf|libardour|libpbd|libevoral" X42PLUGINS="x42-autotune x42-midifilter x42-stereoroute setBfree x42-avldrums x42-limiter x42-tuner" +CURLOPT="-s -S --retry-connrefused --retry 3" : ${HARRISONCHANNELSTRIP=harrison_channelstrip} : ${HARRISONLV2=harrison_lv2s-n} @@ -720,7 +721,7 @@ if test x$WITH_HARRISON_LV2 != x ; then echo "Adding Harrison LV2s" mkdir -p $APPLIB/LV2 - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/${HARRISONLV2}.${HARCH}.zip" \ -o "${CACHEDIR}/${HARRISONLV2}.${HARCH}.zip" \ "${HARRISONDSPURL}/${HARRISONLV2}.${HARCH}.zip" @@ -731,7 +732,7 @@ if test x$WITH_HARRISON_VBM != x ; then echo "Including Harrison VBM Channelstrip LV2" mkdir -p $APPLIB/LV2 - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/harrison_vbm.${HARCH}.zip" \ -o "${CACHEDIR}/harrison_vbm.${HARCH}.zip" \ "${HARRISONDSPURL}/harrison_vbm.${HARCH}.zip" @@ -742,7 +743,7 @@ if test -n "$MIXBUS"; then echo "Adding Mixbus Channelstrip" mkdir -p $APPLIB/ladspa/strip/ - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/${HARRISONCHANNELSTRIP}.${HARCH}.so" \ -o "${CACHEDIR}/${HARRISONCHANNELSTRIP}.${HARCH}.so" \ "${HARRISONDSPURL}/${HARRISONCHANNELSTRIP}.${HARCH}.so" @@ -754,7 +755,7 @@ if test -n "$MIXBUS"; then echo "Adding Harrison Vamp Plugins" VAMPARCH="${HARCH}gcc5" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/harrison_vamp.${VAMPARCH}.so" \ -o "${CACHEDIR}/harrison_vamp.${VAMPARCH}.so" \ "${HARRISONDSPURL}/harrison_vamp.${VAMPARCH}.so" @@ -764,7 +765,7 @@ if test -n "$MIXBUS"; then chmod +x $APPLIB/harrison_vamp.so # Mixbus Bundled Media Content - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/MixbusBundledMedia.zip" \ -o "${CACHEDIR}/MixbusBundledMedia.zip" \ "https://builder.harrisonconsoles.com/pub/share/MixbusBundledMedia.zip" @@ -777,7 +778,7 @@ if test -n "$MIXBUS"; then elif test -z "$LIVETRAX" -a -z "$VBM"; then echo "Fetching Ardour bundled content" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/ArdourBundledMedia.zip" \ -o "${CACHEDIR}/ArdourBundledMedia.zip" \ "http://stuff.ardour.org/loops/ArdourBundledMedia.zip" @@ -798,7 +799,7 @@ if test x$WITH_GMSYNYTH != x ; then echo "Adding General MIDI Synth LV2" for proj in x42-gmsynth ; do - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/linux/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/linux/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/linux/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip \ "${CACHEDIR}/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip" @@ -813,7 +814,7 @@ if test x$WITH_COMMERCIAL_X42_LV2 != x ; then echo "Adding commercial x42 Plugins" for proj in x42-meters x42-eq x42-whirl; do - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/linux/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/linux/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/linux/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip \ "${CACHEDIR}/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip" @@ -837,7 +838,7 @@ if test x$WITH_GRATIS_X42_LV2 != x ; then fi fi - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/linux/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/linux/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/linux/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip \ "${CACHEDIR}/${proj}-lv2-linux-${WARCH}-${X42_VERSION}.zip" @@ -849,7 +850,7 @@ fi if test x$WITH_HARVID != x ; then cd $APPBIN - HARVID_VERSION=$(curl -s -S http://ardour.org/files/video-tools/harvid_version.txt) + HARVID_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/harvid_version.txt) rsync -Pa \ rsync://ardour.org/video-tools/harvid-${MULTIARCH}-${HARVID_VERSION}.tgz \ @@ -863,7 +864,7 @@ fi if test x$WITH_XJADEO != x ; then cd $APPBIN - XJADEO_VERSION=$(curl -s -S http://ardour.org/files/video-tools/xjadeo_version.txt) + XJADEO_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/xjadeo_version.txt) rsync -Pa \ rsync://ardour.org/video-tools/xjadeo-${MULTIARCH}-${XJADEO_VERSION}.tgz \ @@ -880,9 +881,9 @@ fi if test x$DEMO_SESSION_URL != x ; then mkdir -p $Shared/sessions - DEMO_SESSIONS=$(curl -s -S --fail $DEMO_SESSION_URL/index.txt) + DEMO_SESSIONS=$(curl ${CURLOPT} --fail $DEMO_SESSION_URL/index.txt) for demo in $DEMO_SESSIONS; do - curl -s -S --fail -# -o $Shared/sessions/$demo $DEMO_SESSION_URL/$demo + curl ${CURLOPT} --fail -# -o $Shared/sessions/$demo $DEMO_SESSION_URL/$demo done fi diff --git a/tools/osx_packaging/osx_build b/tools/osx_packaging/osx_build index bfa37dff72..54b82a204f 100755 --- a/tools/osx_packaging/osx_build +++ b/tools/osx_packaging/osx_build @@ -26,6 +26,7 @@ STRIP=1 PRINT_SYSDEPS= WITH_NLS=1 X42PLUGINS="x42-autotune x42-midifilter x42-stereoroute setBfree x42-avldrums x42-limiter x42-tuner" +CURLOPT="-s -S --retry-connrefused --retry 3" : ${HARRISONCHANNELSTRIP=harrison_channelstrip} : ${HARRISONLV2=harrison_lv2s-n} @@ -705,7 +706,7 @@ fi if test x$WITH_HARRISON_LV2 != x ; then echo "Bundling Harrison XT plugins" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/${HARRISONLV2}.${OSX_BENSID}.zip" \ -o "${CACHEDIR}/${HARRISONLV2}.${OSX_BENSID}.zip" \ "${HARRISONDSPURL}/${HARRISONLV2}.${OSX_BENSID}.zip" @@ -716,7 +717,7 @@ if test x$WITH_HARRISON_LV2 != x ; then fi if test x$WITH_HARRISON_VBM != x ; then - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/harrison_vbm.${OSX_BENSID}.zip" \ -o "${CACHEDIR}/harrison_vbm.${OSX_BENSID}.zip" \ "${HARRISONDSPURL}/harrison_vbm.${OSX_BENSID}.zip" @@ -728,7 +729,7 @@ fi if test x$WITH_HARVID != x ; then echo "installing harvid..." - HARVID_VERSION=$(curl -s -S http://ardour.org/files/video-tools/harvid_version.txt) + HARVID_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/harvid_version.txt) rsync -Pa \ rsync://ardour.org/video-tools/harvid-${HARVID_ARCH}-${HARVID_VERSION}.tgz \ @@ -741,7 +742,7 @@ fi if test x$WITH_XJADEO != x ; then echo "installing video monitor.." - XJADEO_VERSION=$(curl -s -S http://ardour.org/files/video-tools/xjadeo_version.txt) + XJADEO_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/xjadeo_version.txt) rsync -Pa \ rsync://ardour.org/video-tools/jadeo${XJADEO_ARCH}-${XJADEO_VERSION:1}.dmg \ @@ -775,7 +776,7 @@ if test x$WITH_GMSYNTH != x ; then mkdir -p "${PRODUCT_PKG_DIR}/${APPROOT}/lib/LV2" for proj in x42-gmsynth; do - X42_VERSION=$(curl -s -S http://${OSX_X42URI}/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://${OSX_X42URI}/${proj}.latest.txt) rsync -a -q --partial \ rsync://${OSX_X42URI}/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip \ "$CACHEDIR/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip" @@ -789,7 +790,7 @@ if test x$WITH_COMMERCIAL_X42_LV2 != x ; then mkdir -p "${PRODUCT_PKG_DIR}/${APPROOT}/lib/LV2" for proj in x42-meters x42-eq x42-whirl; do - X42_VERSION=$(curl -s -S http://${OSX_X42URI}/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://${OSX_X42URI}/${proj}.latest.txt) rsync -a -q --partial \ rsync://${OSX_X42URI}/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip \ "$CACHEDIR/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip" @@ -813,7 +814,7 @@ if test x$WITH_GRATIS_X42_LV2 != x ; then fi fi - X42_VERSION=$(curl -s -S http://${OSX_X42URI}/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://${OSX_X42URI}/${proj}.latest.txt) rsync -a -q --partial \ rsync://${OSX_X42URI}/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip \ "$CACHEDIR/${proj}-lv2-${OSX_X42ID}-${X42_VERSION}.zip" @@ -835,7 +836,7 @@ if test -n "$MIXBUS"; then mkdir -p "${PRODUCT_PKG_DIR}/${APPROOT}/lib/ladspa/strip" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/${HARRISONCHANNELSTRIP}.${OSX_BENSID}.so" \ -o "${CACHEDIR}/${HARRISONCHANNELSTRIP}.${OSX_BENSID}.so" \ "${HARRISONDSPURL}/${HARRISONCHANNELSTRIP}.${OSX_BENSID}.so" @@ -845,7 +846,7 @@ if test -n "$MIXBUS"; then echo "deploying harrison vamp plugins for $OSX_BENSID" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/harrison_vamp.${OSX_BENSID}.dylib" \ -o "${CACHEDIR}/harrison_vamp.${OSX_BENSID}.dylib" \ "${HARRISONDSPURL}/harrison_vamp.${OSX_BENSID}.dylib" @@ -854,7 +855,7 @@ if test -n "$MIXBUS"; then "${PRODUCT_PKG_DIR}/${APPROOT}/lib/harrison_vamp.dylib" # Mixbus Bundled Media Content - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/MixbusBundledMedia.zip" \ -o "${CACHEDIR}/MixbusBundledMedia.zip" \ "https://builder.harrisonconsoles.com/pub/share/MixbusBundledMedia.zip" @@ -867,7 +868,7 @@ if test -n "$MIXBUS"; then fi elif test -z "$LIVETRAX" -a -z "$VBM" ; then echo "Fetching Ardour bundled content" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${CACHEDIR}/ArdourBundledMedia.zip" \ -o "${CACHEDIR}/ArdourBundledMedia.zip" \ "http://stuff.ardour.org/loops/ArdourBundledMedia.zip" @@ -904,9 +905,9 @@ fi if test x$DEMO_SESSION_URL != x ; then mkdir -p ${PRODUCT_PKG_DIR}/$Shared/sessions - DEMO_SESSIONS=$(curl -s -S --fail $DEMO_SESSION_URL/index.txt) + DEMO_SESSIONS=$(curl ${CURLOPT} --fail $DEMO_SESSION_URL/index.txt) for demo in $DEMO_SESSIONS; do - curl -s -S --fail -# -o ${PRODUCT_PKG_DIR}/$Shared/sessions/$demo $DEMO_SESSION_URL/$demo + curl ${CURLOPT} --fail -# -o ${PRODUCT_PKG_DIR}/$Shared/sessions/$demo $DEMO_SESSION_URL/$demo done fi diff --git a/tools/x-win/package.sh b/tools/x-win/package.sh index 2a04d07c6c..1b2af7ee89 100755 --- a/tools/x-win/package.sh +++ b/tools/x-win/package.sh @@ -16,6 +16,7 @@ test -f gtk2_ardour/wscript || exit 1 : ${MAKEFLAGS=-j4} : ${TMPDIR=/var/tmp} : ${SRCCACHE=/var/tmp/winsrc} # source-code tgz cache +: ${CURLOPT="-s -S --retry-connrefused --retry 3"} : ${HARRISONCHANNELSTRIP=harrison_channelstrip} : ${HARRISONLV2=harrison_lv2s-n} @@ -259,7 +260,7 @@ du -sh $DESTDIR if test -n "$WITH_HARVID"; then echo " === Including harvid" - HARVID_VERSION=$(curl -s -S http://ardour.org/files/video-tools/harvid_version.txt) + HARVID_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/harvid_version.txt) rsync -a -q --partial \ rsync://ardour.org/video-tools/harvid_${WARCH}-${HARVID_VERSION}.tar.xz \ @@ -271,7 +272,7 @@ fi if test -n "$WITH_XJADEO"; then echo " === Including video-monitor" - XJADEO_VERSION=$(curl -s -S http://ardour.org/files/video-tools/xjadeo_version.txt) + XJADEO_VERSION=$(curl ${CURLOPT} http://ardour.org/files/video-tools/xjadeo_version.txt) rsync -a -q --partial \ rsync://ardour.org/video-tools/xjadeo_${WARCH}-${XJADEO_VERSION}.tar.xz \ @@ -327,7 +328,7 @@ if test x$WITH_GMSYNTH != x ; then echo "Adding General MIDI Synth LV2" for proj in x42-gmsynth; do - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/win/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/win/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/win/${proj}-lv2-${WARCH}-${X42_VERSION}.zip \ "${SRCCACHE}/${proj}-lv2-${WARCH}-${X42_VERSION}.zip" @@ -341,7 +342,7 @@ if test x$WITH_COMMERCIAL_X42_LV2 != x ; then echo "Adding commercial x42 Plugins" for proj in x42-meters x42-eq x42-whirl; do - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/win/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/win/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/win/${proj}-lv2-${WARCH}-${X42_VERSION}.zip \ "${SRCCACHE}/${proj}-lv2-${WARCH}-${X42_VERSION}.zip" @@ -366,7 +367,7 @@ if test x$WITH_GRATIS_X42_LV2 != x ; then fi fi - X42_VERSION=$(curl -s -S http://x42-plugins.com/x42/win/${proj}.latest.txt) + X42_VERSION=$(curl ${CURLOPT} http://x42-plugins.com/x42/win/${proj}.latest.txt) rsync -a -q --partial \ rsync://x42-plugins.com/x42/win/${proj}-lv2-${WARCH}-${X42_VERSION}.zip \ "${SRCCACHE}/${proj}-lv2-${WARCH}-${X42_VERSION}.zip" @@ -379,7 +380,7 @@ if test x$WITH_HARRISON_LV2 != x ; then echo "Including Harrison LV2s" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/${HARRISONLV2}.${WARCH}.zip" \ -o "${SRCCACHE}/${HARRISONLV2}.${WARCH}.zip" \ "${HARRISONDSPURL}/${HARRISONLV2}.${WARCH}.zip" @@ -391,7 +392,7 @@ if test x$WITH_HARRISON_VBM != x ; then echo "Including Harrison VBM Channelstrip LV2" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/harrison_vbm.${WARCH}.zip" \ -o "${SRCCACHE}/harrison_vbm.${WARCH}.zip" \ "${HARRISONDSPURL}/harrison_vbm.${WARCH}.zip" @@ -405,7 +406,7 @@ if test -n "$MIXBUS"; then echo "Deploying Harrison Mixbus Channelstrip" mkdir -p $ALIBDIR/ladspa/strip - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/${HARRISONCHANNELSTRIP}.${WARCH}.dll" \ -o "${SRCCACHE}/${HARRISONCHANNELSTRIP}.${WARCH}.dll" \ "${HARRISONDSPURL}/${HARRISONCHANNELSTRIP}.${WARCH}.dll" @@ -415,7 +416,7 @@ if test -n "$MIXBUS"; then echo "Deploying Harrison Vamp Plugins" mkdir -p $ALIBDIR/vamp - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/harrison_vamp.${WARCH}.dll" \ -o "${SRCCACHE}/harrison_vamp.${WARCH}.dll" \ "${HARRISONDSPURL}/harrison_vamp.${WARCH}.dll" @@ -424,7 +425,7 @@ if test -n "$MIXBUS"; then "$ALIBDIR/vamp/harrison_vamp.dll" # Mixbus Bundled Media Content - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/MixbusBundledMedia.zip" \ -o "${SRCCACHE}/MixbusBundledMedia.zip" \ "https://builder.harrisonconsoles.com/pub/share/MixbusBundledMedia.zip" @@ -436,7 +437,7 @@ if test -n "$MIXBUS"; then fi elif test -z "$LIVETRAX" -a -z "$VBM"; then echo "Fetching Ardour bundled media" - curl -s -S --fail -# \ + curl ${CURLOPT} --fail -# \ -z "${SRCCACHE}/ArdourBundledMedia.zip" \ -o "${SRCCACHE}/ArdourBundledMedia.zip" \ "http://stuff.ardour.org/loops/ArdourBundledMedia.zip" @@ -452,9 +453,9 @@ fi if test x$DEMO_SESSION_URL != x ; then mkdir -p $DESTDIR/share/${LOWERCASE_DIRNAME}/sessions - DEMO_SESSIONS=$(curl -s -S --fail $DEMO_SESSION_URL/index.txt) + DEMO_SESSIONS=$(curl ${CURLOPT} --fail $DEMO_SESSION_URL/index.txt) for demo in $DEMO_SESSIONS; do - curl -s -S --fail -# -o $DESTDIR/share/${LOWERCASE_DIRNAME}/sessions/$demo $DEMO_SESSION_URL/$demo + curl ${CURLOPT} --fail -# -o $DESTDIR/share/${LOWERCASE_DIRNAME}/sessions/$demo $DEMO_SESSION_URL/$demo done fi