#!/bin/bash NAME="waldek" EMAIL="waldek@mailbox.org" DEPENDENCIES_APT="zsh git tig tmux vim-nox htop python3 python3-pip" LOCALHOME="/home/" SOURCES_DIR=~/sources BOOTSTRAP_DIR=~/sources/bootstrap CUSTOM_ZSHRC=$BOOTSTRAP_DIR/custom.zsh CUSTOM_ENV=$BOOTSTRAP_DIR/env.sh if [[ -z $(groups | grep sudo) ]]; then echo "you need to run this script as yourself, but you need to be in the sudo group..." exit 1 else echo "all good! let's setup your system" fi function install_apt_dependencies () { sudo apt-get update > /dev/null && echo "cache updated" for pgm in $DEPENDENCIES_APT; do sudo apt-get install -y $pgm > /dev/null && echo "$pgm installed" done echo "--- ${FUNCNAME[0]} done" } function setup_sources_dir () { local dst=$SOURCES_DIR if ! [[ -d $dst ]]; then mkdir -p $dst && echo "created $dst directory" else echo "$dst exists already" fi echo "--- ${FUNCNAME[0]} done" } function setup_global_git_config () { content=$(cat << EOF \n [user]\n \tname = $NAME\n \temail = $EMAIL\n [filter "lfs"]\n \tclean = git-lfs clean -- %f\n \tsmudge = git-lfs smudge -- %f\n \tprocess = git-lfs filter-process\n \trequired = true\n [pull]\n \trebase = false\n EOF ) echo -e $content > ~/.gitconfig echo "--- ${FUNCNAME[0]} done" } function clone_bootstrap_to_sources_dir () { local dst=~/sources/bootstrap if ! [[ -d $dst ]]; then git clone ssh://gitea@86thumbs.net:3022/waldek/bootstrap.git $dst && echo "cloned bootstrap dir" fi echo "--- ${FUNCNAME[0]} done" } function install_oh_my_zsh () { local dst=~/.oh-my-zsh if ! [[ -d $dst ]]; then git clone git://github.com/robbyrussell/oh-my-zsh.git $dst cp $dst/templates/zshrc.zsh-template ~/.zshrc else cd $dst git pull fi echo "--- ${FUNCNAME[0]} done" } function customize_oh_my_zsh () { if [[ -z $(grep $CUSTOM_ZSHRC ~/.zshrc) ]]; then echo "source $CUSTOM_ZSHRC" >> ~/.zshrc && echo "appended $CUSTOM_ZSHRC to zshrc" fi if [[ -z $(grep $CUSTOM_ENV ~/.zshrc) ]]; then echo "source $CUSTOM_ENV" >> ~/.zshrc && echo "appended $CUSTOM_ENV to zshrc" fi echo "--- ${FUNCNAME[0]} done" } #install_apt_dependencies setup_sources_dir setup_global_git_config clone_bootstrap_to_sources_dir install_oh_my_zsh customize_oh_my_zsh #echo "setting up $ME" #HOME=$LOCALHOME$ME #sudo apt update && sudo apt install -y zsh git tig tmux vim-nox htop #cd $HOME #git clone git://github.com/robbyrussell/oh-my-zsh.git $HOME/.oh-my-zsh #cp $HOME/.oh-my-zsh/templates/zshrc.zsh-template $HOME/.zshrc #sudo chsh -s /bin/zsh $ME #mkdir $HOME/sources #git clone https://gitea.86thumbs.net/waldek/vimrc.git $HOME/sources/vimrc #cd $HOME #ln -s $HOME/sources/vimrc/main.vimrc $HOME/.vimrc #git clone https://github.com/VundleVim/Vundle.vim.git $HOME/.vim/bundle/Vundle.vim #vim +VundleInstall +qall