Files
assist/install_dependencies.sh

134 lines
3.2 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
echo "TSP智能助手依赖安装脚本"
echo "=========================="
echo
# 检测操作系统
if [[ "$OSTYPE" == "linux-gnu"* ]]; then
OS="linux"
elif [[ "$OSTYPE" == "darwin"* ]]; then
OS="macos"
else
OS="unknown"
fi
echo "检测到操作系统: $OS"
echo
# 安装Node.js和npm
install_nodejs() {
echo "安装Node.js和npm..."
if command -v node &> /dev/null; then
echo "Node.js已安装: $(node --version)"
return 0
fi
case $OS in
"linux")
# Ubuntu/Debian
if command -v apt &> /dev/null; then
echo "使用apt安装Node.js..."
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# CentOS/RHEL
elif command -v yum &> /dev/null; then
echo "使用yum安装Node.js..."
curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
sudo yum install -y nodejs
# Arch Linux
elif command -v pacman &> /dev/null; then
echo "使用pacman安装Node.js..."
sudo pacman -S nodejs npm
else
echo "请手动安装Node.js: https://nodejs.org/"
return 1
fi
;;
"macos")
if command -v brew &> /dev/null; then
echo "使用Homebrew安装Node.js..."
brew install node
else
echo "请安装Homebrew或手动安装Node.js: https://nodejs.org/"
return 1
fi
;;
*)
echo "请手动安装Node.js: https://nodejs.org/"
return 1
;;
esac
}
# 安装Python依赖
install_python_deps() {
echo "安装Python依赖..."
if [ -f "requirements.txt" ]; then
if command -v python3 &> /dev/null; then
python3 -m pip install -r requirements.txt
elif command -v python &> /dev/null; then
python -m pip install -r requirements.txt
else
echo "警告: 未找到Python"
fi
else
echo "警告: 未找到requirements.txt文件"
fi
}
# 安装前端依赖
install_frontend_deps() {
echo "安装前端依赖..."
if [ -d "frontend" ]; then
cd frontend
if [ -f "package.json" ]; then
npm install
else
echo "警告: 未找到package.json文件"
fi
cd ..
else
echo "警告: 未找到frontend目录"
fi
}
# 主安装流程
main() {
echo "开始安装依赖..."
echo
# 安装Node.js
install_nodejs
if [ $? -eq 0 ]; then
echo "Node.js安装成功: $(node --version)"
echo "npm版本: $(npm --version)"
else
echo "Node.js安装失败请手动安装"
fi
echo
# 安装Python依赖
install_python_deps
echo
# 安装前端依赖
install_frontend_deps
echo
echo "依赖安装完成!"
echo
echo "使用方法:"
echo " 启动传统版本: ./start_traditional.sh"
echo " 启动前端开发: ./start_frontend.sh"
echo " 构建前端: ./build_frontend.sh"
}
# 执行主函数
main