#!/bin/bash cd `dirname $0` git submodule update --init --recursive || (echo "Submodule update failed!"; exit 5) # Source inst and diff function . ./utils/inst # Load if we force changes (implies no interaction) [ "$1" = "-f" ] && FORCE=true || FORCE=false ################################################################################# source private/install # private files, sorry but some privacy is required. # TODO on hosts without shellrc we might want some thin shellrc to be installed if ask "Install shell profile"; then inst profile ~/.profile inst zprofile ~/.zprofile fi if ask "Install GIT configuration"; then inst gitconfig ~/.gitconfig inst local/git-prompt.sh ~/.local/ fi if ask "Install configurations for various utility tools"; then inst screenrc ~/.screenrc fi if ask "Install user services"; then inst local/sbin/user-service.sh ~/.local/sbin/user-service.sh inst service/ ~/.service/ fi if ask "Install SSH config"; then inst private/ssh_config ~/.ssh/config fi YCM_PATH=~/.vim/bundle/YouCompleteMe if ask "Install VIM scripts"; then # See if we have anything different from what we have in repository YCM_REV="$(cd $YCM_PATH && git --work-tree=. diff --exit-code -s && echo y)" inst vimrc ~/.vimrc inst vim/ ~/.vim inst local/bin/vim-project-gen ~/.local/bin/vim-project-gen mkdir -p ~/.cache/vim # directory for *.swp files mkdir -p ~/.cache/vim-undo # directory for undo files if [ "$YCM_REV" != "y" ]; then ( cd $YCM_PATH ./install.py --clang-completer --system-libclang ); else echo "YouCompleteMe is not required to be recompiled" fi fi if ask "Install email synchronization"; then inst local/bin/email-unread ~/.local/bin/email-unread inst local/sbin/newmail-notify ~/.local/sbin/newmail-notify inst_email_sync # Contains: # inst config/offlineimap/ ~/.config/offlineimap inst config/offlineimap/plugin.py ~/.config/offlineimap/plugin.py fi if ask "Install mutt configuration"; then inst urlview ~/.urlview inst lynxrc ~/.lynxrc inst mutt/mailcap ~/.mutt/ inst mutt/gpg.rc ~/.mutt/ inst mutt/color ~/.mutt/ inst_mutt_conf # Contains: # inst mutt/ ~/.mutt # inst msmtprc ~/.msmtprc mkdir -p ~/.cache/mutt # directory for temporaly html files fi if ask "Install desktop (i3..)"; then inst xinitrc ~/.xinitrc inst Xresources ~/.Xresources inst config/i3/ ~/.config/i3 inst config/i3blocks/ ~/.config/i3blocks inst config/dunst/ ~/.config/dunst inst local/bin/mxrandr ~/.local/bin/ # Theme inst gtk-2.0/gtkrc ~/.gtkrc-2.0 inst gtk-3.0/ ~/.config/gtk-3.0/ inst config/Trolltech.conf ~/.config/Trolltech.conf # User directories inst config/user-dirs.dirs ~/.config/user-dirs.dirs fi if ask "Install calendar and contacts"; then inst config/khal/config ~/.config/khal/config inst config/khard/khard.conf ~/.config/khard/khard.conf inst private/vdirsyncer/ ~/.vdirsyncer fi if ask "Install Surf configuration"; then inst surf/script.js ~/.surf/script.js inst surf/styles/default.css ~/.surf/styles/default.css fi if ask "Install MPD configuration"; then inst config/mpd/ ~/.config/mpd fi if ask "Install backup script"; then inst local/bin/system-backup ~/.local/bin/system-backup fi