Linux software is already pretty well available, since there are many generous providers which setup an rsync with http.
Just look at what’s available for Arch Linux:
https://www.archlinux.org/mirrors/status/
So my intention is not to fix an issue with availability, but help to accelerate a transition from sharing updates via static servers to spread updates from the developer machine to the cluster, accessing them via their CID instead of their filename and everyone help to share the file, making them longer and better available.
If we would transition from static compressed databases to directory listings in IPFS as ‘update lists’, we could also safe a lot of traffic, since IPFS is able to deliver delta updates.
A background process for pacman could refresh the package list constantly, without using a lot of traffic for this. Avoiding any delay for ‘syncing’.
A background process could also start to pin new updates when they are available and when they are fully available a gui program could offer a popup to the user, that new updates are available for installation.
I like also the idea of local community networks, and have a history building them. Software like IPFS can help to reduce internet traffic if there’s just low bandwidth available by sharing updates and software with other computers on the local network.
I also like to add arch-related stuff in the long term on the cluster, for example an aur cache, where scripts parsing the air pkgs can ask ipfs if there’s already a file stored with this hash. If it’s stored on ipfs it’s received via ipfs instead of the link provided in the pkg.
This helps a lot against outages of software developer servers, which was quite an issue for me in the last years on aur packages.
My server would just look at any update on the pkgs and download any new file appearing on the updates. Then checking the sha sum. If it’s fine, the file would be added with the checksum as filename to the cluster, making it available for download from the cache.
Old files are just dropped after a while from the cluster, to make room for new software.
Other arch related stuff would be non-official repos, if someone has trouble paying for the bandwidth necessary to offer a custom repo for the Arch community, we can add the files automatically to the cluster, offering a fast cache.