For me this worked:
cabal update
cabal install haddock
Edit config file ~/.cabal/config
Enable Documentation: True
(removing "-- " at the beginning of the line is fine)
Cabal Library:
cd ...someNicePlace...
cabal unpack Cabal
Edit file Distribution/Simple/Setup.hs
, therein find defaultHaddockFlags = ...
I switched some of them from False to True:
...
haddockHoogle = Flag True,
...
haddockHtml = Flag True,
...
haddockExecutables = Flag True,
...
haddockHscolour = Flag True,
...
having haddockHscolour the only important one (don't have to change the others if not want to).
Install updated Cabal Library:
sudo cabal install --global
cabal-install (cabal shell command)
To get the updated Cabal Libary working within cabal shell command, I reinstalled cabal-install also:
cd ...someNicePlace...
cabal unpack cabal-install
sudo cabal install --global
Since then the shell command cabal --version
says to me:
cabal-install version 1.16.0.2
using version 1.16.0.3 of the Cabal library
And, as wanted, any new cabal install is now installing full haddock html documentation with source codes hyperlinked as default.