stack-1.4.0: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Stack.Setup

Contents

Synopsis

Documentation

setupEnv #

Arguments

:: (StackM env m, HasBuildConfig env, HasGHCVariant env) 
=> Maybe Text

Message to give user when necessary GHC is not available

-> m EnvConfig 

Modify the environment variables (like PATH) appropriately, possibly doing installation too

ensureCompiler :: (StackM env m, HasConfig env, HasGHCVariant env) => SetupOpts -> m (Maybe ExtraDirs, CompilerBuild, Bool) #

Ensure compiler (ghc or ghcjs) is installed and provide the PATHs to add if necessary

ensureDockerStackExe :: (StackM env m, HasConfig env) => Platform -> m (Path Abs File) #

Ensure Docker container-compatible stack executable is downloaded

getSystemCompiler :: (MonadIO m, MonadLogger m, MonadBaseControl IO m, MonadCatch m) => EnvOverride -> WhichCompiler -> m (Maybe (CompilerVersion, Arch)) #

Get the version of the system compiler, if available

data SetupOpts #

Constructors

SetupOpts 

Fields

defaultSetupInfoYaml :: String #

Default location of the stack-setup.yaml file

Stack binary download

downloadStackReleaseInfo #

Arguments

:: MonadIO m 
=> Maybe String 
-> Maybe String 
-> Maybe String

optional version

-> m StackReleaseInfo 

downloadStackExe #

Arguments

:: (MonadIO m, MonadLogger m, MonadReader env m, HasConfig env) 
=> [(Bool, String)]

acceptable platforms

-> StackReleaseInfo 
-> Path Abs Dir

destination directory

-> (Path Abs File -> IO ())

test the temp exe before renaming

-> m ()