diff --git a/packaging/butterfly.properties b/packaging/butterfly.properties
new file mode 100644
index 000000000..67be50720
--- /dev/null
+++ b/packaging/butterfly.properties
@@ -0,0 +1,38 @@
+#
+# Butterfly Configuration
+#
+# NOTE: properties passed to the JVM using '-Dkey=value' from the command line
+# override the settings in this file.
+
+# indicates the URL path where butterfly is available in the proxy URL space
+# as there is no way of knowing otherwise as this information is not
+# transferred thru the HTTP protocol or otherwise (different story if
+# the appserver is connected thru a different protocol such as AJP)
+
+butterfly.url = /
+
+# ---------- Extensions -------------
+
+butterfly.default.mountpoint = /extension
+
+# ---------- Miscellaneous ----------
+
+#butterfly.locale.language = en
+#butterfly.locale.country = US
+#butterfly.timeZone = GMT+09:00
+
+# ---------- Module ------
+
+butterfly.modules.path = modules
+butterfly.modules.path = extensions
+ # Add more paths here if your extensions live elsewhere.
+ # Relative paths are relative to refine/main/webapp/
+
+butterfly.modules.wirings = WEB-INF/modules.properties
+
+#butterfly.modules.ignore = extensions,.*-whatever
+
+# ---------- Clustering ----
+
+#butterfly.routing.cookie.maxage = -1
+
diff --git a/packaging/linux.xml b/packaging/linux.xml
new file mode 100644
index 000000000..9d78bcf38
--- /dev/null
+++ b/packaging/linux.xml
@@ -0,0 +1,72 @@
+
+ linux-${project.version}
+
+ tar.gz
+
+ ${project.build.finalName}-${project.version}
+
+
+ ${rootdir}/server/target/lib
+ server/target/lib
+
+ *.jar
+
+
+
+ ${rootdir}/main/webapp
+ webapp
+
+
+ **/*.java
+ **/butterfly.properties
+
+
+
+ ${rootdir}/licenses
+ licenses
+
+
+ ${rootdir}/licenses
+ licenses
+
+
+ ${rootdir}/extensions
+ webapp/extensions
+
+ **
+
+
+ **/target/**
+ **/tests/**
+ **/src/**
+ **/*.java
+
+
+
+
+
+
+
+ 755
+
+
+
+
+
+
+
+
+
+
+
+
+ webapp/WEB-INF
+
+
+
+ server/target/lib
+
+
+
+
diff --git a/packaging/pom.xml b/packaging/pom.xml
new file mode 100644
index 000000000..43e78f54f
--- /dev/null
+++ b/packaging/pom.xml
@@ -0,0 +1,55 @@
+
+ 4.0.0
+
+ org.openrefine
+ packaging
+ pom
+ 3.0-SNAPSHOT
+
+ OpenRefine - packaging
+ Creates packages for all supported operating systems
+ http://openrefine.org/
+
+
+ org.openrefine
+ openrefine
+ 3.0-SNAPSHOT
+
+
+ ${basedir}/..
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+ 3.1.0
+
+
+ package-distributions
+
+ single
+
+ package
+
+
+ linux.xml
+
+
+
+
+
+
+
+
+
+ ${project.groupId}
+ server
+ ${project.version}
+ provided
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 84f803a2e..a3b716c53 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,6 +15,7 @@
main
server
extensions
+ packaging
@@ -149,7 +150,6 @@
-
diff --git a/server/pom.xml b/server/pom.xml
index a1676b359..95a529a5d 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -28,7 +28,7 @@
- openrefine-server
+ openrefine-${project.version}-server
src