As far as I can see on my machine- cabal is /usr/bin/cabal
- the apt package cabal-install is installed and lists /usr/bin/cabal as a file
So unless something really weird or magic-y happened, my cabal is debian's cabal.
And so -- my diagnosis -- the fact that cabal broke after an OS upgrade suggests that the apt package cabal has something wrong in its dependencies.