#!/bin/bash
set -eu
fixture="$(cd "$(dirname "$0")" && pwd)"
if [ "${1:-}" != inside ]; then
 exec sudo -n -E env "PATH=$PATH" unshare --mount --propagation private "$0" inside "$@"
fi
shift
for dir in ${HOME}/.local/share/vite-plus/js_runtime/node/*/lib/node_modules/npm ${HOME}/.nvm/versions/node/*/lib/node_modules/npm ${HOME}/.local/share/vite-plus/package_manager/pnpm /usr/lib/node_modules/npm /usr/local/lib/node_modules/npm /usr/local/lib/node_modules/pnpm ${HOME}/.nvm/versions/node/v24.22.1/lib/node_modules/npm ${HOME}/.local/share/vite-plus/js_runtime/node/26.13.1/lib/node_modules/npm; do
 if [ -d "$dir" ]; then mount --bind ${fixture}/hidden "$dir"; mount -o remount,bind,ro "$dir"; fi
done
mount --bind ${fixture}/fallback-bin ${HOME}/.local/share/vite-plus/fallback-bin
exec setpriv --reuid="${SUDO_UID}" --regid="${SUDO_GID}" --init-groups "$@"
