aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bash/env.sh1
-rw-r--r--bash/symlinks.sh42
2 files changed, 25 insertions, 18 deletions
diff --git a/bash/env.sh b/bash/env.sh
index 64f79c4..0aa4685 100644
--- a/bash/env.sh
+++ b/bash/env.sh
@@ -34,6 +34,7 @@ export PATH="$DOTFILES/scripts/:$PATH"
export PATH="$DOTFILES/encrypted/scripts/:$PATH"
export YT_TEMPLATE="~/Downloads/yt-dl/%(uploader)s/%(upload_date)s %(title)s.%(ext)s"
export INPUTRC=~/.inputrc
+export CACHE_DIR="~/Nextcloud/cache~/Nextclo"
diff --git a/bash/symlinks.sh b/bash/symlinks.sh
index 169c056..335189a 100644
--- a/bash/symlinks.sh
+++ b/bash/symlinks.sh
@@ -1,6 +1,15 @@
#!/usr/bin/env bash
-ln -fs $DOTFILES/encrypted/borg ~/.config/
+function upsert_dir_symlink() {
+ local readonly from="$1"
+ local readonly to="$2"
+ ([ -d "$to" ] || [ -L "$to" ]) || {
+ ln -s "$from" "$to"
+ }
+}
+export -f upsert_dir_symlink
+
+upsert_dir_symlink $DOTFILES/encrypted/borg ~/.config/borg
ln -fs $DOTFILES/bash/bashrc.sh ~/.bashrc
ln -fs $DOTFILES/bash/bash_profile.sh ~/.bash_profile
@@ -9,30 +18,28 @@ ln -fs $DOTFILES/git/gitignore ~/.gitignore_global
ln -fs $DOTFILES/git/bash_git.sh ~/.bash_git
ln -fs $DOTFILES/sbclrc.lisp ~/.sbclrc
ln -fs $DOTFILES/inputrc.conf ~/.inputrc
+ln -fs $DOTFILES/Xmodmap.conf ~/.Xmodmap
isLinux && {
- ln -fs $DOTFILES/nixos/npmrc.sh ~/.npmrc
+ ln -fs $DOTFILES/nixos/npmrc.sh ~/.npmrc
}
ln -fs $DOTFILES/git/mrconfig.ini ~/.mrconfig
-if [ ! -d ~/UTCLOUD ]; then
- ln -s $MEDIA_PREFIX/UTCLOUD ~/UTCLOUD
-fi
-if [ ! -d ~/SNEAKER ]; then
- ln -s $MEDIA_PREFIX/SNEAKER ~/SNEAKER
-fi
+upsert_dir_symlink $MEDIA_PREFIX/UTCLOUD ~/UTCLOUD
+upsert_dir_symlink $MEDIA_PREFIX/SNEAKER ~/SNEAKER
-mkdir -p ~/.lein
+## Clojure
+mkdir -p ~/.lein ~/.clojure
ln -fs $DOTFILES/lein/profiles.clj ~/.lein/profiles.clj
-mkdir -p ~/.clojure
ln -fs $DOTFILES/lein/deps.edn ~/.clojure/deps.edn
+## AWS
mkdir -p ~/.aws
ln -fs $DOTFILES/encrypted/aws/config ~/.aws/config
ln -fs $DOTFILES/encrypted/aws/credentials ~/.aws/credentials
-ln -fs $DOTFILES/Xmodmap.conf ~/.Xmodmap
+## tmux
ln -fs $DOTFILES/tmux/tmux.conf ~/.tmux.conf
ln -fs $DOTFILES/tmux/tmux-macos.conf ~/.tmux-macos.conf
ln -fs $DOTFILES/tmux/tmux-gnu-linux.conf ~/.tmux-gnu-linux.conf
@@ -43,9 +50,9 @@ ln -fs $DOTFILES/nixos/firefox.destkop ~/.local/share/applications/firefo
## Emacs
mkdir -p $HOME/.emacs.d/private/layers/
-ln -fs $DOTFILES/spacemacs.el ~/.spacemacs
-ln -fs $DOTFILES/emacs/gnus.el ~/.gnus.el
-ln -fs ~/Nextcloud/cache/euandreh-auto-save.el ~/.emacs.d/.cache/layouts/euandreh-auto-save
+ln -fs $DOTFILES/spacemacs.el ~/.spacemacs
+ln -fs $DOTFILES/emacs/gnus.el ~/.gnus.el
+ln -fs $CACHE_DIR/euandreh-auto-save.el ~/.emacs.d/.cache/layouts/euandreh-auto-save
## xmonad
mkdir -p ~/.xmonad
@@ -53,7 +60,7 @@ ln -fs $DOTFILES/xmonad/xsession.sh ~/.xsession
ln -fs $DOTFILES/xmonad/xmonad.hs ~/.xmonad/xmonad.hs
ln -fs $DOTFILES/xmonad/xmobar.hs ~/.xmobarrc
-# Mail
+## Mail
mkdir -p ~/mbsync/.notmuch/hooks ~/mbsync/EuAndreh ~/mbsync/Gmail ~/mbsync/Nubank
ln -fs $DOTFILES/mail/notmuch-post.sh ~/mbsync/.notmuch/hooks/post-new
ln -fs $DOTFILES/mail/mbsyncrc.ini ~/.mbsyncrc
@@ -61,6 +68,5 @@ ln -fs $DOTFILES/mail/notmuch.ini ~/.notmuch-config
ln -fs /tmp/mbsync.$(date +%Y-%m-%d).log /tmp/mbsync.log
ln -fs /tmp/notmuch.$(date +%Y-%m-%d).log /tmp/notmuch.log
-
-# GNUS
-ln -fs $DOTFILES/encrypted/IMAP/authinfo.gpg ~/.authinfo.gpg
+## GNUS
+ln -fs $DOTFILES/encrypted/IMAP/authinfo.gpg ~/.authinfo.gpg