The stack config commands¶
stack config COMMAND
Available commands:
build-files Generate (when applicable) a Cabal file from a
package description in the Hpack format and/or a lock
file for Stack's project-level configuration.
env Print environment variables for use in a shell.
set Set a key in a configuration file to value.
The stack config commands provide assistance with accessing or modifying
Stack's configuration. See stack config for the available commands.
The stack config build-files command¶
stack config build-files generates (when applicable):
-
a Cabal file from a package description in the Hpack format (
package.yaml); and/or -
a lock file for Stack's project-level configuration (by default,
stack.yaml);
without taking any other build steps.
The stack config env command¶
stack config env [--[no-]locals] [--[no-]ghc-package-path] [--[no-]stack-exe]
[--[no-]locale-utf8] [--[no-]keep-ghc-rts]
stack config env outputs a script that sets or unsets environment variables
for a Stack environment. Flags modify the script that is output:
--[no-]locals(enabled by default) include/exclude project package information--[no-]ghc-package-path(enabled by default) setGHC_PACKAGE_PATHenvironment variable or not--[no-]stack-exe(enabled by default) setSTACK_EXEenvironment variable or not--[no-]locale-utf8(disabled by default) set theGHC_CHARENCenvironment variable toUTF-8or not--[no-]keep-ghc-rts(disabled by default) keep/discard anyGHCRTSenvironment variable
The command also accepts flags and options of the
stack build command that
affect the location of the local project installation directory, such as
--profile and --no-strip. For further information, see the documentation of
the project Stack work directory.
The stack config set commands¶
stack config set COMMAND
Available commands:
install-ghc Configure whether or not Stack should automatically
install GHC when necessary.
install-msys Configure whether or not Stack should automatically
install MSYS2 when necessary.
package-index Configure Stack's package index
recommend-stack-upgrade Configure whether or not Stack should notify the user
if it identifes a new version of Stack is available.
resolver Change the snapshot of the current project, using the
(deprecated) resolver key.
snapshot Change the snapshot of the current project.
system-ghc Configure whether or not Stack should use a system
GHC installation.
The stack config set commands allow the values of keys in configuration files
to be set. See stack config set for the available keys.
Note
The config set commands support an existing key only in the form
key: value on a single line.
The stack config set install-ghc command¶
stack config set install-ghc true or false sets the
install-ghc non-project
specific configuration option in a configuration file, accordingly. By default,
the project-level configuration file (stack.yaml, by default) is altered. The
--global flag specifies the user-specific global configuration file
(config.yaml).
The stack config set install-msys command¶
stack config set install-msys true or false sets the
install-msys non-project
specific configuration option in a configuration file, accordingly. By default,
the project-level configuration file (stack.yaml, by default) is altered. The
--global flag specifies the user-specific global configuration file
(config.yaml).
The stack config set package-index download-prefix command¶
stack config set package-index download-prefix <url> sets the
download-prefix key of the
package-index non-project
specific configuration option in a configuration file, accordingly. By default,
the project-level configuration file (stack.yaml, by default) is altered. The
--global flag specifies the user-specific global configuration file
(config.yaml).
The stack config set recommend-stack-upgrade command¶
stack config set recommend-stack-upgrade true or false sets the
recommend-stack-upgrade
non-project specific configuration option in a configuration file, accordingly.
By default, the user-specific global configuration file (config.yaml) is
altered. The --project flag specifies the project-level configuration file
(stack.yaml, by default).
The stack config set resolver command¶
A command corresponding to the
stack config set snapshot command
but using the (deprecated) resolver key instead of the snapshot key.
The stack config set snapshot command¶
stack config set snapshot <snapshot> sets the
snapshot project-specific
configuration option in the project-level configuration file (stack.yaml, by
default) to the specified snapshot.
A snapshot of lts or nightly will be translated into the most recent
available. A snapshot of lts-22 will be translated into the most recent
available in the lts-22 sequence.
If a (deprecated) resolver key is present, it will be replaced by a snapshot
key.
The stack config set system-ghc command¶
stack config set system-ghc true or false sets the
system-ghc non-project
specific configuration option in a configuration file, accordingly. By default,
the project-level configuration file (stack.yaml, by default) is altered. The
--global flag specifies the user-specific global configuration file
(config.yaml).