#!/bin/bash # install pyenv? echo " # # ## # # ### ## ### #### # # # # #### # # # # # # # ## # # #### ### # # # # ### # # # # # # # # #### # # # # # ## # # # # # # ### #### installing... " echo ' 1) setting up folder... ' # install dir? echo "Where should komrade live on your device?" path_komrade_default="`realpath ~/komrade`" read -p "[$path_komrade_default] " path_komrade if [ -z "$path_komrade" ] then path_komrade=$path_komrade_default fi if [ ! -d "$path_komrade" ] then mkdir -p $path_komrade echo "created $path_komrade" fi echo ' 2) downloading Komrade... ' path_repo="$path_komrade/code" if command -v git &> /dev/null then echo "using git..." if [ -d "$path_repo" ] then cd $path_repo git pull else cd $path_komrade echo "Use HTTPS or SSH for git?" read -p "[HTPS/ssh] " git_method if [ "$git_method" = "ssh" ] then echo "using ssh..." git clone git@github.com:Komrade/Komrade.git else git clone https://github.com/Komrade/Komrade.git fi mv Komrade code fi else cd $path_komrade curl -LO https://github.com/Komrade/Komrade/archive/master.zip unzip master.zip rm master.zip cp -rT Komrade-master code rm -r Komrade-master fi cd $path_komrade echo ' 3) setting up python... ' # if ! command -v pyenv &> /dev/null if [ ! -d "$HOME/.pyenv" ] then echo "pyenv not installed. install?" read -p "[Y/n] " pyenv_yn if [ "$pyenv_yn" = "n" ]; then echo "Not installing pyenv." else export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" echo "installing..." curl https://pyenv.run | bash echo "installing python 3.7.3..." #eval "$(pyenv init -)" $HOME/.pyenv/bin/pyenv install 3.7.3 fi fi cd $path_komrade echo ' 4) creating virtual environment... ' ## the pyenv way if command -v $HOME/.pyenv/bin/pyenv &> /dev/null then # activate right version $HOME/.pyenv/bin/pyenv local 3.7.3 # activate right python exec in terminal eval "$($HOME/.pyenv/bin/pyenv init -)" cd $path_repo echo "Using Python version:" python3 --version $HOME/.pyenv/bin/pyenv install --skip-existing #VENV="${PWD##*/}.venv" VENV="venv" VENV=${VENV#-} python3 -m venv $VENV . $VENV/bin/activate python3 -m pip install -U pip setuptools wheel python3 -m pip install -r requirements.txt else cd $path_repo python3 -m pip install virtualenv python3 -m virtualenv venv source venv/bin/activate pip install -r requirements.txt fi export PATH="$path_repo/bin:$PATH" echo ' 5) adding komrade bin folder to path ' echo " # komrade export PATH=\"$path_repo/bin:\$PATH\" " >> ~/.bashrc