fix: использовать bash --login для загрузки nvm окружения

- bash --login загружает .bashrc где инициализируется nvm
- Исправляет определение пути к qwen и node

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
mirivlad 2026-02-25 15:30:17 +08:00
parent 1ed49841c7
commit ea6aebedef
1 changed files with 5 additions and 5 deletions

View File

@ -42,14 +42,14 @@ if [ ! -f "$BOT_DIR/.env" ]; then
exit 1
fi
# Определяем путь к qwen
QWEN_PATH=$(sudo -u "$BOT_USER" which qwen 2>/dev/null || echo "")
# Определяем путь к qwen через bash --login чтобы загрузить .bashrc с nvm
QWEN_PATH=$(sudo -u "$BOT_USER" bash --login -c "which qwen" 2>/dev/null || echo "")
if [ -z "$QWEN_PATH" ]; then
echo "⚠️ qwen не найден. Установите: npm install -g @qwen-code/qwen-code"
fi
# Определяем Node.js путь (для nvm) - динамически через whereis
NODE_BIN=$(sudo -u "$BOT_USER" which node 2>/dev/null || echo "")
# Определяем Node.js путь (для nvm) - через bash --login
NODE_BIN=$(sudo -u "$BOT_USER" bash --login -c "which node" 2>/dev/null || echo "")
if [ -n "$NODE_BIN" ]; then
NODE_PATH=$(dirname "$NODE_BIN")
# Извлекаем базовый путь nvm (убираем /bin/node)
@ -60,7 +60,7 @@ else
NODE_PATH="$NVM_BASE/current/bin"
fi
NVM_DIR=$(sudo -u "$BOT_USER" bash -c 'echo $NVM_DIR' 2>/dev/null || echo "/home/$BOT_USER/.nvm")
NVM_DIR="/home/$BOT_USER/.nvm"
echo "📝 Создание systemd сервиса..."
echo " Node путь: $NODE_PATH"