
I now realise we need a bit more :-)
So the issue is that we'd like to be able to specify a server by a single URL and be able to find everything else relative to that. Ideally we would do that by some discovery mechanism rather than hard coding relative URLs into the clients, but in the mean time...
From what you've said my imagination makes me think of a page at $URL/jumptable that gives a list of hard coded services and their location on the server. For example, $URL/jumptable might return:
---------------------- package package/$pkg index packages/00-index.tar.gz upload upload/ check check/ accounts account/ -------------------------- Is this the discovery mechanism you had in mind? It allows server(s) to move things around and cabal-install like tools to learn about the locations dynamically - basically replacing the N hard coded URLs with one and requiring some parsing. Perhaps you have thought of something more elegant? Thomas