aboutsummaryrefslogtreecommitdiff
path: root/install.sh
diff options
context:
space:
mode:
Diffstat (limited to 'install.sh')
-rwxr-xr-xinstall.sh122
1 files changed, 73 insertions, 49 deletions
diff --git a/install.sh b/install.sh
index 28f4401..4d61ce6 100755
--- a/install.sh
+++ b/install.sh
@@ -1,8 +1,10 @@
1#!/bin/sh 1#!/bin/sh
2 2
3set -e
4
3SCRIPT_DIR=$(cd -- "$(dirname -- "$0")" && pwd) 5SCRIPT_DIR=$(cd -- "$(dirname -- "$0")" && pwd)
4 6
5CONFIG=~/.config 7CONFIG="$HOME/.config"
6mkdir -p "$CONFIG" 8mkdir -p "$CONFIG"
7 9
8link() { 10link() {
@@ -10,76 +12,98 @@ link() {
10 dst="$2" 12 dst="$2"
11 13
12 if [ -e "$dst" ] || [ -L "$dst" ]; then 14 if [ -e "$dst" ] || [ -L "$dst" ]; then
13 rm -rf "$dst" 15 rm -rf -- "$dst"
14 fi 16 fi
15 17
16 ln -sf "$src" "$dst" 18 ln -sf -- "$src" "$dst"
17} 19}
18 20
19link_neovim() { 21link_abook() {
20 link "$SCRIPT_DIR/nvim" "$CONFIG/nvim" 22 mkdir -p "$HOME/.abook"
23 link "$SCRIPT_DIR/abook/abookrc" "$HOME/.abook/abookrc"
21} 24}
22 25
23link_zsh() { 26link_gdb() {
24 link "$SCRIPT_DIR/zsh/zshenv.home" "$HOME/.zshenv" 27 link "$SCRIPT_DIR/gdb" "$CONFIG/gdb"
25
26 mkdir -p "$CONFIG/zsh"
27 link "$SCRIPT_DIR/zsh/zshrc" "$CONFIG/zsh/.zshrc"
28 link "$SCRIPT_DIR/zsh/zshenv" "$CONFIG/zsh/.zshenv"
29 link "$SCRIPT_DIR/zsh/zprofile" "$CONFIG/zsh/.zprofile"
30} 28}
31 29
32# abook 30link_gitconfig() {
33mkdir -p ~/.abook 31 link "$SCRIPT_DIR/git/gitconfig" "$HOME/.gitconfig"
34cp abook/abookrc ~/.abook 32}
35 33
36# tmux 34link_mailcap() {
37cp -R tmux "$CONFIG" 35 link "$SCRIPT_DIR/mailcap/mailcap" "$HOME/.mailcap"
36}
38 37
39# tmuxp 38link_mpd() {
40cp -R tmuxp "$CONFIG" 39 link "$SCRIPT_DIR/mpd" "$CONFIG/mpd"
40}
41 41
42# nvim 42link_ncmpcpp() {
43link_neovim() 43 link "$SCRIPT_DIR/ncmpcpp" "$CONFIG/ncmpcpp"
44}
44 45
45# vit 46link_neovim() {
46cp -R vit "$CONFIG" 47 link "$SCRIPT_DIR/nvim" "$CONFIG/nvim"
48}
47 49
48# mpd 50link_newsboat() {
49cp -R mpd "$CONFIG" 51 mkdir -p "$CONFIG/newsboat"
52 link "$SCRIPT_DIR/newsboat/config" "$CONFIG/newsboat/config"
53}
50 54
51# ncmpcpp 55link_npm() {
52cp -R ncmpcpp "$CONFIG" 56 link "$SCRIPT_DIR/npm/npmrc" "$HOME/.npmrc"
57}
53 58
54# taskwarrior 59link_nexrc() {
55mkdir -p "$CONFIG/task" 60 link "$SCRIPT_DIR/nexrc/nexrc" "$HOME/.nexrc"
56cp taskwarrior/taskrc "$CONFIG/task/taskrc" 61}
57 62
58# zsh 63link_taskwarrior() {
59link_zsh() 64 link "$SCRIPT_DIR/taskwarrior" "$CONFIG/task"
65}
60 66
61# git 67link_tmux() {
62cp git/gitconfig ~/.gitconfig 68 link "$SCRIPT_DIR/tmux" "$CONFIG/tmux"
69}
63 70
64# gdb 71link_vit() {
65mkdir -p "$CONFIG/gdb" 72 link "$SCRIPT_DIR/vit" "$CONFIG/vit"
66cp gdb/gdbinit "$CONFIG/gdb/gdbinit" 73}
67 74
68# X11 75link_wyrdrc() {
69cp X11/xinitrc ~/.xinitrc 76 link "$SCRIPT_DIR/wyrd/wyrdrc" "$HOME/.wyrdrc"
77}
70 78
71# Newsboat 79link_xinitrc() {
72cp -R newsboat "$CONFIG" 80 link "$SCRIPT_DIR/X11/xinitrc" "$HOME/.xinitrc"
81}
73 82
74# wyrd 83link_zsh() {
75cp wyrd/wyrdrc ~/.wyrdrc 84 link "$SCRIPT_DIR/zsh/zshenv.home" "$HOME/.zshenv"
76 85
77# nvi 86 mkdir -p "$CONFIG/zsh"
78cp nexrc/nexrc ~/.nexrc 87 link "$SCRIPT_DIR/zsh/zshrc" "$CONFIG/zsh/.zshrc"
88 link "$SCRIPT_DIR/zsh/zshenv" "$CONFIG/zsh/.zshenv"
89 link "$SCRIPT_DIR/zsh/zprofile" "$CONFIG/zsh/.zprofile"
90}
79 91
80# mailcap 92link_abook
81cp mailcap/mailcap ~/.mailcap 93link_gdb
94link_gitconfig
95link_mailcap
96link_mpd
97link_ncmpcpp
98link_neovim
99link_newsboat
100link_npm
101link_nexrc
102link_taskwarrior
103link_tmux
104link_vit
105link_wyrdrc
106link_xinitrc
107link_zsh
82 108
83# npmrc
84cp -n npm/npmrc ~/.npmrc
85 109