Hi,
Sorry for the late reply.
So in the case we are running swarm nodes that serves the network and hence help fund the substitute server, we can also use these to also upload eris encoded substitute blocks onto the network am I right? The total cost will thus be cost to run the swarm nodes + storage cost of substitute blocks in the network + cost to run substitute servers - money earned by running swarm nodes. But when we don't run swarm nodes which run to serve the network, the total cost is not really affect right as the cost to run swarm nodes will be lessened and no money will be earned.
So in the context of fallback mechanism the user client can send request to the substitute server for the missing block and the substitute server will serve the eris encoded data block back to the user (using HTTP). The responsibility of uploading these missing blocks back to the network is of the third party nodes (which are running to serve the desired content to the network). But how do we send the message to the node to report the missing block on the network? Can it be done by the user itself?
"i can dream about a future where there's a social network that is based on digital signatures and encryption, and my Guix client authorizes compiled binaries based on some weighted transitive closure of signatures of my trusted peers"....Interesting! In the case of accessing Guix substitutes from p2p network, we ensure authorization by Guix team by making sure the urn of the substitute is the urn mentioned in the narinfo (which we get from a trusted source like the substitute server). So in the case of accessing some random compiled binary from the network, we just need to verify the authority of the document providing the urn of the content?
"i value consensual relationships, and that implies that the other party is well informed. and clogging someone's network bandwidth is not an expected behavior from installing a linux distribution."
I agree with this point and also since there are already specialised nodes doing the work of uploading blocks onto the network I guess for now it is better to assign the task to them itself. Also I will give a read about how network's charge for uploading data onto them. As you had mentioned before if the payment is associated with a block id, then maybe we could have any random client upload data onto the network (if of course we are able to ship in with Guix itself, the configuration to upload data onto the said network).
Vijaya Anand