From 7634f016ab2a511eb015b3f5ca6c7aabdfb8c8c7 Mon Sep 17 00:00:00 2001
From: Jean-Paul Calderone <exarkun@twistedmatrix.com>
Date: Thu, 22 Jun 2023 12:50:04 -0400
Subject: [PATCH] some minor cleanups, maybe the last

---
 obelisk/frontend/src/Pages/TechDemo.hs | 9 +++++++--
 obelisk/frontend/src/WormholeInvite.hs | 8 ++------
 obelisk/haskell-overrides.nix          | 3 +++
 3 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/obelisk/frontend/src/Pages/TechDemo.hs b/obelisk/frontend/src/Pages/TechDemo.hs
index 2772033..0365571 100644
--- a/obelisk/frontend/src/Pages/TechDemo.hs
+++ b/obelisk/frontend/src/Pages/TechDemo.hs
@@ -340,8 +340,13 @@ networkWidget =
                   pure $ Just txt
 
 
--- | actual work of doing invite (XXX naming is hard)
-doWormholeInvite :: T.Text -> IO (Maybe T.Text)
+-- | Accept an invitation to a magic-folder.
+doWormholeInvite
+    -- | The wormhole-code for the invitation.
+    :: T.Text
+    -- | If the invite is is successful, Just the read cap of the collective
+    -- of the magic-folder.  Otherwise, Nothing.
+    -> IO (Maybe T.Text)
 doWormholeInvite citd = do
   inv <- acceptFolderInvite citd
   Just fd <- getFilesDir
diff --git a/obelisk/frontend/src/WormholeInvite.hs b/obelisk/frontend/src/WormholeInvite.hs
index df55768..a763ad7 100644
--- a/obelisk/frontend/src/WormholeInvite.hs
+++ b/obelisk/frontend/src/WormholeInvite.hs
@@ -40,6 +40,8 @@ instance FromJSON InviteMessage where
   parseJSON _ = error "fixme"
 
 
+-- | Complete a Magic-Folder invitation conversation as a receiver over the
+-- given wormhole connection.
 performInvite :: EncryptedConnection -> IO InviteMessage
 performInvite conn = do
   MagicWormhole.PlainText invite_msg <- atomically $ receiveMessage conn
@@ -80,18 +82,12 @@ instance FromJSON InvitesVersion0 where
 
 receiveInvite :: T.Text -> T.Text -> MagicWormhole.Session -> IO InviteMessage
 receiveInvite nameplate code session = do
-  --  nameplate <- liftIO $ MagicWormhole.allocate session
-  print nameplate
   mailbox <- liftIO $ MagicWormhole.claim session (MagicWormhole.Nameplate nameplate)
-  print mailbox
   peer <- liftIO $ MagicWormhole.open session mailbox
   let passcode = T.encodeUtf8 . T.append (T.append nameplate "-") $ code
-  print passcode
   result <- liftIO $ MagicWormhole.withEncryptedConnection peer (Crypto.Spake2.makePassword passcode) InvitesVersion0 performInvite
-  print result
   MagicWormhole.release session (Just (MagicWormhole.Nameplate nameplate))
   _x <- MagicWormhole.close session (Just mailbox) (Just Happy)
-  print ("done with session" :: T.Text)
   pure result
 
 -- | Take a code like "1-foo-bar" and split off the mailbox, returning a tuple
diff --git a/obelisk/haskell-overrides.nix b/obelisk/haskell-overrides.nix
index bbca331..9ef790d 100644
--- a/obelisk/haskell-overrides.nix
+++ b/obelisk/haskell-overrides.nix
@@ -7,9 +7,12 @@ with pkgs.haskell.lib; {
     "tahoe-chk"
     (nix-thunk.thunkSource ./dep/tahoe-chk)
     {};
+
+  # magic-wormhole depends on this extra crypto library.
   saltine = super.saltine.overrideAttrs (old : {
     nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkg-config ];
   });
+
   tahoe-ssk = self.callCabal2nix
     "tahoe-ssk"
     (nix-thunk.thunkSource ./dep/tahoe-ssk)
-- 
GitLab