55 lines
1.5 KiB
Bash
Executable File
55 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
SCRIPT=$(readlink -f "$0")
|
|
SCRIPTPATH=$(dirname "$SCRIPT")
|
|
|
|
# Make sure $HOME/.config exists. It should, if we've been cloned there!
|
|
if [[ ! -d "$HOME/.config" ]]; then
|
|
mkdir -p "$HOME"/.config
|
|
fi
|
|
|
|
# Clone ZSH configs.
|
|
if [[ ! -d "$HOME/.config/zsh" ]]; then
|
|
git clone --recurse-submodules https://git.kree.gr/kreeger/zshrc.git "$HOME"/.config/zsh
|
|
fi
|
|
|
|
if [[ ! -a "$HOME/.zshrc" ]]; then
|
|
ln -sfv "$HOME"/.config/zsh/zshrc "$HOME"/.zshrc
|
|
fi
|
|
|
|
# Clone nvim configs.
|
|
if [[ ! -d "$HOME/.config/nvim" ]]; then
|
|
git clone --recurse-submodules https://git.kree.gr/kreeger/nvimrc.git "$HOME"/.config/nvim
|
|
fi
|
|
|
|
# Clone tmux configs.
|
|
if [[ ! -d "$HOME/.config/tmux" ]]; then
|
|
git clone --recurse-submodules https://git.kree.gr/kreeger/tmuxrc.git "$HOME"/.config/tmux
|
|
fi
|
|
|
|
# Clone lazygit config.
|
|
if [[ ! -a "$HOME/.config/lazygit/config.yml" ]]; then
|
|
mkdir -p "$HOME/.config/lazygit"
|
|
ln -sfv "$SCRIPTPATH/lazygit.yaml" "$HOME/.config/lazygit/config.yml"
|
|
fi
|
|
|
|
# Link k9s config.
|
|
if [[ ! -d "$HOME/.config/k9s" ]]; then
|
|
ln -sfv "$SCRIPTPATH/k9s" "$HOME/.config/k9s"
|
|
fi
|
|
|
|
# Link starship config.
|
|
if [[ ! -a "$HOME/.config/starship/starship.toml" ]]; then
|
|
mkdir -p "$HOME/.config/starship"
|
|
ln -sfv "$SCRIPTPATH/starship.toml" "$HOME/.config/starship/starship.toml"
|
|
fi
|
|
|
|
# Link dotfiles.
|
|
declare -a dotfiles=("gemrc" "gitconfig" "gitignore.global")
|
|
for file in "${dotfiles[@]}"
|
|
do
|
|
if [[ ! -a "$HOME/.$file" ]]; then
|
|
ln -sfv "$SCRIPTPATH/$file" "$HOME/.$file"
|
|
fi
|
|
done
|