blob: 86d4f1a2346b77ac12a1fe816c0bc53f8f710c20 (
plain)
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
|
#!/bin/sh
mkdir -pv "$XDG_CONFIG_HOME"
mkdir -pv "$XDG_DATA_HOME"
mkdir -pv "$XDG_CACHE_HOME"
echo '---------------------------- CONFIG FILE LINKS ---------------------------'
link_home_files() {
rice_dir="$1"
dest_dir="$2"
paths=$(mktemp)
# generate a file with the file path in this repo and the link for the real path
# each line is in the format: TARGET LINKNAME
find "$rice_dir" -type f |
sed -e 'p' -e 's:^'"$rice_dir"':'"$dest_dir"':' |
awk '{ if (NR % 2 == 1) { print "'"$(pwd)"'" "/" $0 } else print }' |
xargs -L 2 > "$paths"
cat $paths | cut -d ' ' -f 2 | xargs -L 1 dirname | xargs -L 1 mkdir -pv
cat $paths | xargs -L 1 ln -svf
}
link_home_files 'config' "$XDG_CONFIG_HOME"
link_home_files 'local' "$HOME/.local"
ln -svf "$(pwd)/config/x11/xinitrc" "$HOME/.xinitrc"
ln -svf "$(pwd)/config/zsh/zprofile" "$HOME/.zprofile"
################################################################################
# cacharle-sync install
################################################################################
CACHARLE_SYNC_PATH="$HOME/cacharle-sync"
[ -d "$CACHARLE_SYNC_PATH" ] &&
ln -svf "$CACHARLE_SYNC_PATH/newsboat-urls" "$XDG_CONFIG_HOME/newsboat/urls"
################################################################################
# vim plug
###############################################################################
echo '---------------------------- INSTALL VIM PLUG ----------------------------'
PLUGFILE="$XDG_DATA_HOME/vim/autoload/plug.vim"
PLUGURL='https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
[ ! -f "$PLUGFILE" ] && curl -fLo "$PLUGFILE" --create-dirs "$PLUGURL"
vim -c "PlugInstall" -c "qa"
###############################################################################
# zsh pluggins
###############################################################################
echo '---------------------------- INSTALL ZSH PLUGGINS ------------------------'
update_zsh_plugin()
{
url="$1"
path="$XDG_DATA_HOME/zsh/$(basename "$url")"
([ ! -d "$path" ] || [ -z "$(ls -A "$path")" ]) &&
git clone "$url" "$path" ||
git -C "$path" pull
}
mkdir -p "$XDG_DATA_HOME/zsh"
update_zsh_plugin 'https://github.com/sindresorhus/pure'
update_zsh_plugin 'https://github.com/zsh-users/zsh-syntax-highlighting'
update_zsh_plugin 'https://github.com/MichaelAquilina/zsh-you-should-use'
|