ghcup-0.1.17.10: ghc toolchain installer
Copyright(c) Julian Ospald 2020
LicenseLGPL-3.0
Maintainerhasufell@hasufell.de
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

GHCup.Utils.Dirs

Description

 
Synopsis

Documentation

ghcupBaseDir :: IO FilePath Source #

~/.ghcup by default

If GHCUP_USE_XDG_DIRS is set (to anything), then uses 'XDG_DATA_HOME/ghcup' as per xdg spec.

ghcupCacheDir :: IO FilePath Source #

Defaults to '~.ghcupcache'.

If GHCUP_USE_XDG_DIRS is set (to anything), then uses 'XDG_CACHE_HOME/ghcup' as per xdg spec.

ghcupGHCBaseDir :: (MonadReader env m, HasDirs env) => m FilePath Source #

~.ghcupghc by default.

ghcupGHCDir :: (MonadReader env m, HasDirs env, MonadThrow m) => GHCTargetVersion -> m FilePath Source #

Gets '~.ghcupghc/ghcupGHCDir'. The dir may be of the form * armv7-unknown-linux-gnueabihf-8.8.3 * 8.8.4

ghcupHLSBaseDir :: (MonadReader env m, HasDirs env) => m FilePath Source #

~.ghcuphls by default, for new-style installs.

ghcupHLSDir :: (MonadReader env m, HasDirs env, MonadThrow m) => Version -> m FilePath Source #

Gets '~.ghcuphls/hls-ver' for new-style installs.

parseGHCupGHCDir :: MonadThrow m => FilePath -> m GHCTargetVersion Source #

See ghcupToolParser.

relativeSymlink Source #

Arguments

:: FilePath

the path in which to create the symlink

-> FilePath

the symlink destination

-> FilePath 

Like relpath. Assumes the inputs are resolved in case of symlinks.

cleanupTrash :: (MonadIO m, MonadMask m, MonadReader env m, HasLog env, HasDirs env, HasSettings env) => m () Source #