Files
server/usr/libexec/nodenv/nodenv-version-file
2026-01-07 20:52:11 +01:00

29 lines
664 B
Bash
Executable File

#!/usr/bin/env bash
# Usage: nodenv version-file [<dir>]
# Summary: Detect the file that sets the current nodenv version
set -e
[ -n "$NODENV_DEBUG" ] && set -x
target_dir="$1"
find_local_version_file() {
local root="$1"
while ! [[ "$root" =~ ^//[^/]*$ ]]; do
if [ -s "${root}/.node-version" ]; then
echo "${root}/.node-version"
return 0
fi
[ -n "$root" ] || break
root="${root%/*}"
done
return 1
}
if [ -n "$target_dir" ]; then
find_local_version_file "$target_dir"
else
find_local_version_file "$NODENV_DIR" || {
[ "$NODENV_DIR" != "$PWD" ] && find_local_version_file "$PWD"
} || echo "${NODENV_ROOT}/version"
fi