Not too happy with trying to run this crap inside of vim, so opted to just run the install script directly once it's downloaded.
126 lines
3.5 KiB
Bash
Executable file
126 lines
3.5 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"
|
|
|
|
# All the rest
|
|
"wellle/context.vim"
|
|
|
|
# Hoping vim-polyglot deprecates the need for these
|
|
# "jelera/vim-javascript-syntax"
|
|
# "Quramy/vim-js-pretty-template"
|
|
# "leafgarland/typescript-vim"
|
|
|
|
# Shouldn't need this as it's already included by vim-polyglot
|
|
# "StanAngeloff/php.vim"
|
|
|
|
# Not sure I need this as I wasn't utilizing anything from it directly. If I
|
|
# am noticing a difference without it, I'll want to revisit the plugin and
|
|
# actually learn how to use the hell out of it.
|
|
# "Quramy/tsuquyomi"
|
|
)
|
|
|
|
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
|
|
|
|
curl -o "$HOME/.vim/colors/solarized.vim" https://raw.githubusercontent.com/altercation/vim-colors-solarized/master/colors/solarized.vim
|
|
|
|
# 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! :)"
|