# Where to mount multifuchsia checkouts before doing a build
# Should be an empty directory when nothing is mounted.
MOUNTPOINT="$HOME/src/fuchsia"

# Which mode to use by default when creating new checkouts, can be "worktree"
# or "snapshot"
DEFAULT_CHECKOUT_MODE="snapshot"

# `./multifuchsia enter` tries to edit your shell prompt to show you which
# checkout you're in. If you don't like this or want to customize it, you can
# disable it here and refer to "$MULTIFUCHSIA_ENTER_ENV" in your own prompt.
EDIT_SHELL_PROMPT="true"

# If true, `./multifuchsia enter` will create a new namespace and mount the
# checkout with the $MOUNTPOINT path. This has the advantage of making all
# checkouts have the same path, but may prevent the ability to use tools like
# RBE that will error out if run in a sub-namespace.
ENTER_ISOLATED_NAMESPACE="false"
