aboutsummaryrefslogtreecommitdiff
path: root/install.sh
diff options
context:
space:
mode:
authorMitchell Riedstra <mitch@riedstra.dev>2024-01-20 12:31:58 -0500
committerMitchell Riedstra <mitch@riedstra.dev>2024-01-20 12:31:58 -0500
commite2a0cf2a79b43f9f86b74270f3d96fe300687804 (patch)
treea87edf55f81e78f4d0968d6f006562090260e068 /install.sh
parentec83443853116b07f18fbef8c6de31cf157939a0 (diff)
downloaddotfiles-e2a0cf2a79b43f9f86b74270f3d96fe300687804.tar.gz
dotfiles-e2a0cf2a79b43f9f86b74270f3d96fe300687804.tar.xz
Cleanup unused files and code.
Diffstat (limited to 'install.sh')
-rwxr-xr-xinstall.sh46
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