48 lines
1.3 KiB
Bash
48 lines
1.3 KiB
Bash
#!/usr/bin/env zsh
|
|
|
|
cd $HOME
|
|
# Initialize and update submodules
|
|
yadm submodule update --init --recursive
|
|
yadm submodule foreach git pull
|
|
|
|
# Load OS information from /etc/os-release
|
|
eval $(awk '{print "OS_" $0}' /etc/os-release)
|
|
|
|
function pyenv_install() {
|
|
if [[ ${OS_ID} == "arch" ]]; then
|
|
sudo pacman -S --noconfirm pyenv pyenv-virtualenv
|
|
elif [[ ${OS_ID} == "ubuntu" ]]; then
|
|
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
|
|
libreadline-dev libsqlite3-dev wget curl llvm libncursesw5-dev xz-utils \
|
|
tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
|
|
curl https://pyenv.run | bash
|
|
fi
|
|
|
|
pyenv install 3.10.13
|
|
pyenv virtualenv 3.10.13 personal
|
|
pyenv virtualenv 3.10.13 eww-modules
|
|
pyenv global personal
|
|
pyenv rehash
|
|
eval "$(pyenv init -)"
|
|
|
|
# Install packages for personal python environment
|
|
pyenv shell personal
|
|
pip install --upgrade pip
|
|
if [[ -f $HOME/.config/pip/requirements.txt ]]; then
|
|
pip install -r $HOME/.config/pip/requirements.txt
|
|
fi
|
|
|
|
# Install packages for eww-modules
|
|
pyenv shell eww-modules
|
|
pip install --upgrade pip
|
|
if [[ -f $HOME/.config/pip/eww-modules-requirements.txt ]]; then
|
|
pip install -r $HOME/.config/pip/eww-modules-requirements.txt
|
|
fi
|
|
|
|
}
|
|
|
|
# Install pyenv and configure personal and eww-modules python environments
|
|
if [[ ! -d $HOME/.pyenv ]]; then
|
|
pyenv_install
|
|
fi
|