I have found that Cabal does not work on IPv6-only networks (which my machine happen to be part of).
The problem is basically this: "ping
hackage.haskell.org" does not resolve host while "ping6
hackage.haskell.org" does. Thus cabal cannot do anything useful on that machine.
Do anyone have a solution for that? I was unable to find any on the internet. ;)