67d529c81e
Prevent Portal .env from overriding MindSpace storage/users roots, and set launchd env plus runtime docs to use /Users/john/MindSpace paths. Co-authored-by: Cursor <cursoragent@cursor.com>
68 lines
2.4 KiB
Bash
68 lines
2.4 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
MEMIND_ROOT="${MEMIND_SHARED_ROOT:-/Users/john/Project/Memind}"
|
|
|
|
# The standalone MindSpace service may read shared Memind secrets from the
|
|
# Portal env, but its own data roots must stay owned by the standalone service
|
|
# root. Preserve explicitly inherited standalone root overrides, then clear any
|
|
# values that may be sourced from the monolith env below.
|
|
EXPLICIT_MINDSPACE_SERVICE_H5_ROOT="${MINDSPACE_SERVICE_H5_ROOT-}"
|
|
EXPLICIT_MINDSPACE_STORAGE_ROOT="${MINDSPACE_STORAGE_ROOT-}"
|
|
EXPLICIT_H5_USERS_ROOT="${H5_USERS_ROOT-}"
|
|
|
|
if [[ -f "${MEMIND_ROOT}/.env" ]]; then
|
|
set -a
|
|
# shellcheck disable=SC1090
|
|
source "${MEMIND_ROOT}/.env"
|
|
set +a
|
|
fi
|
|
|
|
if [[ -z "${EXPLICIT_MINDSPACE_SERVICE_H5_ROOT}" ]]; then
|
|
unset MINDSPACE_SERVICE_H5_ROOT
|
|
fi
|
|
if [[ -z "${EXPLICIT_MINDSPACE_STORAGE_ROOT}" ]]; then
|
|
unset MINDSPACE_STORAGE_ROOT
|
|
fi
|
|
if [[ -z "${EXPLICIT_H5_USERS_ROOT}" ]]; then
|
|
unset H5_USERS_ROOT
|
|
fi
|
|
|
|
if [[ -f "${ROOT}/.env" ]]; then
|
|
set -a
|
|
# shellcheck disable=SC1090
|
|
source "${ROOT}/.env"
|
|
set +a
|
|
fi
|
|
|
|
if [[ -n "${EXPLICIT_MINDSPACE_SERVICE_H5_ROOT}" ]]; then
|
|
export MINDSPACE_SERVICE_H5_ROOT="${EXPLICIT_MINDSPACE_SERVICE_H5_ROOT}"
|
|
fi
|
|
if [[ -n "${EXPLICIT_MINDSPACE_STORAGE_ROOT}" ]]; then
|
|
export MINDSPACE_STORAGE_ROOT="${EXPLICIT_MINDSPACE_STORAGE_ROOT}"
|
|
fi
|
|
if [[ -n "${EXPLICIT_H5_USERS_ROOT}" ]]; then
|
|
export H5_USERS_ROOT="${EXPLICIT_H5_USERS_ROOT}"
|
|
fi
|
|
|
|
export NODE_ENV=production
|
|
export MINDSPACE_MEMIND_ROOT="${MINDSPACE_MEMIND_ROOT:-${ROOT}/memind-source}"
|
|
export MINDSPACE_SERVICE_H5_ROOT="${MINDSPACE_SERVICE_H5_ROOT:-${MEMIND_ROOT}}"
|
|
export MINDSPACE_STORAGE_ROOT="${MINDSPACE_STORAGE_ROOT:-${ROOT}/data/mindspace}"
|
|
export H5_USERS_ROOT="${H5_USERS_ROOT:-${ROOT}/users}"
|
|
export MINDSPACE_SERVICE_PORT="${MINDSPACE_SERVICE_PORT:-8082}"
|
|
export MINDSPACE_SERVICE_HOST="${MINDSPACE_SERVICE_HOST:-127.0.0.1}"
|
|
export MINDSPACE_REMOTE_AUTH_TOKEN="${MINDSPACE_REMOTE_AUTH_TOKEN:-${TKMIND_SERVER__SECRET_KEY:-}}"
|
|
export MINDSPACE_SERVICE_AGENT_WORKER_ENABLED="${MINDSPACE_SERVICE_AGENT_WORKER_ENABLED:-true}"
|
|
export MINDSPACE_SERVICE_WORKSPACE_MAINTENANCE="${MINDSPACE_SERVICE_WORKSPACE_MAINTENANCE:-true}"
|
|
|
|
NODE_BIN="${NODE_BIN:-/opt/homebrew/opt/node@24/bin/node}"
|
|
if [[ ! -x "${NODE_BIN}" ]]; then
|
|
NODE_BIN="$(command -v node)"
|
|
fi
|
|
|
|
export NODE_PATH="${ROOT}/node_modules"
|
|
|
|
exec "${NODE_BIN}" "${ROOT}/server.mjs"
|