diff --git a/.gitignore b/.gitignore
index 1ee5385..1db30bf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,6 +3,9 @@
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
+# Packaging
+pack/
+
# User-specific files
*.rsuser
*.suo
diff --git a/NoSoliciting/NoSoliciting.csproj b/NoSoliciting/NoSoliciting.csproj
index 3a7c24e..c1fe37b 100644
--- a/NoSoliciting/NoSoliciting.csproj
+++ b/NoSoliciting/NoSoliciting.csproj
@@ -83,6 +83,7 @@
+
diff --git a/NoSoliciting/package.sh b/NoSoliciting/package.sh
new file mode 100644
index 0000000..4100816
--- /dev/null
+++ b/NoSoliciting/package.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+# remove old pack dir
+rm -rf pack
+
+# make temp dir and go to it
+mkdir -p pack/temp
+cd pack/temp || exit
+
+# copy the dlls, defs, and the manifest
+cp ../../bin/Release/NoSoliciting.dll ../../bin/Release/YamlDotNet.dll ./
+cp ../../definitions.yaml default_definitions.yaml
+cp ../../NoSoliciting.json ./
+
+# make sure none of them are marked executable
+chmod -x ./*
+
+# zip them
+zip ../latest.zip ./*
+
+# move the manifest next to the zip
+mv NoSoliciting.json ../
+
+# remove everything
+rm ./*
+
+# go back up and remove the temp dir
+cd ..
+rmdir temp