2023-11-29 17:46:22 +01:00
|
|
|
#!/bin/sh
|
|
|
|
|
2023-11-30 15:22:23 +01:00
|
|
|
link() {
|
|
|
|
src="$1"
|
|
|
|
dst="$2"
|
|
|
|
|
|
|
|
if [ "$src" = "" ] || [ "$dst" = "" ]; then
|
|
|
|
echo "Source or destination parameter missing." >&2
|
|
|
|
exit 2
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ ! -e "$src" ]; then
|
|
|
|
echo "Source file not found." >&2
|
|
|
|
exit 3
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -e "$dst" ] && [ ! -L "$dst" ]; then
|
|
|
|
echo "Destination exists and is not a symlink." >&2
|
|
|
|
exit 4
|
|
|
|
fi
|
|
|
|
|
|
|
|
full_src=$(realpath -s "$src")
|
|
|
|
full_dst=$(realpath -s "$dst")
|
|
|
|
|
|
|
|
if [ -L "$dst" ]; then
|
|
|
|
if [ "$full_dst" != "$full_src" ]; then
|
|
|
|
ln -s -f "$full_src" "$full_dst"
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
ln -s "$full_src" "$full_dst"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
cd "$(dirname "$(readlink -f "$0")")" || exit 1
|
|
|
|
|
|
|
|
link ./alacritty/alacritty.yml "$HOME/.config/alacritty/alacritty.yml"
|
|
|
|
|
|
|
|
link ./fish/abbr.fish "$HOME/.config/fish/abbr.fish"
|
|
|
|
link ./fish/config.fish "$HOME/.config/fish/config.fish"
|
|
|
|
|
|
|
|
link ./flavours/config.toml "$HOME/.config/flavours/config.toml"
|
|
|
|
|
|
|
|
link ./newsboat/config "$HOME/.config/newsboat/config"
|
|
|
|
|
|
|
|
link ./nvim/init.lua "$HOME/.config/nvim/init.lua"
|
|
|
|
link ./nvim/vim_plugins.sh "$HOME/scripts/vim_plugins.sh"
|
|
|
|
|
|
|
|
link ./tmux/tmux.conf "$HOME/.tmux.conf"
|