From d26ddf7015c5d391e2d794782abe970589f24d05 Mon Sep 17 00:00:00 2001 From: Arjun Kathuria Date: Fri, 25 Jun 2021 13:54:38 +0530 Subject: [PATCH] adds rudimentary ghcup bin removal code. TODO: handle windows. --- lib/GHCup.hs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/GHCup.hs b/lib/GHCup.hs index d6eadbc..d9f3e3a 100644 --- a/lib/GHCup.hs +++ b/lib/GHCup.hs @@ -1282,6 +1282,17 @@ rmStackVer ver = do Nothing -> liftIO $ rmLink (binDir "stack" <> exeExt) +-- assuming the current scheme of having just 1 ghcup bin, no version info is required. +rmGhcup :: ( MonadReader AppState m + , MonadIO m + ) + => Excepts '[NotInstalled] m () + +rmGhcup = do + AppState {dirs = Dirs {binDir}} <- lift ask + let ghcupFile = "ghcup" <> exeExt + liftIO $ hideError doesNotExistErrorType $ rmFile (binDir ghcupFile) + rmTool :: ( MonadReader AppState m , MonadLogger m , MonadFail m @@ -1308,8 +1319,7 @@ rmTool ListResult {lVer, lTool, lCross} = do rmStackVer lVer GHCup -> do - -- leaving this unimplemented for now. - pure () + rmGhcup rmGhcupDirs :: ( MonadReader AppState m , MonadIO m