-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbackup.sh
executable file
·108 lines (90 loc) · 2.17 KB
/
backup.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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#!/bin/bash
[ -f /etc/redhat-release ] &&
echo "backing up for RHEL"
function backup() {
local cmd="$1"
local cmdConfigDir="$HOME/.config/${cmd}"
if command -v "${cmd}" > /dev/null
then
if [ -d "${cmdConfigDir}" ]
then
echo "Backing up ${cmd} settings"
cp -r "${cmdConfigDir}/" "$HOME/config/"
else
echo "No config for ${cmd} at ${cmdConfigDir}"
fi
else
echo "No ${cmd}"
fi
}
##Backup config
cp -r $HOME/shortcuts .
fontAwesome="$HOME/.fonts/fontawesome-webfont.ttf"
if [ -f "$fontAwesome" ]
then
cp -r "$fontAwesome" home/fonts/fontawesome-webfont.ttf
else
echo "No fontawesome"
fi
if command -v i3 > /dev/null
then
echo "Backing up i3 configs"
cp -r $HOME/.config/i3 .
cp -r $HOME/.config/i3status .
else
echo "No i3"
fi
#vimrc
if command -v vim > /dev/null
then
echo "Backing up vim settings"
cp ~/.vimrc ~/config/vim/vimrc
else
echo "No vim"
fi
backup "nvim"
backup "alacritty"
backup "kitty"
if command -v fish > /dev/null
then
echo "Backing up fish"
mkdir -p ~/config/fish/
cp ~/.config/fish/config.fish ~/config/fish/config.fish
cp -r ~/.config/fish/functions ~/config/fish/
else
echo "No fish"
fi
if command -v emacs > /dev/null
then
echo "Backing up emacs"
mkdir -p ~/config/emacs/
cp ~/.config/emacs/init.el ~/config/emacs/init.el
cp ~/.config/emacs/settings.org ~/config/emacs/settings.org
#cp ~/.emacs.d/init.el ~/config/emacs.d/
#cp ~/.spacemacs ~/config/spacemacs
else
echo "No emacs"
fi
# face icon
cp ~/.face ~/config/home/face
# media center stuff
if [ "$(hostname)" = "mediacenter" ]
then
echo "Backing up media center stuff"
cp ~/Desktop/*.desktop ~/config/media-center/Desktop
mkdir -p ~/config/media-center/icons
cp ~/icons/* ~/config/media-center/icons/
fi
function backup-local() {
local dir="$1"
local orig_dir="$HOME/.local/$dir"
local bkup_dir=~/config/local/$dir
if [ -d "$orig_dir" ]
then
mkdir -p "$bkup_dir"
cp -r "${orig_dir}"/* "$bkup_dir"/
fi
}
# backup custom desktop files/icons
backup-local "share/applications"
backup-local "share/icons"