From de9f2b7f57d983c6c1e8e52351dfe6fb9200268b Mon Sep 17 00:00:00 2001 From: Thomas Schmucker Date: Mon, 5 Jan 2026 00:03:06 +0100 Subject: Alle Dotfiles werden nun als Links in das Repo dargestellt --- install.sh | 122 ++++++++++++++++++++++++++++++++++++------------------------- 1 file changed, 73 insertions(+), 49 deletions(-) diff --git a/install.sh b/install.sh index 28f4401..4d61ce6 100755 --- a/install.sh +++ b/install.sh @@ -1,8 +1,10 @@ #!/bin/sh +set -e + SCRIPT_DIR=$(cd -- "$(dirname -- "$0")" && pwd) -CONFIG=~/.config +CONFIG="$HOME/.config" mkdir -p "$CONFIG" link() { @@ -10,76 +12,98 @@ link() { dst="$2" if [ -e "$dst" ] || [ -L "$dst" ]; then - rm -rf "$dst" + rm -rf -- "$dst" fi - ln -sf "$src" "$dst" + ln -sf -- "$src" "$dst" } -link_neovim() { - link "$SCRIPT_DIR/nvim" "$CONFIG/nvim" +link_abook() { + mkdir -p "$HOME/.abook" + link "$SCRIPT_DIR/abook/abookrc" "$HOME/.abook/abookrc" } -link_zsh() { - link "$SCRIPT_DIR/zsh/zshenv.home" "$HOME/.zshenv" - - mkdir -p "$CONFIG/zsh" - link "$SCRIPT_DIR/zsh/zshrc" "$CONFIG/zsh/.zshrc" - link "$SCRIPT_DIR/zsh/zshenv" "$CONFIG/zsh/.zshenv" - link "$SCRIPT_DIR/zsh/zprofile" "$CONFIG/zsh/.zprofile" +link_gdb() { + link "$SCRIPT_DIR/gdb" "$CONFIG/gdb" } -# abook -mkdir -p ~/.abook -cp abook/abookrc ~/.abook +link_gitconfig() { + link "$SCRIPT_DIR/git/gitconfig" "$HOME/.gitconfig" +} -# tmux -cp -R tmux "$CONFIG" +link_mailcap() { + link "$SCRIPT_DIR/mailcap/mailcap" "$HOME/.mailcap" +} -# tmuxp -cp -R tmuxp "$CONFIG" +link_mpd() { + link "$SCRIPT_DIR/mpd" "$CONFIG/mpd" +} -# nvim -link_neovim() +link_ncmpcpp() { + link "$SCRIPT_DIR/ncmpcpp" "$CONFIG/ncmpcpp" +} -# vit -cp -R vit "$CONFIG" +link_neovim() { + link "$SCRIPT_DIR/nvim" "$CONFIG/nvim" +} -# mpd -cp -R mpd "$CONFIG" +link_newsboat() { + mkdir -p "$CONFIG/newsboat" + link "$SCRIPT_DIR/newsboat/config" "$CONFIG/newsboat/config" +} -# ncmpcpp -cp -R ncmpcpp "$CONFIG" +link_npm() { + link "$SCRIPT_DIR/npm/npmrc" "$HOME/.npmrc" +} -# taskwarrior -mkdir -p "$CONFIG/task" -cp taskwarrior/taskrc "$CONFIG/task/taskrc" +link_nexrc() { + link "$SCRIPT_DIR/nexrc/nexrc" "$HOME/.nexrc" +} -# zsh -link_zsh() +link_taskwarrior() { + link "$SCRIPT_DIR/taskwarrior" "$CONFIG/task" +} -# git -cp git/gitconfig ~/.gitconfig +link_tmux() { + link "$SCRIPT_DIR/tmux" "$CONFIG/tmux" +} -# gdb -mkdir -p "$CONFIG/gdb" -cp gdb/gdbinit "$CONFIG/gdb/gdbinit" +link_vit() { + link "$SCRIPT_DIR/vit" "$CONFIG/vit" +} -# X11 -cp X11/xinitrc ~/.xinitrc +link_wyrdrc() { + link "$SCRIPT_DIR/wyrd/wyrdrc" "$HOME/.wyrdrc" +} -# Newsboat -cp -R newsboat "$CONFIG" +link_xinitrc() { + link "$SCRIPT_DIR/X11/xinitrc" "$HOME/.xinitrc" +} -# wyrd -cp wyrd/wyrdrc ~/.wyrdrc +link_zsh() { + link "$SCRIPT_DIR/zsh/zshenv.home" "$HOME/.zshenv" -# nvi -cp nexrc/nexrc ~/.nexrc + mkdir -p "$CONFIG/zsh" + link "$SCRIPT_DIR/zsh/zshrc" "$CONFIG/zsh/.zshrc" + link "$SCRIPT_DIR/zsh/zshenv" "$CONFIG/zsh/.zshenv" + link "$SCRIPT_DIR/zsh/zprofile" "$CONFIG/zsh/.zprofile" +} -# mailcap -cp mailcap/mailcap ~/.mailcap +link_abook +link_gdb +link_gitconfig +link_mailcap +link_mpd +link_ncmpcpp +link_neovim +link_newsboat +link_npm +link_nexrc +link_taskwarrior +link_tmux +link_vit +link_wyrdrc +link_xinitrc +link_zsh -# npmrc -cp -n npm/npmrc ~/.npmrc -- cgit v1.3