mirror of
https://github.com/commercialhaskell/stackage.git
synced 2026-01-28 15:10:26 +01:00
Delete libraries when unregistering
Pinging @manny-fp
This commit is contained in:
parent
8f74bbee49
commit
eef9c14d24
@ -85,9 +85,20 @@ unregisterPackage :: (ByteString -> IO ()) -- ^ log func
|
|||||||
unregisterPackage log' onUnregister docDir flags ident@(PackageIdentifier name _) = do
|
unregisterPackage log' onUnregister docDir flags ident@(PackageIdentifier name _) = do
|
||||||
log' $ "Unregistering " ++ encodeUtf8 (display ident) ++ "\n"
|
log' $ "Unregistering " ++ encodeUtf8 (display ident) ++ "\n"
|
||||||
onUnregister ident
|
onUnregister ident
|
||||||
|
|
||||||
|
-- Delete libraries
|
||||||
|
sourceProcessWithConsumer
|
||||||
|
(proc "ghc-pkg" ("describe" : flags ++ [unpack $ display ident]))
|
||||||
|
(CT.decodeUtf8
|
||||||
|
$= CT.lines
|
||||||
|
$= CL.mapMaybe parseLibraryDir
|
||||||
|
$= CL.mapM_ (void . tryIO . removeTree))
|
||||||
|
|
||||||
void (readProcessWithExitCode
|
void (readProcessWithExitCode
|
||||||
"ghc-pkg"
|
"ghc-pkg"
|
||||||
("unregister": flags ++ ["--force", unpack $ display name])
|
("unregister": flags ++ ["--force", unpack $ display name])
|
||||||
"")
|
"")
|
||||||
|
|
||||||
void $ tryIO $ removeTree $ docDir </> fpFromText (display ident)
|
void $ tryIO $ removeTree $ docDir </> fpFromText (display ident)
|
||||||
|
where
|
||||||
|
parseLibraryDir = fmap fpFromText . stripPrefix "library-dirs: "
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user