Also commented out the COC stuff since it seems like it may not be necessary any longer.
118 lines
3.1 KiB
Bash
Executable file
118 lines
3.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
if [ -z "$HOME" ]; then echo "Seems you're \$HOMEless :("; exit 1; fi
|
|
|
|
DOTCONFIG=$HOME/.config
|
|
DOTFILES=$HOME/.dotfiles
|
|
DOTFZF=$HOME/.fzf
|
|
DOTLOCAL=$HOME/.local/share/dotfiles
|
|
|
|
GITCLONE="git clone --depth=1"
|
|
|
|
cd "$HOME" || exit
|
|
rm -rf "$DOTFILES"
|
|
mkdir "$DOTFILES"
|
|
cd "$DOTFILES" || exit
|
|
|
|
git init
|
|
git remote add origin https://github.com/joshtronic/dotfiles.git
|
|
git pull origin master
|
|
|
|
# Swap origin so I can make edits easily
|
|
git remote rm origin
|
|
git remote add origin git@github.com:joshtronic/dotfiles.git
|
|
|
|
rm -rf \
|
|
"$DOTCONFIG/gtk-3.0/gtk.css" \
|
|
"$DOTCONFIG/nvim/init.vim" \
|
|
"$DOTFZF" \
|
|
"$DOTLOCAL" \
|
|
"$HOME/.bashrc" \
|
|
"$HOME/.gitconfig" \
|
|
"$HOME/.local/share/gnome-shell/extensions/custom@gnome-shell-extensions.joshtronic.com" \
|
|
"$HOME/.screenrc" \
|
|
"$HOME/.themes/custom/gnome-shell/gnome-shell.css" \
|
|
"$HOME/.vim" \
|
|
"$HOME/.vimrc" \
|
|
"$HOME/.zshrc"
|
|
|
|
mkdir -p \
|
|
"$DOTCONFIG/"{gtk-3.0,nvim} \
|
|
"$DOTLOCAL" \
|
|
"$HOME/.local/share/gnome-shell/extensions" \
|
|
"$HOME/.local/share/vim/"{swap,undo} \
|
|
"$HOME/.themes/custom/gnome-shell" \
|
|
"$HOME/.vim/colors" \
|
|
"$HOME/.vim/pack/plugins/start"
|
|
|
|
ln -s "$DOTFILES/bashrc" "$HOME/.bashrc"
|
|
ln -s "$DOTFILES/gitconfig" "$HOME/.gitconfig"
|
|
ln -s "$DOTFILES/gnome/extension" "$HOME/.local/share/gnome-shell/extensions/custom@gnome-shell-extensions.joshtronic.com"
|
|
ln -s "$DOTFILES/gnome/gnome-shell.css" "$HOME/.themes/custom/gnome-shell/gnome-shell.css"
|
|
ln -s "$DOTFILES/gnome/gtk.css" "$HOME/.config/gtk-3.0/gtk.css"
|
|
ln -s "$DOTFILES/init.vim" "$DOTCONFIG/nvim/init.vim"
|
|
ln -s "$DOTFILES/screenrc" "$HOME/.screenrc"
|
|
ln -s "$DOTFILES/vimrc" "$HOME/.vimrc"
|
|
ln -s "$DOTFILES/zshrc" "$HOME/.zshrc"
|
|
|
|
$GITCLONE https://github.com/junegunn/fzf.git "$DOTFZF"
|
|
"$DOTFZF/install" --key-bindings --completion --no-update-rc
|
|
|
|
ZSHPLUGS=(
|
|
"zsh-completions"
|
|
"zsh-history-substring-search"
|
|
"zsh-syntax-highlighting"
|
|
)
|
|
|
|
for INDEX in ${!ZSHPLUGS[*]}; do
|
|
ZSHPLUG="${ZSHPLUGS[$INDEX]}"
|
|
$GITCLONE "https://github.com/zsh-users/$ZSHPLUG.git" "$DOTLOCAL/$ZSHPLUG"
|
|
done
|
|
|
|
VIMPLUGS=(
|
|
# File exploration and navigation
|
|
"junegunn/fzf.vim"
|
|
|
|
# Languages and syntax
|
|
"sheerun/vim-polyglot"
|
|
|
|
# Code completion
|
|
"neoclide/coc.nvim"
|
|
|
|
# Style guide and linting
|
|
"dense-analysis/ale"
|
|
"editorconfig/editorconfig-vim"
|
|
|
|
# TypeScript
|
|
"leafgarland/typescript-vim"
|
|
"Quramy/tsuquyomi"
|
|
|
|
# Hoping vim-polyglot deprecates the need for these
|
|
# "jelera/vim-javascript-syntax"
|
|
# "Quramy/vim-js-pretty-template"
|
|
)
|
|
|
|
for INDEX in ${!VIMPLUGS[*]}; do
|
|
VIMPLUG="${VIMPLUGS[$INDEX]}"
|
|
PLUGDIR=$(echo "$VIMPLUG" | cut -d '/' -f2)
|
|
|
|
$GITCLONE "https://github.com/$VIMPLUG.git" "$HOME/.vim/pack/plugins/start/$PLUGDIR"
|
|
done
|
|
|
|
git clone https://github.com/lifepillar/vim-solarized8.git "$HOME/.vim/pack/themes/opt/solarized8"
|
|
|
|
# Finishes installing CoC
|
|
# vim +"call coc#util#install()" +qa
|
|
# cd "$HOME/.vim/pack/plugins/start/coc.nvim" || exit
|
|
# ./install.sh nightly
|
|
|
|
cd "$HOME" || exit
|
|
rm -f "${HOME}/.zcompdump*"
|
|
|
|
# Required to kill the terminal's border in GNOME 3.32+
|
|
gsettings set org.gnome.Terminal.Legacy.Settings headerbar "@mb false"
|
|
echo
|
|
echo "If this is your first time, you should restart GNOME"
|
|
|
|
echo
|
|
echo "ENJOY! :)"
|