Environment Variables

Idris 2 recognises a number of environment variables, to decide where to look for packages, external libraries, code generators, etc. It currently recognises, in approximately the order you’re likely to need them:

Build-time

  • PREFIX - Default way to set the Idris2 installation prefix.

  • IDRIS2_PREFIX - Alternative way to set the Idris2 installation prefix.

Runtime

  • EDITOR - Editor used in REPL :e command.

Both

  • IDRIS2_CG - Codegen backend.

  • IDRIS2_PATH - Directories where Idris2 looks for import files, in addition to the imports in packages

  • IDRIS2_PACKAGE_PATH - Directories where Idris2 looks for Idris 2 packages, in addition to the defaults (which are under the IDRIS2_PREFIX and in the depends subdirectory of the current working directory). Directories are separated by a : on MacOS and *NIX systems, or a ; on Windows

  • IDRIS2_DATA - Directories where Idris2 looks for data files. These are typically support code for code generators.

  • IDRIS2_LIBS - Directories where Idris2 looks for libraries (for code generation).

  • CHEZ - Chez backend: location of the chez executable.

  • RACKET - Racket backend: location of the racket executable.

  • RACKET_RACO - Racket backend: location of the raco executable.

  • IDRIS2_INC_CGS - Code generators to use (comma separated) when compiling modules incrementally.

  • IDRIS2_CC - RefC backend: location of the C compiler executable.

  • IDRIS2_CFLAGS - RefC backend: C compiler flags.

  • IDRIS2_CPPFLAGS - RefC backend: C preprocessor flags.

  • IDRIS2_LDFLAGS - RefC backend: C linker flags.

  • IDRIS2_LDLIBS - RefC backend: C linker library names or flags.

  • CC - RefC backend: C compiler executable (IDRIS2_CC takes precedence).

  • CFLAGS - RefC backend: C compiler flags (IDRIS2_CFLAGS takes precedence).

  • CPPFLAGS - RefC backend: C preprocessor flags (IDRIS2_CPPFLAGS takes precedence).

  • LDFLAGS - RefC backend: C linker flags (IDRIS2_LDFLAGS takes precedence).

  • LDLIBS - RefC backend: C linker library names or flags.

  • NODE - NodeJS backend: node executable.

  • PATH - PATH variable is used to search for executables in certain codegens.

  • NO_COLOR - Instruct Idris not to print colour to stdout. Passing the –colour/–color option will supersede this environment variable.

  • GAMBIT_GSI - Gambit backend: location of the gsi executable.

  • GAMBIT_GSC - Gambit backend: location of the gsc executable.

  • GAMBIT_GSC_BACKEND - Gambit backend: arguments passed to gsc.