This is a patched version of zsync-curl that makes -u override the URL in the .zsync file instead of overriding the referer of the URL. That is important for downloading from AWS which uses a random URL for the real file every time because of the access token system. The releases within this repo are built manually on the relevant device itself.
Partial/differential file download client over HTTP(S).
Downloads a file over HTTP(S). zsync uses a control file to determine whether any blocks in the file are already known to the downloader, and only downloads the new blocks.
This fork uses libcurl in order to support HTTPS and is mirrored from Launchpad. It has been further modified to respond more gracefully to redirects.
To build and install locally:
cmake -B build
cmake --build build
cmake --install build
To build and install locally:
sudo apt-get -y install git devscripts autotools-dev libcurl4-openssl-dev
git clone https://github.com/AppImage/zsync-curl.git
./zsync-curl/build.sh
To build a deb:
sudo apt-get -y install autotools-dev libcurl4-openssl-dev git debhelper devscripts
git clone https://github.com/AppImage/zsync-curl.git
cd ./zsync-curl/src
debuild -i -us -uc -b
cd -
To download:
zsync_curl https://bintray.com/artifact/download/probono/AppImages/Leafpad-0.8.17-x86_64.AppImage.zsync
To download using a pre-existing seed file (e.g., older version of the same file):
zsync_curl https://bintray.com/artifact/download/probono/AppImages/Scribus-1.5.1.svn.20620-x86_64.AppImage.zsync -i Scribus-1.5.1.svn.20616-x86_64.AppImage
In this example, 94% of the data can be taken from the existing local file, and only 6% need to be downloaded.