diff options
| author | Mitchell Riedstra <mitch@riedstra.dev> | 2024-01-20 12:31:58 -0500 |
|---|---|---|
| committer | Mitchell Riedstra <mitch@riedstra.dev> | 2024-01-20 12:31:58 -0500 |
| commit | e2a0cf2a79b43f9f86b74270f3d96fe300687804 (patch) | |
| tree | a87edf55f81e78f4d0968d6f006562090260e068 /install.sh | |
| parent | ec83443853116b07f18fbef8c6de31cf157939a0 (diff) | |
| download | dotfiles-e2a0cf2a79b43f9f86b74270f3d96fe300687804.tar.gz dotfiles-e2a0cf2a79b43f9f86b74270f3d96fe300687804.tar.xz | |
Cleanup unused files and code.
Diffstat (limited to 'install.sh')
| -rwxr-xr-x | install.sh | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..b87822f --- /dev/null +++ b/install.sh @@ -0,0 +1,46 @@ +#!/bin/sh +set -e + +setLink() { + src="" + dest="" + while [ $# -gt 0 ] ; do case $1 in + -s) src="$2"; shift ; shift ;; + -d) dest="$2"; shift ; shift ;; + *) echo "unknown arg $1 invalid usage"; exit 1; ;; + esac ; done + + if [ -e "$dest" ] && ! [ -L "$dest" ] ; then + echo "Warning: $dest is not a link, no action taken" + return + fi + + [ -e "$dest" ] && rm "$dest" + + ln -s "$src" "$dest" +} + +for _f in dotfiles/* ; do + src="$(pwd)/$_f" + dest="$HOME/.$(basename "$_f")" + + setLink -s "$src" -d "$dest" +done + +if ! [ -d "$HOME/bin" ] ; then mkdir "$HOME/bin" ; fi +for _f in bin/* ; do + src="$(pwd)/$_f" + dest="$HOME/bin/$(basename "$_f")" + + setLink -s "$src" -d "$dest" +done + +if [ -n "$DISPLAY" ] && [ "$XDG_SESSION_TYPE" != "wayland" ] ; then + if ! [ -d "$HOME/x" ] ; then mkdir "$HOME/x" ; fi + for _f in x/* ; do + src="$(pwd)/$_f" + dest="$HOME/x/$(basename "$_f")" + + setLink -s "$src" -d "$dest" + done +fi |
