24 lines
737 B
Bash
Executable File
24 lines
737 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
SCRIPT=$(readlink -f "$0")
|
|
SCRIPTPATH=$(dirname "$SCRIPT")
|
|
XDG_CONFIG_HOME=$HOME/.config
|
|
|
|
# Make sure $HOME/.config exists.
|
|
if [[ ! -d $XDG_CONFIG_HOME ]]; then
|
|
mkdir -p "$XDG_CONFIG_HOME"
|
|
fi
|
|
|
|
# Symlink directories to $XDG_CONFIG_HOME.
|
|
directories=("gem" "ghostty" "git" "gnupg" "k9s" "lazygit" "mise" "neovide" "nvim" "starship" "tmux" "zed")
|
|
for directory in "${directories[@]}"; do
|
|
if [[ -d "$XDG_CONFIG_HOME/$directory" ]]; then continue; fi
|
|
ln -sfv "$SCRIPTPATH/$directory" "$XDG_CONFIG_HOME/$directory"
|
|
done
|
|
|
|
zshfiles=("zshenv" "zshrc")
|
|
for file in "${zshfiles[@]}"; do
|
|
if [[ -a "$HOME/.$file" && $* == *--no-force* ]]; then continue; fi
|
|
ln -sfv "$SCRIPTPATH/zsh/$file" "$HOME/.$file"
|
|
done
|