commit be89134c23a5ed242e5e26e05e83b9f7d1365fd0
Author: Salt <rehashedsalt@cock.li>
Date:   Fri Aug 24 17:30:41 2018 -0500

    Initial commit

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1377554
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+*.swp
diff --git a/replicate.sh b/replicate.sh
new file mode 100755
index 0000000..14e6518
--- /dev/null
+++ b/replicate.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+deps="git rsync"
+for dep in $deps; do
+	if ! which $dep > /dev/null 2>&1; then
+		printf "$0: error: could not find program \"$dep\" in PATH\n" 1>&2
+		exit 1
+	fi
+done
+
+tempfolder="/tmp/dots-`whoami`"
+gitdir="$PWD/.dotfiles"
+homedir="$PWD"
+repo='git@gitlab.com:rehashedsalt/home.git'
+config='git --git-dir="$gitdir" --work-tree="$homedir"'
+
+git clone --recursive --depth 100 --separate-git-dir="$gitdir" "$repo" "$tempfolder"
+error="$?"
+if ! [ "$error" == "0" ]; then
+	printf "$0: error: failed cloning repository \"$repo\": $error\n" 1>&2
+	printf "Do you have the appropriate permissions? Does the remote host know your key?\n"
+	exit 2
+fi
+rsync -rvl --exclude ".git" $tempfolder/ $homedir/
+rm -r $tempfolder
+$config submodule update --init --recursive --remote
+$config config status.showUntrackedFiles no
+printf "$0: dotfiles set up successfully\n"
+printf "Be sure and configure the following before issuing any commits:\n"
+printf "    git config --global user.email\n"
+printf "    git config --global user.name\n"
+exit 0