Make it possible to resume an automatic upgrade download
reported by users, but we do it only if it’s cheap to implement because it might be superseded if we look into replacing our upgrader.
Downloading target files should be more robust on flaky Internet connections.
E.g. when a target file download times out, it should be retried a few times. Ideally, the download should be resumed using the already downloaded partial content.
Tails::IUK::TargetFile::Download currently uses
Tails::IUK::LWP::UserAgent::WithProgress, which is a child class of
Possible implentation ideas:
- https://metacpan.org/pod/LWP::UserAgent::ExponentialBackoff - not in Debian, does not resume interrupted downloads
- https://metacpan.org/pod/LWP::UserAgent::Determined - in Debian, does not resume interrupted downloads
- https://metacpan.org/pod/LWP::UserAgent::Patch::Retry - not in Debian, does not resume interrupted downloads
- code samples that use the Range header when needed
- more code samples
If we instead used Curl:
- we could switch to the
curlCLI tool that has a
Alternatively, there could be a button for manually retrying or resuming an interrupted download.
Feature Branch: feature/15875-upgrader-resume-iuk-download
Testing SOCKS proxying
Thanks to anonym for figuring this out!
ssh -N -D 127.0.0.1:6666 localhost
Target server (e.g. web server)
netcat -l 8080
# /etc/tor/torsocks.conf needs "AllowOutboundLocalhost 1" echo test1234 | torsocks --user foo --pass bar --port 6666 netcat localhost 8080