Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data EnvConfig = EnvConfig {}
- class (HasBuildConfig env, HasSourceMap env, HasCompiler env) => HasEnvConfig env where
- envConfigL :: Lens' env EnvConfig
- class HasSourceMap env where
- sourceMapL :: Lens' env SourceMap
- actualCompilerVersionL :: HasSourceMap env => SimpleGetter env ActualCompiler
- appropriateGhcColorFlag :: (HasEnvConfig env, HasRunner env) => RIO env (Maybe String)
- bindirCompilerTools :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Abs Dir)
- compilerVersionDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Rel Dir)
- extraBinDirs :: HasEnvConfig env => RIO env (Bool -> [Path Abs Dir])
- hoogleDatabasePath :: HasEnvConfig env => RIO env (Path Abs File)
- hoogleRoot :: HasEnvConfig env => RIO env (Path Abs Dir)
- hpcReportDir :: HasEnvConfig env => RIO env (Path Abs Dir)
- installationRootDeps :: HasEnvConfig env => RIO env (Path Abs Dir)
- installationRootLocal :: HasEnvConfig env => RIO env (Path Abs Dir)
- packageDatabaseDeps :: HasEnvConfig env => RIO env (Path Abs Dir)
- packageDatabaseExtra :: (HasEnvConfig env, MonadReader env m) => m [Path Abs Dir]
- packageDatabaseLocal :: HasEnvConfig env => RIO env (Path Abs Dir)
- platformGhcRelDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Rel Dir)
- platformGhcVerOnlyRelDir :: (HasGHCVariant env, HasPlatform env, MonadReader env m, MonadThrow m) => m (Path Rel Dir)
- platformSnapAndCompilerRel :: HasEnvConfig env => RIO env (Path Rel Dir)
- shouldForceGhcColorFlag :: (HasEnvConfig env, HasRunner env) => RIO env Bool
- snapshotsDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Abs Dir)
- useShaPathOnWindows :: MonadThrow m => Path Rel Dir -> m (Path Rel Dir)
- shaPathForBytes :: (IsPath Rel t, MonadThrow m) => ByteString -> m (Path Rel t)
Documentation
Configuration after the environment has been setup.
EnvConfig | |
|
Instances
HasPantryConfig EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasLogFunc EnvConfig Source # | |
HasProcessContext EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasTerm EnvConfig Source # | |
HasStylesUpdate EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasBuildConfig EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasCompiler EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasConfig EnvConfig Source # | |
HasEnvConfig EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasSourceMap EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasGHCVariant EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasPlatform EnvConfig Source # | |
Defined in Stack.Types.EnvConfig | |
HasRunner EnvConfig Source # | |
class (HasBuildConfig env, HasSourceMap env, HasCompiler env) => HasEnvConfig env where Source #
envConfigL :: Lens' env EnvConfig Source #
Instances
HasEnvConfig EnvConfig Source # | |
Defined in Stack.Types.EnvConfig |
class HasSourceMap env where Source #
sourceMapL :: Lens' env SourceMap Source #
Instances
HasSourceMap EnvConfig Source # | |
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
.
appropriateGhcColorFlag :: (HasEnvConfig env, HasRunner env) => RIO env (Maybe String) Source #
bindirCompilerTools :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Abs Dir) Source #
Installation root for compiler tools
compilerVersionDir :: (HasEnvConfig env, MonadReader env m, MonadThrow m) => m (Path Rel Dir) Source #
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.
shouldForceGhcColorFlag :: (HasEnvConfig env, HasRunner env) => RIO env Bool Source #
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 #