diff --git a/install-systemd-service.sh b/install-systemd-service.sh index ac3f989..bf41d89 100755 --- a/install-systemd-service.sh +++ b/install-systemd-service.sh @@ -44,14 +44,29 @@ fi # Определяем путь к qwen QWEN_PATH=$(su - "$BOT_USER" -c "which qwen" 2>/dev/null || echo "") if [ -z "$QWEN_PATH" ]; then - echo "⚠️ qwen не найден. Установите: npm install -g @anthropic/qwen-code" + echo "⚠️ qwen не найден. Установите: npm install -g @qwen-code/qwen-code" +fi + +# Определяем Node.js путь (для nvm) - динамически через whereis +NODE_BIN=$(su - "$BOT_USER" -c "which node" 2>/dev/null || echo "") +if [ -n "$NODE_BIN" ]; then + NODE_PATH=$(dirname "$NODE_BIN") + # Извлекаем базовый путь nvm (убираем /bin/node) + NVM_BASE=$(dirname "$NODE_PATH") +else + # Fallback: стандартные пути + NVM_BASE="/home/$BOT_USER/.config/nvm/versions/node" + NODE_PATH="$NVM_BASE/current/bin" fi -# Определяем Node.js путь (для nvm) -NODE_PATH=$(dirname "$(su - "$BOT_USER" -c "which node" 2>/dev/null || echo "")") NVM_DIR=$(su - "$BOT_USER" -c "echo \$NVM_DIR" 2>/dev/null || echo "/home/$BOT_USER/.nvm") echo "📝 Создание systemd сервиса..." +echo " Node путь: $NODE_PATH" +echo " NVM база: $NVM_BASE" + +# Вычисляем NODE_LIB_DIR из NODE_PATH +NODE_LIB_DIR=$(dirname "$NODE_PATH")/lib/node_modules # Создаём сервис с подстановкой путей cat > "$SYSTEMD_SERVICE" << EOF @@ -65,7 +80,7 @@ User=$BOT_USER WorkingDirectory=$BOT_DIR Environment="PATH=$NODE_PATH:$BOT_VENV/bin:/home/$BOT_USER/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" Environment="NVM_DIR=$NVM_DIR" -Environment="NODE_PATH=$NODE_PATH" +Environment="NODE_PATH=$NODE_LIB_DIR" ExecStart=$BOT_VENV/bin/python bot.py Restart=always RestartSec=10 diff --git a/telegram-bot.service b/telegram-bot.service index 8f8a6a4..8d516f4 100644 --- a/telegram-bot.service +++ b/telegram-bot.service @@ -6,9 +6,9 @@ After=network.target Type=simple User=%USER% WorkingDirectory=%WORKDIR% -Environment="PATH=/home/%USER%/.config/nvm/versions/node/v24.13.1/bin:%USER%/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" +Environment="PATH=%NODE_BIN_DIR%:%VENV_PATH%:/home/%USER%/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" Environment="NVM_DIR=/home/%USER%/.nvm" -Environment="NODE_PATH=/home/%USER%/.config/nvm/versions/node/v24.13.1/lib/node_modules" +Environment="NODE_PATH=%NODE_LIB_DIR%" ExecStart=%VENV_PATH%/python bot.py Restart=always RestartSec=10