After a quick look the documentation is excellent: tells me clearly what it does, how, and why!
A messaging system without user identifiers is something I had wondered about, why it hadn't been done as far as I knew.
Ah well… tried to install the CLI client from source (https://github.com/simplex-chat/simplex-chat/blob/stable/doc...), installed the Haskell compiler GHC v9, the Haskell package manager Cabal, `cabal update` went fine, no problem until `cabal install`:
cabal: Could not resolve dependencies:
[__0] next goal: aeson (user goal)
[__0] rejecting: aeson-2.2.0.0, aeson-2.1.2.1, aeson-2.1.2.0, aeson-2.1.1.0,
aeson-2.1.0.0 (constraint from user target requires ==2.0.3.0)
[__0] trying: aeson-2.0.3.0
[__1] trying: base-4.15.1.0/installed-4.15.1.0 (dependency of aeson)
[__2] next goal: android-support (user goal)
[__2] rejecting: android-support-0.1.0.0 (conflict:
base==4.15.1.0/installed-4.15.1.0, android-support => base^>=4.14.3.0)
[__2] fail (backjumping, conflict set: android-support, base)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, aeson, android-support
“android-support”???
Dependency hell again. I have no idea what those things are.
Thanks for the hints, I did read the instructions at the URL I mentioned, but had assumed that GHC 9 would be backwards compatible with GHC 8.
I have no experience with Haskell.
That's a reasonable assumption. It's a bit more complicated than being "backwards compatible". The android-support package needs to say explicitly that it is compatible with GHC 9.x, but it doesn't, so cabal refuses to try to build it.