Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
The original problem is due to the fact that the xmonad-contrib package in the Ubuntu repositories does not properly link the files it builds. Nobody seems to want to update and fix this, so it's just broken and issues no warnings. See https://github.com/void-linux/void-packages/issues/6414
After I figured this out, I thought "I'll just install those dependencies from source using cabal and it will be good". That didn't work, I kept getting the same error. This is because the devs for cabal and ghc-pkg seem to be in a feud over whose responsibility it is to make modules available to ghc. See https://github.com/haskell/cabal/issues/1944 and https://github.com/haskell/cabal/issues/6262 and https://gitlab.haskell.org/ghc/ghc/-/issues/17341 for both sides of this issue. After fussing around with their various proposed solutions (none of which worked for me), I finally decided to forego cabal entirely, and stumbled on the guide here https://brianbuccola.com/how-to-install-xmonad-and-xmobar-via-stack/ which uses stack. After installing dependencies, some more fussing with the yaml, and an initial issue with stack (run stack upgrade as soon as you apt install haskell-stack, because SURPRISE the version in the repo is nowhere near the current version), I was able to get XMonad to compile.