add support for a desync store
this currently needs enabling after every reboot with
sudo mkdir /run/kde-linux-sysupdated/
echo "enable_store: true" | sudo tee /run/kde-linux-sysupdated/config.yaml
there is also a second option force_store: true which can be used to
force store-behavior even when the heuristics want to do the range
requests.
assuming the feature is enabled, the way things work is that first we
check what kind of server we have been directed at. if it is a kde
server, a cacheless cdn, or an unknown server then store mode gets used.
in store mode all remote requests are instead directed at the desync
store on storage.kde.org resulting in many tiny requests instead of a
few big ones. the primary advantage is that they can be synced down from
the origin server relatively quickly, what with being tiny, allowing
more responsive streaming of content (avoiding the dreaded input/output
error that large range requests suffer from)
the additional force_store option makes it so that the server type
gets ignored and the store is always used (mostly only useful for
testing)
Fixes kde-linux#304 (closed)