aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinstall.sh33
1 files changed, 29 insertions, 4 deletions
diff --git a/install.sh b/install.sh
index 6fa0292..a455c8d 100755
--- a/install.sh
+++ b/install.sh
@@ -5,6 +5,12 @@
set -e # subshells inherit environment from parent
+function usage() {
+ echo "./install #installs and setups this environment"
+ echo "./install undo #removes all configs"
+ echo "./install wipe #removes all configs and removes all installed packages"
+}
+
# detect which family of distro i'm on
if [[ -f /etc/os-release ]]; then
. /etc/os-release
@@ -25,7 +31,26 @@ else
exit 1
fi
-echo "Installing packages"
-sudo $package_manager install -y $vim git stow curl ranger tmux
-# use gnu stow to symlink config files to home directory
-stow bash git ranger shellenv tmux vim
+# could have used a case, but i prefer the if statement
+if [[ -z "$1" ]]; then
+ echo "Installing packages"
+ sudo "$package_manager" install -y "$vim" git stow curl ranger tmux
+
+ # use gnu stow to symlink config files to home directory
+ stow bash git ranger shellenv tmux vim
+
+elif [[ undo = "$1" ]]; then
+ echo "undoing"
+ stow -D bash git ranger shellenv tmux vim
+
+elif [[ wipe = "$1" ]]; then
+ stow -D bash git ranger shellenv tmux vim
+ sudo "$package_manager" remove "$vim" git stow curl ranger tmux
+ echo "wiping"
+
+elif [[ "$1" = "help" ]]; then
+ usage
+
+fi
+
+