134 lines
3.2 KiB
Bash
134 lines
3.2 KiB
Bash
#!/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
|