blob: 650ad34373153828d546bd1d3a109b5d41c706d6 (
plain) (
blame)
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
|
#!/bin/sh
set -e
setLink() {
src=""
dest=""
while [ $# -gt 0 ] ; do case $1 in
-s) src="$2"; shift ; shift ;;
-d) dest="$2"; shift ; shift ;;
*) echo "unknown arg $1 invalid usage"; exit 1; ;;
esac ; done
if [ -e "$dest" ] && ! [ -L "$dest" ] ; then
echo "Warning: $dest is not a link, no action taken"
return
fi
if [ -L "$dest" ] || [ -e "$dest" ] ; then
rm "$dest"
fi
ln -s "$src" "$dest"
}
for _f in dotfiles/* ; do
src="$(pwd)/$_f"
dest="$HOME/.$(basename "$_f")"
if ! [ -f "$src" ] ; then
continue
fi
setLink -s "$src" -d "$dest"
done
_nvimdir="$HOME/.config/nvim"
if ! [ -d "$_nvimdir" ] ; then
mkdir "$_nvimdir"
fi
setLink -s "$(pwd)/dotfiles/nvim/init.lua" -d "$_nvimdir/init.lua"
_paq_dir="${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/pack/paqs/start/paq-nvim
if ! [ -d "$_paq_dir" ] ; then
git clone --depth=1 https://github.com/savq/paq-nvim.git "$_paq_dir"
printf "\033[1;31m%s\033[0m\n" "You will need to run ':PacSync' in neovim"
fi
_ghosttydir="$HOME/.config/ghostty"
if ! [ -d "$_ghosttydir" ] ; then
mkdir "$_ghosttydir"
fi
setLink -s "$(pwd)/dotfiles/ghostty/config" -d "$_ghosttydir/config"
if ! [ -d "$HOME/bin" ] ; then mkdir "$HOME/bin" ; fi
for _f in bin/* ; do
src="$(pwd)/$_f"
dest="$HOME/bin/$(basename "$_f")"
setLink -s "$src" -d "$dest"
done
if [ "$(uname)" != "Darwin" ] \
&& [ -n "$DISPLAY" ] && [ "$XDG_SESSION_TYPE" != "wayland" ] ; then
if ! [ -d "$HOME/x" ] ; then mkdir "$HOME/x" ; fi
for _f in x/* ; do
src="$(pwd)/$_f"
dest="$HOME/x/$(basename "$_f")"
setLink -s "$src" -d "$dest"
done
fi
|