GaloisInc / haskell-tor

A Haskell implementation of the Tor protocol.
BSD 3-Clause "New" or "Revised" License
272 stars 19 forks source link

Clean up Hans integration / configuration / building #28

Open acw opened 8 years ago

acw commented 8 years ago

There's a lot of Cabal flags floating around haskell-tor, cryptonite, and tls, and they're making everything a bit of a pain. I'm not sure how to fix things, but if we can figure out a way to fix them that would be great.

iphydf commented 8 years ago

Building with hans on 7.10 fails:

exe/Main.hs:169:21:
    No instance for (tls-1.3.4:Network.TLS.Backend.HasBackend Socket)
      arising from a use of ‘MkNS’
    In the expression: MkNS (hansNetworkStack ns)
    In the first argument of ‘return’, namely
      ‘(MkNS (hansNetworkStack ns), logger)’
    In a stmt of a 'do' block:
      return (MkNS (hansNetworkStack ns), logger)
acw commented 8 years ago

Yeah, this is part of the problem. It will succeed if you change your Cabal command to:

cabal install --constraint "tls +hans"

... or, at least, it should. In hindsight, trying to make this all work with flags is problematic.