dotfiles/bootstrap.sh

59 lines
2.9 KiB
Shell
Raw Normal View History

2016-04-08 01:39:33 +01:00
#!/usr/bin/env zsh
# Current dir
BASEDIR=$(pwd)
# ln the various files
2016-07-13 13:38:11 +01:00
echo "Sym-linking the various config files"
2016-04-08 03:42:12 +01:00
test -L $HOME/.gitignore || ln -f -s $BASEDIR/gitignore $HOME/.gitignore
2016-04-08 03:37:25 +01:00
test -L $HOME/.hushlogin || ln -f -s $BASEDIR/hushlogin $HOME/.hushlogin
2017-12-10 12:01:30 +00:00
test -L $HOME/.tmux.conf || ln -f -s $BASEDIR/tmux $HOME/.tmux.conf
test -d $HOME/.config/sheldon || mkdir $HOME/.config/sheldon
test -L $HOME/.config/sheldon/plugins.toml || ln -f -s $BASEDIR/sheldon.toml $HOME/.config/sheldon/plugins.toml
test -L $HOME/.zsh || ln -f -s $BASEDIR/zsh $HOME/.zsh
test -L $HOME/.zshrc || ln -f -s $BASEDIR/zshrc.zsh $HOME/.zshrc
test -d $HOME/.config/delta || mkdir $HOME/.config/delta
test -L $HOME/.config/delta/themes.gitconfig || ln -f -s $BASEDIR/delta-themes.gitconfig $HOME/.config/delta/themes.gitconfig
2016-04-08 01:39:33 +01:00
2025-01-18 21:18:34 +00:00
# If ghostty is installed on the system then setup the config
if (( ${+commands[ghostty]} )); then
test -d $HOME/.config/ghostty || mkdir $HOME/.config/ghostty
test -L $HOME/.config/ghostty/config || ln -f -s $BASEDIR/ghostty/config $HOME/.config/ghostty/config
test -d $HOME/.config/ghostty/themes || mkdir $HOME/.config/ghostty/themes
test -L $HOME/.config/ghostty/themes/tangere-dark.conf || ln -f -s $BASEDIR/ghostty/themes/tangere-dark $HOME/.config/ghostty/themes/tangere-dark.conf
test -L $HOME/.config/ghostty/themes/tangere-light.conf || ln -f -s $BASEDIR/ghostty/themes/tangere-light $HOME/.config/ghostty/themes/tangere-light.conf
2025-01-18 21:18:34 +00:00
fi
2024-04-29 18:22:54 +01:00
# setup gpg conf
test -d $HOME/.gnupg || mkdir $HOME/.gnupg
cp -f $BASEDIR/gnupg/common.conf $HOME/.gnupg/common.conf
cp -f $BASEDIR/gnupg/dirmngr.conf $HOME/.gnupg/dirmngr.conf
cp -f $BASEDIR/gnupg/gpg.conf $HOME/.gnupg/gpg.conf
chmod 700 $HOME/.gnupg
chmod 640 $HOME/.gnupg/common.conf
chmod 640 $HOME/.gnupg/dirmngr.conf
chmod 640 $HOME/.gnupg/gpg.conf
echo "Setting up NeoVim"
test -d $HOME/.config/nvim || mkdir -p $HOME/.config/nvim
test -d $HOME/.local/share/nvim || mkdir -p $HOME/.local/share/nvim
test -L $HOME/.config/nvim/init.lua || ln -f -s $BASEDIR/neovim/init.lua $HOME/.config/nvim/init.lua
2026-05-31 20:33:23 +01:00
test -d $HOME/.config/nvim/lua || mkdir -p $HOME/.config/nvim/lua
test -L $HOME/.config/nvim/lua/config || ln -f -s $BASEDIR/neovim/config $HOME/.config/nvim/lua/config
test -d $HOME/.config/nvim/lsp || mkdir -p $HOME/.config/nvim/lsp
test -L $HOME/.config/nvim/lsp/phpactor.lua || ln -f -s $BASEDIR/neovim/lsp/phpactor.lua $HOME/.config/nvim/lsp/phpactor.lua
2026-03-28 16:51:14 +00:00
# Claude Code statusline
test -d $HOME/.claude || mkdir $HOME/.claude
ln -f -s $BASEDIR/claude/statusline.burnrate.sh $HOME/.claude/statusline.sh
2026-03-28 16:51:14 +00:00
2026-02-13 21:04:50 +00:00
# .gitconfig gets edited by .extra so we won't symlink it, but copy it
echo "For compatibility we shall copy the global gitconfig"
2016-04-08 01:39:33 +01:00
cp $BASEDIR/gitconfig $HOME/.gitconfig
2025-03-16 16:13:47 +00:00
# Copy the progs into the local bin dir
rsync -av --chmod=+x $BASEDIR/bin/ $HOME/.local/bin/
2016-04-08 01:39:33 +01:00
# Source zshrc
2016-07-13 13:38:11 +01:00
echo "And finally, source the .zshrc"
2016-04-08 01:39:33 +01:00
source $HOME/.zshrc