Good question! I’d say there should be a mod manager on the receiving end. Something like Limo, that has both generic and some game-specific deployers. But that’s only part of what I want: there should also be a middleware to manage differential downloads between it and the origin.
And when I think about it, it becomes clear that all of this has to be backed by P2P of some sort, as there is no such service that could reliably provide even a simple direct link to an arbitrary binary file, let alone allow you to run some odd directory diff protocol. Unless you have your own server, but this is obviously not an option. So it seems like P2P is the only viable option.
So there should be at least 3 components: a mod manager, a directory diff middleware, and a P2P daemon, and they should all work together. And I just realized that the «directory diff middleware» sounds just like OSTree! But it should be able to pull/push from some kind of P2P remotes instead of HTTP ones. Or something like that.
Isn’t that just a mod manager? So you want a mod manager that supports the games you work on?
Good question! I’d say there should be a mod manager on the receiving end. Something like Limo, that has both generic and some game-specific deployers. But that’s only part of what I want: there should also be a middleware to manage differential downloads between it and the origin.
And when I think about it, it becomes clear that all of this has to be backed by P2P of some sort, as there is no such service that could reliably provide even a simple direct link to an arbitrary binary file, let alone allow you to run some odd directory diff protocol. Unless you have your own server, but this is obviously not an option. So it seems like P2P is the only viable option.
So there should be at least 3 components: a mod manager, a directory diff middleware, and a P2P daemon, and they should all work together. And I just realized that the «directory diff middleware» sounds just like OSTree! But it should be able to pull/push from some kind of P2P remotes instead of HTTP ones. Or something like that.