env-wrapper 985 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env bash
  2. function is_root {
  3. if [ ${EUID:-$(id -u)} -eq 0 ]; then
  4. return 0
  5. fi
  6. return 1
  7. }
  8. is_root || echo "You might experience some issues with running this as a user. Consider using sudo."
  9. export VSCS_CONFIG="$(is_root && echo "${SNAP_DATA}" || echo "${SNAP_USER_DATA}")/config.yaml"
  10. export VSCS_UDD="$(is_root && echo "${SNAP_DATA}" || echo "${SNAP_USER_DATA}")/user-data"
  11. export VSCS_EXT="$(is_root && echo "${SNAP_DATA}" || echo "${SNAP_USER_DATA}")/extensions"
  12. export VSCS_USD="$(is_root && echo "${SNAP_DATA}" || echo ${SNAP_USER_DATA})"
  13. export VSCS_SSH="${SNAP_USER_COMMON}/.ssh"
  14. if [ ! -d "${VSCS_UDD}" ]; then
  15. mkdir -p "${VSCS_UDD}"
  16. fi
  17. if [ ! -d "${VSCS_EXT}" ]; then
  18. mkdir -p "${VSCS_EXT}"
  19. fi
  20. if [ "$(basename ${1})" == "code-server" ]; then
  21. ARGS=(--config "${VSCS_CONFIG}")
  22. ARGS+=(--user-data-dir "${VSCS_UDD}")
  23. ARGS+=(--extensions-dir "${VSCS_EXT}")
  24. ARGS+=("${VSCS_USD}")
  25. set -- "$@" "${ARGS[@]}"
  26. fi
  27. exec $@