stack-2.14.0: The Haskell Tool Stack
Safe HaskellSafe-Inferred
LanguageGHC2021

Stack.Types.EnvConfig

Synopsis

Documentation

data EnvConfig Source #

Configuration after the environment has been setup.

Instances

Instances details
HasPantryConfig EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasLogFunc EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasProcessContext EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasTerm EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasStylesUpdate EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasBuildConfig EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasCompiler EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasConfig EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasEnvConfig EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasSourceMap EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasGHCVariant EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasPlatform EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

HasRunner EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

class (HasBuildConfig env, HasSourceMap env, HasCompiler env) => HasEnvConfig env where Source #

Instances

Instances details
HasEnvConfig EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

class HasSourceMap env where Source #

Instances

Instances details
HasSourceMap EnvConfig Source # 
Instance details

Defined in Stack.Types.EnvConfig

actualCompilerVersionL :: HasSourceMap env => SimpleGetter env ActualCompiler Source #

The version of the compiler which will actually be used. May be different than that specified in the SnapshotDef and returned by wantedCompilerVersionL.

bindirCompilerTools :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Abs Dir) Source #

Installation root for compiler tools

extraBinDirs :: HasEnvConfig env => RIO env (Bool -> [Path Abs Dir]) Source #

Get the extra bin directories (for the PATH). Puts more local first

Bool indicates whether or not to include the locals

hoogleDatabasePath :: HasEnvConfig env => RIO env (Path Abs File) Source #

Get the hoogle database path.

hoogleRoot :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Hoogle directory.

hpcReportDir :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Where HPC reports and tix files get stored.

installationRootDeps :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Installation root for dependencies

installationRootLocal :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Installation root for locals

packageDatabaseDeps :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Package database for installing dependencies into

packageDatabaseExtra :: (HasEnvConfig env, MonadReader env m) => m [Path Abs Dir] Source #

Extra package databases

packageDatabaseLocal :: HasEnvConfig env => RIO env (Path Abs Dir) Source #

Package database for installing local packages into

platformGhcRelDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Rel Dir) Source #

Relative directory for the platform and GHC identifier

platformGhcVerOnlyRelDir :: (HasGHCVariant env, HasPlatform env, MonadReader env m, MonadThrow m) => m (Path Rel Dir) Source #

Relative directory for the platform and GHC identifier without GHC bindist build

platformSnapAndCompilerRel :: HasEnvConfig env => RIO env (Path Rel Dir) Source #

Path for platform followed by snapshot name followed by compiler name.

snapshotsDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Abs Dir) Source #

Directory containing snapshots

useShaPathOnWindows :: MonadThrow m => Path Rel Dir -> m (Path Rel Dir) Source #

This is an attempt to shorten Stack paths on Windows to decrease our chances of hitting 260 symbol path limit. The idea is to calculate SHA1 hash of the path used on other architectures, encode with base 16 and take first 8 symbols of it.

shaPathForBytes :: (IsPath Rel t, MonadThrow m) => ByteString -> m (Path Rel t) Source #