---
title: "Details"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Details}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
```
# Influential environment variables and options
`DUST_WORKDIR_ROOT`: an environment variable which sets the **root** working directory for compilation of your code. Normally, we use the session-specific directory, which is a good choice. You might want to change this in a few cases:
* You want to generate models from a process and you want these to outlive the lifetime of that process (e.g., for running models on an HPC)
* You want to cache the compilation across sessions
If you set this environment variable, then we'll create models here, each with a name in the pattern `dust_` where `` is the hash of the generated code. This means that if your model changes we'll still recompile it.
`DUST_QUIET`: an environment variable which controls the default level of verbosity when compiling dust models. Set this to a truthy value (e.g., `TRUE`) to change the default. This can always be overridden by providing a value for the `quiet` argument to `dust_compile()` and `dust_package()`.
`DUST_DEBUG`: an environment variable which controls how `pkgload::compile_dll()` compiles the C++ code. Set this to a truthy value (e.g., `TRUE`) to disable optimisation, which allows faster compilation at the cost of slower runtime. This can be overridden by the `debug` argument to `dust_compile()`.