I mean a really simple solution (simple to say, maybe not to do) would be for package managers to require a &quot;backup&quot; repository from a different domain, than if you get a 500 error try the second remote repository.  Use git for its advantages.