diff --git a/contrib/packages/deb/ubuntu-xenial/debian/changelog b/contrib/packages/deb/ubuntu-xenial/debian/changelog
new file mode 100644
index 0000000..bb73e15
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/changelog
@@ -0,0 +1,38 @@
+tigervnc (1.6.80-4) xenial; urgency=low
+
+  * Build using libfltk1.3-dev as provided by ubuntu.
+  * Build using xorg-server-source as provided by ubuntu.
+
+ -- Dominik Muth <dominik.muth@gmx.de>  Thu, 07 Apr 2016 22:17:09 +0200
+
+tigervnc (1.3.0-3ubuntu1) precise; urgency=low
+
+  * Build Xvnc against native upstream xorg sources, using native config
+    options. Use distro-specific fltk1.3 sources.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 14 Jul 2013 15:22:28 -0400
+
+tigervnc (1.3.0-3) precise; urgency=low
+
+  * Additional dependencies (derived from ldd | dpkg -S).
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 11:01:33 -0400
+
+tigervnc (1.3.0-2) precise; urgency=low
+
+  * Added build dependencies to improve font support in viewer.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 10:44:05 -0400
+
+tigervnc (1.3.0-1) precise; urgency=low
+
+  * Removed java viewer from server package. Fixed typo in server
+    dependencies.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Sun, 07 Jul 2013 09:55:44 -0400
+
+tigervnc (1.3.0) precise; urgency=low
+
+  * Initial release.
+
+ -- Brian P. Hinz <bphinz@users.sourceforge.net>  Fri, 05 Jul 2013 00:47:02 -0400
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/compat b/contrib/packages/deb/ubuntu-xenial/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/control b/contrib/packages/deb/ubuntu-xenial/debian/control
new file mode 100644
index 0000000..87a78d6
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/control
@@ -0,0 +1,70 @@
+Source: tigervnc
+Section: x11
+Priority: optional
+Maintainer: Brian P. Hinz <bphinz@users.sourceforge.net>
+Standards-Version: 3.8.4
+Build-Depends: debhelper (>> 7.1), zlib1g-dev, libjpeg-turbo8-dev, libxaw7-dev (>> 4.1.0), perl-modules, xfonts-base, xutils-dev, libx11-dev, libxau-dev, libxext-dev, libxi-dev, libxkbfile-dev, libxmu-dev, libxt-dev, x11proto-core-dev, cmake (>> 2.8), libgnutls-dev, libpam0g-dev, libpng12-dev, automake, autoconf, libtool, pkg-config, libpixman-1-dev, x11proto-bigreqs-dev, x11proto-composite-dev, x11proto-damage-dev, x11proto-dri2-dev, x11proto-fixes-dev, x11proto-fonts-dev, x11proto-gl-dev, x11proto-input-dev, x11proto-kb-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-resource-dev, x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xext-dev, x11proto-xf86bigfont-dev, x11proto-xf86dga-dev, x11proto-xf86dri-dev, x11proto-xf86vidmode-dev, x11proto-xinerama-dev, libosmesa6-dev, libgl1-mesa-dev, libgl1-mesa-dri, libgl1-mesa-glx, libxfont-dev, x11proto-record-dev, default-jdk, libxtst-dev, libxft-dev, libexpat1-dev, libfontconfig1-dev, libxrender-dev, libpciaccess-dev, curl, bzip2, quilt, libglu1-mesa-dev, libxcursor-dev, libxinerama-dev, libxfixes-dev, libcairo2-dev, x11proto-dri3-dev, libgcrypt20-dev, x11proto-xcmisc-dev, x11proto-present-dev, xorg-server-source, libfltk1.3-dev
+Homepage: http://www.tigervnc.com
+
+Package: tigervncserver
+Architecture: any
+Provides: xserver, vnc-server
+Depends: x11-common | xserver-common, x11-utils, xauth, libbz2-1.0, libc6, libfontenc1, libfreetype6, libgcc1, libgl1-mesa-dri, libgnutls30, libjpeg-turbo8, libp11-kit0, libpam0g, libpixman-1-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxfont1, libxtst6, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, x11-xkb-utils
+Recommends: xfonts-base, x11-xserver-utils
+Suggests: xtigervncviewer, tigervnc-java
+Description: virtual network computing server software
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
+Package: xtigervncviewer
+Architecture: any
+Provides: vncviewer, vnc-viewer
+Depends: libc6, libexpat1, libfontconfig1, libfreetype6, libgcc1, libgnutls30, libjpeg-turbo8, libp11-kit0, libpng12-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxft2, libxrender1, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, libfltk1.3
+Recommends: xfonts-base
+Suggests: tigervncserver, ssh
+Description: virtual network computing client software for X
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
+Package: tigervnc-java
+Architecture: any
+Suggests: tigervncserver
+Provides: vncviewer, vnc-viewer
+Depends:  default-jre
+Description: TigerVNC java applet
+ Virtual Network Computing (VNC) is a remote display system which allows you to
+ view and interact with a virtual desktop environment that is running on another
+ computer on the network.  Using VNC, you can run graphical applications on a
+ remote machine and send only the display from these applications to your local
+ machine.  VNC is platform-independent and supports a wide variety of operating
+ systems and architectures as both servers and clients.
+ .
+ TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
+ bases.  TigerVNC started as a next-generation development effort for TightVNC
+ on Unix and Linux platforms, but it split from its parent project in early 2009
+ so that TightVNC could focus on Windows platforms.  TigerVNC supports a variant
+ of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
+ JPEG codec.
+
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/copyright b/contrib/packages/deb/ubuntu-xenial/debian/copyright
new file mode 100644
index 0000000..003dcc4
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/copyright
@@ -0,0 +1,116 @@
+This package was packaged for Debian by Brian P. Hinz <bphinz@users.sourceforge.net>
+on Tue, 02 Jul 2013 21:33:24 +0500 using the tightvnc package as a base.
+
+It was downloaded from:
+	http://www.tigervnc.org/
+
+COPYRIGHT:
+==========
+
+TigerVNC is
+
+        Copyright (C) 1999 AT&T Laboratories Cambridge
+        Copyright (C) 2002-2005 RealVNC Ltd.
+        Copyright (C) 2000-2006 TightVNC Group
+        Copyright (C) 2005-2006 Martin Koegler
+        Copyright (C) 2005-2006 Sun Microsystems, Inc.
+        Copyright (C) 2006 OCCAM Financial Technology
+        Copyright (C) 2000-2008 Constantin Kaplinsky
+        Copyright (C) 2004-2009 Peter Astrand for Cendio AB
+        Copyright (C) 2010 Antoine Martin
+        Copyright (C) 2010 m-privacy GmbH
+        Copyright (C) 2009-2011 D. R. Commander
+        Copyright (C) 2009-2011 Pierre Ossman for Cendio AB
+        Copyright (C) 2004, 2009-2011 Red Hat, Inc.
+        Copyright (C) 2009-2011 TigerVNC Team
+        All Rights Reserved.
+
+This software is distributed under the GNU General Public Licence as published
+by the Free Software Foundation.  See the file LICENCE.TXT for the conditions
+under which this software is made available.  TigerVNC also contains code from
+other sources.  See the Acknowledgements section below, and the individual
+source files, for details of the conditions under which they are made
+available.
+
+ACKNOWLEDGEMENTS
+================
+
+This distribution contains zlib compression software.  This is:
+
+  Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jean-loup Gailly        Mark Adler
+  jloup@gzip.org          madler@alumni.caltech.edu
+
+  The data format used by the zlib library is described by RFCs (Request for
+  Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
+  (zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
+
+
+This distribution contains public domain DES software by Richard Outerbridge.
+This is:
+
+    Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
+    (GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
+
+
+This distribution contains software from the X Window System.  This is:
+
+ Copyright 1987, 1988, 1998  The Open Group
+ 
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation.
+ 
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ 
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+ OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ 
+ Except as contained in this notice, the name of The Open Group shall not be
+ used in advertising or otherwise to promote the sale, use or other dealings
+ in this Software without prior written authorization from The Open Group.
+ 
+ 
+ Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
+ 
+                         All Rights Reserved
+ 
+ Permission to use, copy, modify, and distribute this software and its 
+ documentation for any purpose and without fee is hereby granted, 
+ provided that the above copyright notice appear in all copies and that
+ both that copyright notice and this permission notice appear in 
+ supporting documentation, and that the name of Digital not be
+ used in advertising or publicity pertaining to distribution of the
+ software without specific, written prior permission.  
+ 
+ DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+ DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+ SOFTWARE.
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service
new file mode 100644
index 0000000..86a8a91
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.service
@@ -0,0 +1,94 @@
+#!/bin/bash
+#
+# Init file for TigerVNC Server
+#
+# chkconfig: - 91 35
+# description: TigerVNC remote X administration daemon.
+#
+# processname: Xvnc
+
+### BEGIN INIT INFO
+# Provides: vncservers
+# Required-Start: networking
+# Required-Stop: networking
+# Default-Start:
+# Default-Stop: 0 1 2 3 4 5 6
+# Short-Description: Starts and stops vncserver
+# Description: Used to provide remote X administration services.
+### END INIT INFO
+
+# Source function library.
+. /lib/lsb/init-functions
+
+### Default variables
+SYSCONFIG="/etc/default/vncservers"
+VNCSERVERS=""
+
+### Read configuration
+[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"
+
+RETVAL=0
+prog=$"VNC server"
+
+start() {
+  echo -n $"Starting $prog: "
+  ulimit -S -c 0 >/dev/null 2>&1
+  for display in ${VNCSERVERS}; do
+    echo -n "${display} "
+    if [ -r $(eval echo ~${display##*:})/.vnc/passwd ]; then
+      unset BASH_ENV ENV
+      log_begin_msg "Starting VNC Server for user ${display##*:}:"
+      su ${display##*:} -c "cd ~${display##*:} && [ -f .vnc/passwd ] && vncserver :${display%%:*} ${VNCSERVERARGS[${display%:*}]}"
+      RETVAL="$?"
+      if [ "$RETVAL" -ne 0 ]; then
+        log_end_msg 1
+        break
+      else
+        log_end_msg 0
+      fi
+    else
+      log_begin_msg "Not starting VNC Server for user ${display##*:}.\n   File \"~${display##*:}/.vnc/passwd\" not found.\n   Create a password file for the VNC server with vncpasswd"
+      log_end_msg 1
+	  fi
+  done
+  echo
+  [ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
+  return $RETVAL
+}
+
+stop() {
+    echo -n $"Shutting down $desc: "
+    for display in ${VNCSERVERS}; do
+      echo -n "${display} "
+      unset BASH_ENV ENV
+      log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
+      su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
+      RETVAL="$?"
+      [ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
+    done
+    echo
+    [ "$RETVAL" -eq 0 ] && rm -f "/var/lock/vncserver"
+    return $RETVAL
+}
+
+restart() {
+    stop
+    start
+}
+
+case "$1" in
+  start)
+    start
+    ;;
+  stop)
+    stop
+    ;;
+  restart|reload)
+    restart
+    ;;
+  *)
+    echo $"Usage: $0 {start|stop|restart}"
+    RETVAL=1
+esac
+
+exit $RETVAL
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig
new file mode 100644
index 0000000..d18d0f1
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/local/vncserver.sysconfig
@@ -0,0 +1,19 @@
+# The VNCSERVERS variable is a list of display:user pairs.
+#
+# Uncomment the lines below to start a VNC server on display :2
+# as my 'myusername' (adjust this to your own).  You will also
+# need to set a VNC password; run 'man vncpasswd' to see how
+# to do that.
+#
+# DO NOT RUN THIS SERVICE if your local area network is
+# untrusted!  For a secure way of using VNC, see this URL:
+# http://kbase.redhat.com/faq/docs/DOC-7028
+
+# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
+
+# Use "-localhost" to prevent remote VNC clients connecting except when
+# doing so through a secure tunnel.  See the "-via" option in the
+# `man vncviewer' manual page.
+
+# VNCSERVERS="2:myusername"
+# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/rules b/contrib/packages/deb/ubuntu-xenial/debian/rules
new file mode 100644
index 0000000..e0606b3
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/rules
@@ -0,0 +1,284 @@
+#!/usr/bin/make -f
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 by Joey Hess.
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+CFLAGS   := $(shell dpkg-buildflags --get CFLAGS)
+CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
+CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
+LDFLAGS  := $(shell dpkg-buildflags --get LDFLAGS)
+
+export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+DEB_HOST_ARCH      ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
+DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+DEB_HOST_ARCH_OS   ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
+ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
+	confflags += --build=$(DEB_HOST_GNU_TYPE)
+else
+	confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
+endif
+SOURCE_NAME    := tigervnc
+SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
+BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
+libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
+
+
+ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
+	CFLAGS += -g -O2 -fPIC
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+	INSTALL_PROGRAM += -s
+endif
+
+export CC = gcc
+
+# use xorg sources as shipped in xorg-server-source package
+XORG_SOURCE_ARCHIVE = /usr/src/xorg-server.tar.xz
+
+xorg-source-stamp: $(XORG_SOURCE_ARCHIVE)
+	tar -C unix/xserver -axf $(XORG_SOURCE_ARCHIVE) --strip-components=1
+	cd unix/xserver && patch -p1 < ../xserver118.patch
+	patch -p1 < debian/xorg-source-patches/100_rethrow_signals.patch
+	patch -p1 < debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
+	touch xorg-source-stamp
+
+configure: config-stamp
+config-stamp: xorg-source-stamp
+	dh_testdir
+	# Add here commands to configure the package.
+	cmake -G"Unix Makefiles" \
+		-DBUILD_STATIC=off \
+		-DCMAKE_INSTALL_PREFIX=/usr
+	(cd unix/xserver; \
+	export PIXMANINCDIR=/usr/include/pixman-1; \
+	autoreconf -fiv; \
+	./configure --prefix=/usr \
+		--disable-silent-rules \
+		--disable-static \
+		--without-dtrace \
+		--disable-strict-compilation \
+		--disable-debug \
+		--disable-unit-tests \
+		--with-int10=x86emu \
+		--with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
+		--with-os-vendor="$(VENDOR)" \
+		--with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
+		--with-xkb-path=/usr/share/X11/xkb \
+		--with-xkb-output=/var/lib/xkb \
+		--with-default-xkb-rules=evdev \
+		--disable-devel-docs \
+		--enable-mitshm \
+		--enable-xres \
+		--disable-xcsecurity \
+		--disable-tslib \
+		--enable-dbe \
+		--disable-xf86bigfont \
+		--disable-dpms \
+		--disable-config-hal \
+		--disable-config-udev \
+		--disable-xorg \
+		--disable-xquartz \
+		--disable-xwin \
+		--disable-xfake \
+		--disable-install-setuid \
+		--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
+		--enable-aiglx \
+		--enable-composite \
+		--enable-record \
+		--enable-xv \
+		--enable-xvmc \
+		--enable-dga \
+		--enable-screensaver \
+		--enable-xdmcp \
+		--enable-xdm-auth-1 \
+		--enable-glx \
+		--disable-dri --enable-dri2 --enable-dri3 \
+		--enable-xinerama \
+		--enable-xf86vidmode \
+		--enable-xace \
+		--enable-xfree86-utils \
+		--disable-dmx \
+		--disable-xvfb \
+		--disable-xnest \
+		--disable-kdrive \
+		--disable-xephyr \
+		--enable-xfbdev \
+		--with-sha1=libgcrypt \
+		--enable-xcsecurity \
+		--disable-docs \
+		--disable-selective-werror)
+	touch config-stamp
+
+build-arch: config-stamp build-arch-stamp
+build-arch-stamp:
+	dh_testdir
+
+	# Add here command to compile/build the package.
+	# Build first things.
+	# Build Xvnc
+	make LDFLAGS="-lpng"
+	(cd unix/xserver;make)
+
+	touch build-arch-stamp
+
+build-indep: config-stamp  build-indep-stamp
+build-indep-stamp:
+	dh_testdir
+
+	# Add here command to compile/build the arch indep package.
+	# It's ok not to do anything here, if you don't need to build
+	#  anything for this package.
+	#/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
+	(cd media;make)
+	(cd java;cmake -G"Unix Makefiles";JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" make)
+
+	touch build-indep-stamp
+
+build: build-arch build-indep
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-arch-stamp build-indep-stamp config-stamp
+
+	# Add here commands to clean up after the build process.
+	dh_clean
+
+install: DH_OPTIONS=
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_prep
+	dh_installdirs
+	# Add here commands to install the package into debian/vnc.
+	make install DESTDIR=$(CURDIR)/debian/tigervncserver
+	(cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
+	# rename server files to tigervnc specific names
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
+		$(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
+		$(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
+		$(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
+		$(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
+		$(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
+		$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
+		$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
+		$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
+		$(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
+		$(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
+	# delete development files
+	rm -f $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
+	# install server service
+	install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
+		$(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
+	install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
+		$(CURDIR)/debian/tigervncserver/etc/default/vncservers
+	# move viewer files to viewer package, rename on the fly
+	mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/bin
+	mv $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer \
+		$(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
+	mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1
+	mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1 \
+		$(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
+	mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
+	mv $(CURDIR)/debian/tigervncserver/usr/share/applications \
+		$(CURDIR)/debian/xtigervncviewer/usr/share/
+	mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
+	mv $(CURDIR)/debian/tigervncserver/usr/share/icons \
+		$(CURDIR)/debian/xtigervncviewer/usr/share/
+	# tigervnc-java
+	mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
+	(cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
+	# install additional license files
+	mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer
+	cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+		$(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer/
+	mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java
+	cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+		$(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java/
+	mkdir -p $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
+	mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
+		$(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver/
+	rm -rf $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/
+#	dh_movefiles
+
+# Build architecture-independent files here.
+# Pass -i to all debhelper commands in this target to reduce clutter.
+binary-indep: build install
+
+binary-indep-keep:
+	dh_testdir -i
+	dh_testroot -i
+#	dh_installdebconf -i
+	dh_install
+	dh_installdocs -i
+	dh_installexamples -i
+	dh_installmenu -i
+#	dh_installlogrotate -i
+#	dh_installemacsen -i
+#	dh_installpam -i
+#	dh_installmime -i
+#	dh_installinit -i
+	dh_installcron -i
+	dh_installman -i
+	dh_installinfo -i
+#	dh_undocumented -i
+	dh_installchangelogs  -i
+	dh_link -i
+	dh_compress -i
+	dh_fixperms -i
+	dh_installdeb -i
+	dh_perl -i
+	dh_gencontrol -i
+	dh_md5sums -i
+	dh_builddeb -i
+
+# Build architecture-dependent files here.
+binary-arch: build install
+	dh_testdir -a
+	dh_testroot -a
+#	dh_installdebconf -a
+	dh_installdocs -a
+#	dh_installexamples -a
+	dh_installmenu -a
+#	dh_installlogrotate -a
+#	dh_installemacsen -a
+#	dh_installpam -a
+#	dh_installmime -a
+	dh_install
+	dh_installinit -a
+#	dh_installcron -a
+	dh_installman -a
+	dh_installinfo -a
+#	dh_undocumented -a
+	dh_installchangelogs  -a
+	# Remove empty directories
+	dh_strip -a
+	dh_link -a
+	dh_compress -a
+	dh_fixperms -a
+	dh_makeshlibs -a
+	dh_installdeb -a
+	dh_perl -a
+	dh_shlibdeps -a
+	dh_gencontrol -a
+	dh_md5sums -a
+	dh_builddeb -a
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/source/format b/contrib/packages/deb/ubuntu-xenial/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst
new file mode 100644
index 0000000..32e7ea7
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.postinst
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "configure" ]; then
+    MAN=/usr/share/man/man1
+    BIN=/usr/bin
+    update-alternatives --install \
+       $BIN/vncserver       vncserver       $BIN/tigervncserver 64 \
+       --slave \
+       $MAN/vncserver.1.gz  vncserver.1.gz  $MAN/tigervncserver.1.gz
+    update-alternatives --install \
+       $BIN/Xvnc            Xvnc            $BIN/Xtigervnc 74 \
+       --slave \
+       $MAN/Xvnc.1.gz       Xvnc.1.gz       $MAN/Xtigervnc.1.gz
+    update-alternatives --install \
+       $BIN/x0vncserver     x0vncserver     $BIN/x0tigervncserver 74 \
+       --slave \
+       $MAN/x0vncserver.1.gz x0vncserver.1.gz $MAN/x0tigervncserver.1.gz
+    update-alternatives --install \
+       $BIN/vncpasswd        vncpasswd            $BIN/tigervncpasswd 74 \
+       --slave \
+       $MAN/vncpasswd.1.gz   vncpasswd.1.gz       $MAN/tigervncpasswd.1.gz
+    update-alternatives --install \
+       $BIN/vncconfig       vncconfig       $BIN/tigervncconfig 64 \
+       --slave \
+       $MAN/vncconfig.1.gz  vncconfig.1.gz  $MAN/tigervncconfig.1.gz
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm
new file mode 100644
index 0000000..26608e3
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/tigervncserver.prerm
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "remove" ] ; then
+    BIN=/usr/bin
+    update-alternatives --remove \
+       vncserver $BIN/tigervncserver
+    update-alternatives --remove \
+       Xvnc $BIN/Xtigervnc
+    update-alternatives --remove \
+       x0vncserver $BIN/x0tigervncserver
+    update-alternatives --remove \
+       vncpasswd $BIN/tigervncpasswd
+    update-alternatives --remove \
+       tigervncconfig $BIN/tigervncconfig
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch
new file mode 100644
index 0000000..b40b148
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/100_rethrow_signals.patch
@@ -0,0 +1,26 @@
+--- a/unix/xserver/hw/vnc/xvnc.c	2013-07-14 14:05:29.963390223 -0400
++++ b/unix/xserver/hw/vnc/xvnc.c	2013-07-14 14:04:12.840357191 -0400
+@@ -250,7 +250,7 @@
+ #if XORG < 111
+ AbortDDX()
+ #else
+-AbortDDX(enum ExitCode error)
++SigAbortDDX(int signo, enum ExitCode error)
+ #endif
+ {
+ #if XORG < 111
+@@ -260,6 +260,14 @@
+ #endif
+ }
+ 
++#if XORG >= 111
++void
++AbortDDX(enum ExitCode error)
++{
++    SigAbortDDX(0, error);
++}
++#endif
++
+ #ifdef __DARWIN__
+ void
+ DarwinHandleGUI(int argc, char *argv[])
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
new file mode 100644
index 0000000..4575f6a
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
@@ -0,0 +1,10 @@
+--- a/unix/xserver/man/Makefile.am	2013-03-30 17:51:01.707258746 -0400
++++ b/unix/xserver/man/Makefile.am	2013-03-30 17:51:47.606569692 -0400
+@@ -2,5 +2,7 @@
+ # (i.e. those handled in the os/utils.c options processing instead of in
+ #  the DDX-level options processing)
+ 
++if ENABLE_DOCS
+ include $(top_srcdir)/manpages.am
+ appman_PRE = Xserver.man
++endif ENABLE_DOCS 
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu
new file mode 100644
index 0000000..aac942c
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.menu
@@ -0,0 +1,5 @@
+?package(xtigervncviewer):needs="x11" \
+  section="Applications/Network/Communication" \
+  hints="VNC,remote-control"\
+  title="xtigervncviewer" \
+  command="/usr/bin/xtigervncviewer"
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst
new file mode 100644
index 0000000..4df0c65
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.postinst
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+if [ "$1" = "configure" ]; then
+    MAN=/usr/share/man/man1
+    BIN=/usr/bin
+    update-alternatives --install \
+       $BIN/vncviewer       vncviewer       $BIN/xtigervncviewer 74 \
+       --slave \
+       $MAN/vncviewer.1.gz  vncviewer.1.gz  $MAN/xtigervncviewer.1.gz \
+       --slave \
+       $MAN/xvncviewer.1.gz xvncviewer.1.gz $MAN/xtigervncviewer.1.gz \
+       --slave \
+       $BIN/xvncviewer      xvncviewer      $BIN/xtigervncviewer
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm
new file mode 100644
index 0000000..7a51fd2
--- /dev/null
+++ b/contrib/packages/deb/ubuntu-xenial/debian/xtigervncviewer.prerm
@@ -0,0 +1,11 @@
+#!/bin/sh -e
+
+if [ "$1" = "remove" ] ; then
+    BIN=/usr/bin
+    update-alternatives --remove \
+       vncviewer $BIN/xtigervncviewer
+fi
+
+#DEBHELPER#
+
+exit 0
