Skip to content

Define a default set of env vars to always pass up (regardless of loadout/minimal.toml) #789

Description

@norrietaylor

Summary

We should collect a set of environment variables that are always passed up regardless of the configured loadout or minimal.toml. The idea is to have sane defaults so users don't have to manually enumerate common interactive/shell env vars.

Motivation

From discussion:

  • There's a set of env vars that is implied for interactive sessions — similar to what SSH passes by default for interactive/shell sessions (e.g. all the LC_* vars, TERM, etc.).
  • Some packages (e.g. Go) spec a set of env vars that should be passed through.
  • Sane defaults here would improve the out-of-the-box experience.

Proposed work

  • Decide on the default set of env vars to always pass up (e.g. TERM, LC_*, LANG, and similar).
  • Look at prior art (SSH's SendEnv/AcceptEnv defaults, Go's documented env vars) for reference.
  • Implement passing these through regardless of loadout/minimal.toml.
  • Allow overriding/extending the defaults via configuration.

Context

Originating from a Slack discussion about whether to collect a set of env that should be passed up regardless of loadout/minimal.toml.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions