Skip to content

Spec for init scripts and sandbox updates

David Allsopp edited this page Aug 5, 2021 · 7 revisions

Overview

opam has a series of embedded shell scripts and shell commands which are used in three contexts as part of:

  • opam init to set-up automatic switch detection based on CWD and command completion
  • opam env to set-up the shell environment
  • opam install to set-up the sandbox

Updating these requires updating every supported version of opam. The present mechanism is a little cumbersome (requiring the user to opam init --reinit) and can also result in unusable opam releases (e.g. from fish syntax removal).

This spec proposes moving the scripts and shell data to a separate repository which can be updated and released separately, allowing alterations to the sandbox and fixes to shell commands without having to re-release opam.