#!/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 -s -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 -s 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 cd $path_repo if command -v $HOME/.pyenv/bin/pyenv &> /dev/null then $HOME/.pyenv/bin/pyenv install -s $HOME/.pyenv/bin/pyenv local eval "($HOME/.pyenv/bin/pyenv init -)" eval "$($HOME/.pyenv/bin/pyenv virtualenv-init -)" VENV="venv" VENV=${VENV#-} echo "Python in use: `which python`" python3 python -m venv $VENV . $VENV/bin/activate python3 -m pip install -U pip setuptools wheel python3 -m pip install -r requirements.txt else python3 -m pip install virtualenv python3 -m virtualenv venv source venv/bin/activate pip install -r requirements.txt fi # ## get the pyenv python if possible # if command -v $HOME/.pyenv/bin/pyenv &> /dev/null # then # # activate right version # $HOME/.pyenv/bin/pyenv install 3.7.3 -s # $HOME/.pyenv/bin/pyenv local 3.7.3 # # activate right python exec in terminal # eval "$($HOME/.pyenv/bin/pyenv init -)" # pythonexec="$HOME/.pyenv/shims/python" # else # pythonexec="python3" # fi # cd $path_repo # echo "Using python exec: $pythonexec" # echo "Using Python version:" # $pythonexec --version # VENV="venv" # # get pip # curl -s https://bootstrap.pypa.io/get-pip.py -o get-pip.py # $pythonexec get-pip.py # $pythonexec -m pip install virtualenv # $pythonexec -m virtualenv $VENV # . $VENV/bin/activate # python3 -m pip install -U pip setuptools wheel # python3 -m pip install -r requirements.txt # export PATH="$path_repo/bin:$PATH" echo ' 5) adding komrade bin folder to path ' echo " # komrade export PATH=\"$path_repo/bin:\$PATH\" " >> ~/.bashrc echo "restarting shell" bash echo "Now run Komrade with: komrade-cli [CLI interface -- beta] komrade-app [GUI interface -- alpha] "