-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathsetup_pi5.sh
executable file
·107 lines (96 loc) · 4.5 KB
/
setup_pi5.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#!/bin/bash
set -e
#############################################################################
# STEP 1: Update and upgrade the system
#############################################################################
echo "======================================================================="
echo " 1. Update and upgrade the system"
echo "======================================================================="
sudo apt update
sudo apt upgrade -y
#############################################################################
# STEP 2: Install essential development packages
#############################################################################
echo "======================================================================="
echo " 2. Install essential development packages"
echo "======================================================================="
sudo apt install -y \
wget build-essential libssl-dev libbz2-dev libreadline-dev libsqlite3-dev \
zlib1g-dev libncurses5-dev libncursesw5-dev libffi-dev libgdbm-dev \
liblzma-dev uuid-dev tk-dev linux-perf cmake
#############################################################################
# STEP 3: Verify perf installation
#############################################################################
echo "======================================================================="
echo " 3. Verify perf installation"
echo "======================================================================="
if command -v perf >/dev/null 2>&1; then
echo "perf installed successfully."
else
echo "Error: perf installation failed."
exit 1
fi
#############################################################################
# STEP 4: Check and install Python 3.12 if necessary
#############################################################################
echo "======================================================================="
echo " 4. Check and install Python 3.12 if necessary"
echo "======================================================================="
if ! python3.12 --version >/dev/null 2>&1; then
echo "Downloading and building Python 3.12..."
cd /tmp
if [ ! -f /tmp/Python-3.12.0.tgz ]; then
wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz
else
echo "Python 3.12 source archive already exists. Skipping download."
fi
tar -xf Python-3.12.0.tgz
cd Python-3.12.0
./configure --enable-optimizations
sudo make altinstall
else
echo "Python 3.12 is already installed. Skipping build."
fi
#############################################################################
# STEP 5: Create Python virtual environment
#############################################################################
echo "======================================================================="
echo " 5. Create Python virtual environment"
echo "======================================================================="
if [ ! -d pi5_env ]; then
echo "Creating Python virtual environment..."
python3.12 -m venv pi5_env
else
echo "Virtual environment already exists. Skipping creation."
fi
#############################################################################
# STEP 6: Activate the virtual environment and install packages
#############################################################################
echo "======================================================================="
echo " 6. Activate the virtual environment and install packages"
echo "======================================================================="
# shellcheck disable=SC1091
source pi5_env/bin/activate
echo "======================================================================="
echo " 7. Upgrade pip"
echo "======================================================================="
python3.12 -m pip install --upgrade pip
echo "======================================================================="
echo " 8. Install required Python packages"
echo "======================================================================="
python3.12 -m pip install --upgrade \
numpy \
matplotlib \
pandas \
torch \
transformers \
jupyterlab \
ipykernel \
ipywidgets \
seaborn \
sentencepiece
#############################################################################
echo "======================================================================="
echo "Setup script completed successfully!"
echo "Activate your environment using: source pi5_env/bin/activate"
echo "======================================================================="