Luite Stegeman has a mirror of the packages from Hackage.
He uses it to power his incredibly useful hdiff website.
During a Hackage outage, you can set up your local cabal configuration to point to it instead by (temporarily) replacing the remote-repo in your ~/.cabal/config
file with:
remote-repo:
hdiff.luite.com:http://hdiff.luite.com/packages/archive
and then running cabal update
.
I have a ~/.cabal/config
that I use whenever hackage goes down in my lens package.
If you use travis-ci, you can avoid build failures during hackage outages by first copying that config to ~/.cabal/config during before_install. -- You'll still be stuck waiting while it first tries to refresh from the real hackage server, but it only adds a few minutes to buildbot times.