diff --git a/debian/Makefile b/debian/Makefile
new file mode 100644
index 0000000..5ba6119
--- /dev/null
+++ b/debian/Makefile
@@ -0,0 +1,402 @@
+SHELL=		/bin/bash
+
+BASE_VERSION=	1.11.5
+BASE_RELEASE=	1
+BASE_SRC=	nginx-$(BASE_VERSION).tar.gz
+SRCDIR=		nginx-$(BASE_VERSION)
+SRCPATH?=	../..
+
+CODENAME=	$(shell lsb_release -cs)
+ARCH=		$(shell uname -m)
+NPROC=		$(shell getconf _NPROCESSORS_ONLN)
+MODSRC_PREFIX=	extra/
+
+MODULES=	geoip image-filter njs perl xslt
+
+MODULE_SUMMARY_geoip=		GeoIP dynamic modules
+MODULE_SUMMARY_image_filter=	image filter dynamic module
+MODULE_SUMMARY_njs=		nginScript dynamic modules
+MODULE_SUMMARY_perl=		Perl dynamic module
+MODULE_SUMMARY_xslt=		xslt dynamic module
+
+MODULE_VERSION_geoip=		$(BASE_VERSION)
+MODULE_RELEASE_geoip=		1
+MODULE_VERSION_image_filter=	$(BASE_VERSION)
+MODULE_RELEASE_image_filter=	1
+MODULE_VERSION_njs=		0.1.3
+MODULE_RELEASE_njs=		1
+MODULE_VERSION_perl=		$(BASE_VERSION)
+MODULE_RELEASE_perl=		1
+MODULE_VERSION_xslt=		$(BASE_VERSION)
+MODULE_RELEASE_xslt=		1
+
+MODULE_SOURCES_njs=		njs-$(MODULE_VERSION_njs).tar.gz
+
+MODULE_CONFARGS_geoip=		--with-http_geoip_module=dynamic \
+				--with-stream_geoip_module=dynamic
+MODULE_CONFARGS_image_filter=	--with-http_image_filter_module=dynamic
+MODULE_CONFARGS_njs=		--add-dynamic-module=$(MODSRC_PREFIX)njs-$(MODULE_VERSION_njs)/nginx
+MODULE_CONFARGS_perl=		--with-http_perl_module=dynamic
+MODULE_CONFARGS_xslt=		--with-http_xslt_module=dynamic
+
+# geoip
+
+MODULE_BUILD_DEPENDS_geoip=,libgeoip-dev
+MODULE_DEPENDS_geoip=,libgeoip1
+
+define MODULE_POST_geoip
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_geoip) for nginx have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_geoip_module.so;
+    load_module modules/ngx_stream_geoip_module.so;
+
+Please refer to the modules documentation for further details:
+http://nginx.org/en/docs/http/ngx_http_geoip_module.html
+http://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_geoip
+
+# image-filter
+
+MODULE_BUILD_DEPENDS_image_filter=,libgd-dev
+
+define MODULE_POST_image_filter
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_image_filter) for nginx has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_image_filter_module.so;
+
+Please refer to the module documentation for further details:
+http://nginx.org/en/docs/http/ngx_http_image_filter_module.html
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_image_filter
+
+# njs
+
+MODULE_VERSION_PREFIX_njs=$(BASE_VERSION).
+
+define MODULE_PREINSTALL_njs
+	mkdir -p $$(INSTALLDIR)/usr/share/doc/nginx-module-njs
+	install -m644 $$(BUILDDIR_nginx)/extra/njs-$(MODULE_VERSION_njs)/README $$(INSTALLDIR)/usr/share/doc/nginx-module-njs/
+endef
+export MODULE_PREINSTALL_njs
+
+define MODULE_POST_njs
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_njs) for nginx have been installed.
+To enable these modules, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_js_module.so;
+    load_module modules/ngx_stream_js_module.so;
+
+Please refer to the modules documentation for further details:
+/usr/share/doc/nginx-module-njs/README
+https://www.nginx.com/resources/wiki/nginScript/
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_njs
+
+# perl
+
+MODULE_BUILD_DEPENDS_perl=, libperl-dev
+MODULE_DEPENDS_perl=, $$\{perl:Depends\}
+
+define MODULE_PREINSTALL_perl
+	cd $$(BUILDDIR_nginx) \&\& $$(MAKE) DESTDIR=$$(INSTALLDIR) INSTALLDIRS=vendor -f objs/Makefile install_perl_modules
+	find $$(INSTALLDIR)/ -type f -name .packlist -exec rm -f '{}' \\;
+	find $$(INSTALLDIR)/ -type f -name perllocal.pod -exec rm -f '{}' \\;
+	find $$(INSTALLDIR)/ -type f -empty -exec rm -f '{}' \\;
+	find $$(INSTALLDIR)/ -type f -iname '*.so' -exec chmod 0755 '{}' \\;
+endef
+export MODULE_PREINSTALL_perl
+
+define MODULE_POST_perl
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_perl) for nginx has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_perl_module.so;
+
+Please refer to the module documentation for further details:
+http://nginx.org/en/docs/http/ngx_http_perl_module.html
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_perl
+
+# xslt
+
+MODULE_BUILD_DEPENDS_xslt=, libxslt1-dev
+
+define MODULE_POST_xslt
+cat <<BANNER
+----------------------------------------------------------------------
+
+The $(MODULE_SUMMARY_xslt) for nginx has been installed.
+To enable this module, add the following to /etc/nginx/nginx.conf
+and reload nginx:
+
+    load_module modules/ngx_http_xslt_filter_module.so;
+
+Please refer to the module documentation for further details:
+http://nginx.org/en/docs/http/ngx_http_xslt_module.html
+
+----------------------------------------------------------------------
+BANNER
+endef
+export MODULE_POST_xslt
+
+
+BASE_CONFIGURE_ARGS=\
+	--prefix=/etc/nginx \
+	--sbin-path=/usr/sbin/nginx \
+	--modules-path=/usr/lib/nginx/modules \
+	--conf-path=/etc/nginx/nginx.conf \
+	--error-log-path=/var/log/nginx/error.log \
+	--http-log-path=/var/log/nginx/access.log \
+	--pid-path=/var/run/nginx.pid \
+	--lock-path=/var/run/nginx.lock \
+	--http-client-body-temp-path=/var/cache/nginx/client_temp \
+	--http-proxy-temp-path=/var/cache/nginx/proxy_temp \
+	--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
+	--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
+	--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
+	--user=nginx \
+	--group=nginx \
+	--with-compat \
+	--with-file-aio \
+	--with-threads \
+	--with-http_addition_module \
+	--with-http_auth_request_module \
+	--with-http_dav_module \
+	--with-http_flv_module \
+	--with-http_gunzip_module \
+	--with-http_gzip_static_module \
+	--with-http_mp4_module \
+	--with-http_random_index_module \
+	--with-http_realip_module \
+	--with-http_secure_link_module \
+	--with-http_slice_module \
+	--with-http_ssl_module \
+	--with-http_stub_status_module \
+	--with-http_sub_module \
+	--with-http_v2_module \
+	--with-mail \
+	--with-mail_ssl_module \
+	--with-stream \
+	--with-stream_realip_module \
+	--with-stream_ssl_module \
+	--with-stream_ssl_preread_module
+
+export CR=\\n
+
+modname = $(shell echo $1 | cut -d '-' -f 3- | tr '-' '_')
+
+default:
+	@echo "valid targets: all base $(addprefix module-, $(MODULES)) test test-debug"
+
+all:	base modules
+	@echo "===> all done"
+
+modules:	$(addprefix module-, $(MODULES))
+
+rules:	rules-base $(addprefix rules-module-, $(MODULES))
+
+base:	rules-base
+	@echo "===> Building base package"
+	@$(SHELL) -c "cd debuild-base/$(SRCDIR) ; export DEB_BUILD_OPTIONS=parallel=$(NPROC) ; time -p debuild -us -uc"
+	@find debuild-base/ -maxdepth 1 -type f -exec cp {} ../../ \;
+	@ln -s debuild-base/$(SRCDIR)/debian/nginx/usr/sbin base
+
+$(BASE_SRC):
+	@{ \
+	if [ -f $(SRCPATH)/$(BASE_SRC) ]; then \
+		cp -P $(SRCPATH)/$(BASE_SRC) $(BASE_SRC) ; \
+	elif [ -f $(SRCPATH)/nginx_$(BASE_VERSION).orig.tar.gz ]; then \
+		cp -P $(SRCPATH)/nginx_$(BASE_VERSION).orig.tar.gz $(BASE_SRC) ; \
+	else \
+		wget http://nginx.org/download/$(BASE_SRC) ; \
+	fi ; \
+	}
+
+rules-base: $(BASE_SRC)
+	@echo "===> Creating $@"
+	@{ \
+	set -e ; \
+	mkdir -p debuild-base ; \
+	cp $(BASE_SRC) debuild-base/nginx_$(BASE_VERSION).orig.tar.gz ; \
+	tar -C debuild-base -xf debuild-base/nginx_$(BASE_VERSION).orig.tar.gz ; \
+	mkdir -p debuild-base/$(SRCDIR)/debian ; \
+	mkdir -p debuild-base/$(SRCDIR)/debian/source ; \
+	echo "3.0 (quilt)" > debuild-base/$(SRCDIR)/debian/source/format ; \
+	echo "9" > debuild-base/$(SRCDIR)/debian/compat ; \
+	cat nginx.rules.in | sed \
+		-e 's#%%CODENAME%%#$(CODENAME)#g' \
+		-e 's#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g' \
+		-e 's#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g' \
+		> debuild-base/$(SRCDIR)/debian/rules ; \
+	cat nginx.changelog.in | sed \
+		-e 's#%%CODENAME%%#$(CODENAME)#g' \
+		-e 's#%%MAIN_VERSION%%#$(BASE_VERSION)#g' \
+		-e 's#%%MAIN_RELEASE%%#$(BASE_RELEASE)#g' \
+		> debuild-base/$(SRCDIR)/debian/changelog ; \
+	cp nginx.control.in debuild-base/$(SRCDIR)/debian/control ; \
+	cp copyright ../CHANGES ../CHANGES.ru nginx.* nginx-debug.default debuild-base/$(SRCDIR)/debian/ ; \
+	chmod +x debuild-base/$(SRCDIR)/debian/rules ; \
+	ln -s debuild-base/$(SRCDIR)/debian/rules rules-base ; \
+	}
+
+module-%: rules-module-%
+	@echo "===> Building nginx-$@ package" ; \
+	$(SHELL) -c "cd debuild-$@/$(SRCDIR) ; export DEB_BUILD_OPTIONS=parallel=$(NPROC) ; time -p debuild -us -uc" ; \
+	find debuild-$@/ -maxdepth 1 -type f -exec cp {} ../../ \;; \
+	ln -s debuild-$@/$(SRCDIR)/debian/nginx-$@/usr/lib/nginx/modules $@
+
+rules-module-%: $(BASE_SRC)
+	@echo "===> Creating $@"
+	@{ \
+	set -e ; \
+	curdir=`pwd` ; \
+	module=`echo $@ | cut -d '-' -f 3- | tr '-' '_'` ; \
+	module_asis=`echo $@ | cut -d '-' -f 3-` ; \
+	builddir=`echo debuild-module-$${module_asis}` ; \
+	mkdir -p $${builddir} ; \
+	cp $(BASE_SRC) $${builddir}/nginx-module-$${module_asis}_$(MODULE_VERSION_PREFIX_$(call modname, $@))$(MODULE_VERSION_$(call modname, $@)).orig.tar.gz ; \
+	tar -C $${builddir} -xf $${builddir}/nginx-module-$${module_asis}_$(MODULE_VERSION_PREFIX_$(call modname, $@))$(MODULE_VERSION_$(call modname, $@)).orig.tar.gz ; \
+	mkdir -p $${builddir}/$(SRCDIR)/debian/extra ; \
+	mkdir -p $${builddir}/$(SRCDIR)/debian/source ; \
+	echo "3.0 (quilt)" > $${builddir}/$(SRCDIR)/debian/source/format ; \
+	echo "9" > $${builddir}/$(SRCDIR)/debian/compat ; \
+	for src in $(MODULE_SOURCES_$(call modname, $@)); do \
+		tar -C $${builddir}/$(SRCDIR)/debian/extra -xf extra/$${src} ; \
+	done ; \
+	for p in $(MODULE_PATCHES_$(call modname, $@)); do \
+		( cd $${builddir}/$(SRCDIR)/debian/extra && patch -p1 < $${curdir}/extra/$${p} ) ; \
+	done ; \
+	( cd $${builddir}/$(SRCDIR) && find debian/ -type f -exec file --mime {} \; | fgrep 'charset=binary' | cut -d ':' -f 1 > include-binaries && mv include-binaries debian/source/ ) ; \
+	copyright_file="nginx-module-$${module}.copyright" ; \
+	if [ -f $${copyright_file} ]; then \
+		copyright_source=$${copyright_file} ; \
+	else \
+		copyright_source=copyright ; \
+	fi ; \
+	changelog_file="nginx-module-$${module}.changelog.in" ; \
+	if [ -f $${changelog_file} ]; then \
+		changelog_tmpl=$${changelog_file} ; \
+	else \
+		changelog_tmpl=nginx-module.changelog.in ; \
+	fi ; \
+	cp $${copyright_source} $${builddir}/$(SRCDIR)/debian/copyright ; \
+	definitions=`echo "$$MODULE_DEFINITIONS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	addcontroltags=`echo "$$MODULE_ADD_CONTROL_TAGS_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	prebuild=`echo "$$MODULE_PREBUILD_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	preinstall=`echo "$$MODULE_PREINSTALL_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	post=`echo "$$MODULE_POST_$(call modname, $@)" | sed -e ':a' -e 'N' -e '$$!ba' -e "s/\n/\$$CR/g"` ; \
+	cat nginx-module.control.in | sed \
+		-e "s#%%MODULE%%#$${module_asis}#g" \
+		-e "s#%%SUMMARY%%#nginx $(MODULE_SUMMARY_$(call modname, $@))#g" \
+		-e "s#%%SHORT_SUMMARY%%#$(MODULE_SUMMARY_$(call modname, $@))#g" \
+		-e "s#%%CODENAME%%#$(CODENAME)#g" \
+		-e "s#%%MAIN_VERSION%%#$(BASE_VERSION)#g" \
+		-e "s#%%MAIN_RELEASE%%#$(BASE_RELEASE)#g" \
+		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
+		-e "s#%%MODULE_BUILD_DEPENDS%%#$(MODULE_BUILD_DEPENDS_$(call modname, $@))#g" \
+		-e "s#%%MODULE_DEPENDS%%#$(MODULE_DEPENDS_$(call modname, $@))#g" \
+		-e "s#%%ADD_CONTROL_TAGS%%#$${addcontroltags}#g" \
+	> $${builddir}/$(SRCDIR)/debian/control ; \
+	cat $${changelog_tmpl} | sed \
+		-e "s#%%MODULE%%#$${module_asis}#g" \
+		-e "s#%%CODENAME%%#$(CODENAME)#g" \
+		-e "s#%%VERSION_PREFIX%%#$(MODULE_VERSION_PREFIX_$(call modname, $@))#g" \
+		-e "s#%%MODULE_VERSION%%#$(MODULE_VERSION_$(call modname, $@))#g" \
+		-e "s#%%MODULE_RELEASE%%#$(MODULE_RELEASE_$(call modname, $@))#g" \
+	> $${builddir}/$(SRCDIR)/debian/changelog ; \
+	cat nginx-module.rules.in | sed \
+		-e "s#%%MODULE%%#$${module_asis}#g" \
+		-e "s#%%CODENAME%%#$(CODENAME)#g" \
+		-e "s#%%MAIN_VERSION%%#$(BASE_VERSION)#g" \
+		-e "s#%%MAIN_RELEASE%%#$(BASE_RELEASE)#g" \
+		-e "s#%%BASE_CONFIGURE_ARGS%%#$(BASE_CONFIGURE_ARGS)#g" \
+		-e "s#%%MODULE_CONFIGURE_ARGS%%#$(MODULE_CONFARGS_$(call modname, $@))#g" \
+		-e "s#%%MODULE_DEFINITIONS%%#$${definitions}#g" \
+		-e "s#%%MODULE_PREBUILD%%#$${prebuild}#g" \
+		-e "s#%%MODULE_PREINSTALL%%#$${preinstall}#g" \
+	> $${builddir}/$(SRCDIR)/debian/rules ; \
+	cat nginx-module.postinst.in | sed \
+		-e "s#%%MODULE_POST%%#$$post#g" \
+	> $${builddir}/$(SRCDIR)/debian/nginx-module-$${module_asis}.postinst ; \
+	chmod +x $${builddir}/$(SRCDIR)/debian/rules ; \
+	ln -s $${builddir}/$(SRCDIR)/debian/rules $@ ; \
+	}
+
+nginx-tests:
+	@{ \
+	if [ -d "$(SRCPATH)/nginx-tests" ]; then \
+		echo "===> Copying tests from $(SRCPATH)/nginx-tests" ; \
+		cp -rP $(SRCPATH)/nginx-tests nginx-tests ; \
+	else \
+		echo "===> Cloning tests" ; \
+		hg clone http://hg.nginx.org/nginx-tests ; \
+	fi ; \
+	}
+
+test: base nginx-tests
+	@echo "===> Running tests with regular binary/modules"
+	@{ \
+	pwd=`pwd` ; \
+	globals= ; \
+	for so in `find module-*/ -maxdepth 1 -type f -name "*module.so"`; do \
+		globals="$$globals load_module $$pwd/$$so;" ; \
+	done ; \
+	if [ -d $$pwd/debuild-module-perl ]; then \
+		globals="$$globals env PERL5LIB=$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl:$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl/blib/arch;" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	}
+
+test-debug: base nginx-tests
+	@echo "===> Running tests with debug binary/modules"
+	@{ \
+	pwd=`pwd` ; \
+	globals= ; \
+	for so in `find module-*/ -maxdepth 1 -type f -name "*module-debug.so"`; do \
+		globals="$$globals load_module $$pwd/$$so;" ; \
+	done ; \
+	if [ -d $$pwd/debuild-module-perl ]; then \
+		globals="$$globals env PERL5LIB=$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl:$$pwd/debuild-module-perl/nginx-$(BASE_VERSION)/debian/build-nginx/objs/src/http/modules/perl/blib/arch;" ; \
+	fi ; \
+	cd nginx-tests && TEST_NGINX_BINARY=$$pwd/base/nginx-debug TEST_NGINX_GLOBALS="$$globals" prove . ; \
+	}
+
+clean:
+	@rm -rf base module-* rules-base rules-module-* debuild-base debuild-module-* nginx-tests
+
+.PHONY:	default all modules rules test test-debug clean
+
+.SECONDARY:
diff --git a/debian/control b/debian/control
deleted file mode 100644
index 5ad76cf..0000000
--- a/debian/control
+++ /dev/null
@@ -1,67 +0,0 @@
-Source: nginx
-Section: httpd
-Priority: optional
-Maintainer: Sergey Budnevitch <sb@nginx.com>
-Build-Depends: debhelper (>= 9~),
-               dpkg-dev (>= 1.16.1~),
-               libgd2-xpm-dev,
-               libgeoip-dev,
-               libpcre3-dev,
-               libperl-dev,
-               libssl-dev (>= 0.9.7),
-               libxslt1-dev,
-               lsb-release,
-               zlib1g-dev
-Standards-Version: 3.9.8.0
-Homepage: http://nginx.org
-
-Package: nginx
-Architecture: any
-Depends: ${misc:Depends}, ${shlibs:Depends}, lsb-base, adduser
-Provides: httpd
-Description: high performance web server
- nginx [engine x] is an HTTP and reverse proxy server, as well as
- a mail proxy server.
-
-Package: nginx-dbg
-Architecture: any
-Section: debug
-Priority: extra
-Depends: ${misc:Depends}, nginx (= ${source:Version})
-Description: nginx debug symbols
- This package contains the debugging symbols for nginx.
-
-Package: nginx-module-xslt
-Architecture: any
-Priority: extra
-Depends: ${misc:Depends}, ${shlibs:Depends}, nginx (= ${source:Version})
-Description: xslt module
- This package contains dynamic xslt module for nginx.
-
-Package: nginx-module-image-filter
-Architecture: any
-Priority: extra
-Depends: ${misc:Depends}, ${shlibs:Depends}, nginx (= ${source:Version})
-Description: image filter module
- This package contains dynamic image filter module for nginx.
-
-Package: nginx-module-geoip
-Architecture: any
-Priority: extra
-Depends: ${misc:Depends}, ${shlibs:Depends}, nginx (= ${source:Version})
-Description: geoip modules
- This package contains dynamic geoip modules for nginx.
-
-Package: nginx-module-perl
-Architecture: any
-Priority: extra
-Depends: ${misc:Depends}, ${shlibs:Depends}, ${perl:Depends}, nginx (= ${source:Version})
-Description: perl module
- This package contains dynamic perl module for nginx.
-
-Package: nginx-module-njs
-Architecture: any
-Priority: extra
-Depends: ${misc:Depends}, ${shlibs:Depends}, nginx (= ${source:Version})
-Description: nJScript module
- This package contains dynamic nJScript module for nginx.
diff --git a/debian/extra/njs-0.1.2.tar.gz b/debian/extra/njs-0.1.2.tar.gz
deleted file mode 100644
index cc6ade5..0000000
--- a/debian/extra/njs-0.1.2.tar.gz
+++ /dev/null
Binary files differ
diff --git a/debian/extra/njs-0.1.3.tar.gz b/debian/extra/njs-0.1.3.tar.gz
new file mode 100644
index 0000000..7978c47
--- /dev/null
+++ b/debian/extra/njs-0.1.3.tar.gz
Binary files differ
diff --git a/debian/nginx-module-geoip.install b/debian/nginx-module-geoip.install
deleted file mode 100644
index 9eade47..0000000
--- a/debian/nginx-module-geoip.install
+++ /dev/null
@@ -1,4 +0,0 @@
-objs/ngx_http_geoip_module.so usr/lib/nginx/modules
-objs/ngx_http_geoip_module-debug.so usr/lib/nginx/modules
-objs/ngx_stream_geoip_module.so usr/lib/nginx/modules
-objs/ngx_stream_geoip_module-debug.so usr/lib/nginx/modules
diff --git a/debian/nginx-module-geoip.preinst b/debian/nginx-module-geoip.preinst
deleted file mode 100644
index c7c8e97..0000000
--- a/debian/nginx-module-geoip.preinst
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-
-set -e
-
-case "$1" in
-    install)
-        cat <<BANNER
-----------------------------------------------------------------------
-
-The GeoIP dynamic modules for nginx have been installed.
-To enable those modules, add the following to /etc/nginx/nginx.conf
-and reload nginx:
-
-    load_module modules/ngx_http_geoip_module.so;
-    load_module modules/ngx_stream_geoip_module.so;
-
-Please refer to the modules documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_geoip_module.html
-http://nginx.org/en/docs/stream/ngx_stream_geoip_module.html
-
-----------------------------------------------------------------------
-BANNER
-        ;;
-    upgrade|abort-upgrade)
-        ;;
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-        ;;
-esac
-
-#DEBHELPER#
-
-exit 0
diff --git a/debian/nginx-module-image-filter.install b/debian/nginx-module-image-filter.install
deleted file mode 100644
index 4c1c443..0000000
--- a/debian/nginx-module-image-filter.install
+++ /dev/null
@@ -1,2 +0,0 @@
-objs/ngx_http_image_filter_module.so usr/lib/nginx/modules
-objs/ngx_http_image_filter_module-debug.so usr/lib/nginx/modules
diff --git a/debian/nginx-module-image-filter.preinst b/debian/nginx-module-image-filter.preinst
deleted file mode 100644
index 13ca418..0000000
--- a/debian/nginx-module-image-filter.preinst
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-set -e
-
-case "$1" in
-    install)
-        cat <<BANNER
-----------------------------------------------------------------------
-
-The image filter dynamic module for nginx has been installed.
-To enable this module, add the following to /etc/nginx/nginx.conf
-and reload nginx:
-
-    load_module modules/ngx_http_image_filter_module.so;
-
-Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_image_filter_module.html
-
-----------------------------------------------------------------------
-BANNER
-        ;;
-    upgrade|abort-upgrade)
-        ;;
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-        ;;
-esac
-
-#DEBHELPER#
-
-exit 0
diff --git a/debian/nginx-module-njs.changelog.in b/debian/nginx-module-njs.changelog.in
new file mode 100644
index 0000000..d0f100c
--- /dev/null
+++ b/debian/nginx-module-njs.changelog.in
@@ -0,0 +1,6 @@
+nginx-module-njs (%%VERSION_PREFIX%%%%MODULE_VERSION%%-%%MODULE_RELEASE%%~%%CODENAME%%) %%CODENAME%%; urgency=low
+
+  * base version updated to 1.11.5
+  * njs module updated to 0.1.3
+
+ -- Andrei Belov <defan@nginx.com>  Mon, 10 Oct 2016 10:15:00 +0300
diff --git a/debian/nginx-module-njs.install b/debian/nginx-module-njs.install
deleted file mode 100644
index 5d8c8de..0000000
--- a/debian/nginx-module-njs.install
+++ /dev/null
@@ -1,4 +0,0 @@
-objs/ngx_http_js_module.so usr/lib/nginx/modules
-objs/ngx_http_js_module-debug.so usr/lib/nginx/modules
-objs/ngx_stream_js_module.so usr/lib/nginx/modules
-objs/ngx_stream_js_module-debug.so usr/lib/nginx/modules
diff --git a/debian/nginx-module-njs.preinst b/debian/nginx-module-njs.preinst
deleted file mode 100644
index 363b8d8..0000000
--- a/debian/nginx-module-njs.preinst
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh
-
-set -e
-
-case "$1" in
-    install)
-        cat <<BANNER
-----------------------------------------------------------------------
-
-The nJScript dynamic modules for nginx have been installed.
-To enable those modules, add the following to /etc/nginx/nginx.conf
-and reload nginx:
-
-    load_module modules/ngx_http_js_module.so;
-    load_module modules/ngx_stream_js_module.so;
-
-Please refer to the modules documentation for further details:
-https://www.nginx.com/resources/wiki/nginScript/
-
-----------------------------------------------------------------------
-BANNER
-        ;;
-    upgrade|abort-upgrade)
-        ;;
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-        ;;
-esac
-
-#DEBHELPER#
-
-exit 0
diff --git a/debian/nginx-module-njs.version b/debian/nginx-module-njs.version
deleted file mode 100644
index 4f2027f..0000000
--- a/debian/nginx-module-njs.version
+++ /dev/null
@@ -1 +0,0 @@
-1.11.4.0.1.2-1
diff --git a/debian/nginx-module-perl.install b/debian/nginx-module-perl.install
deleted file mode 100755
index 9ac1028..0000000
--- a/debian/nginx-module-perl.install
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/perl -w
-
-use Config;
-
-my $vendorarch = substr($Config{vendorarch}, 1);
-
-print <<EOT;
-objs/ngx_http_perl_module.so usr/lib/nginx/modules
-objs/ngx_http_perl_module-debug.so usr/lib/nginx/modules
-EOT
-
-print "objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.so    $vendorarch/auto/nginx\n";
-print "objs/src/http/modules/perl/blib/arch/auto/nginx/nginx-debug.so    $vendorarch/auto/nginx\n";
-print "objs/src/http/modules/perl/blib/lib/nginx.pm    $vendorarch\n";
diff --git a/debian/nginx-module-perl.preinst b/debian/nginx-module-perl.preinst
deleted file mode 100644
index 798a7f4..0000000
--- a/debian/nginx-module-perl.preinst
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-set -e
-
-case "$1" in
-    install)
-        cat <<BANNER
-----------------------------------------------------------------------
-
-The perl dynamic module for nginx has been installed.
-To enable this module, add the following to /etc/nginx/nginx.conf
-and reload nginx:
-
-    load_module modules/ngx_http_perl_module.so;
-
-Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_perl_module.html
-
-----------------------------------------------------------------------
-BANNER
-        ;;
-    upgrade|abort-upgrade)
-        ;;
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-        ;;
-esac
-
-#DEBHELPER#
-
-exit 0
diff --git a/debian/nginx-module-xslt.install b/debian/nginx-module-xslt.install
deleted file mode 100644
index 7eb5cc9..0000000
--- a/debian/nginx-module-xslt.install
+++ /dev/null
@@ -1,2 +0,0 @@
-objs/ngx_http_xslt_filter_module.so usr/lib/nginx/modules
-objs/ngx_http_xslt_filter_module-debug.so usr/lib/nginx/modules
diff --git a/debian/nginx-module-xslt.preinst b/debian/nginx-module-xslt.preinst
deleted file mode 100644
index 99c6b86..0000000
--- a/debian/nginx-module-xslt.preinst
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-set -e
-
-case "$1" in
-    install)
-        cat <<BANNER
-----------------------------------------------------------------------
-
-The XSLT dynamic module for nginx has been installed.
-To enable this module, add the following to /etc/nginx/nginx.conf
-and reload nginx:
-
-    load_module modules/ngx_http_xslt_filter_module.so;
-
-Please refer to the module documentation for further details:
-http://nginx.org/en/docs/http/ngx_http_xslt_module.html
-
-----------------------------------------------------------------------
-BANNER
-        ;;
-    upgrade|abort-upgrade)
-        ;;
-    *)
-        echo "preinst called with unknown argument \`$1'" >&2
-        exit 0
-        ;;
-esac
-
-#DEBHELPER#
-
-exit 0
diff --git a/debian/nginx-module.changelog.in b/debian/nginx-module.changelog.in
new file mode 100644
index 0000000..e1a51cf
--- /dev/null
+++ b/debian/nginx-module.changelog.in
@@ -0,0 +1,5 @@
+nginx-module-%%MODULE%% (%%VERSION_PREFIX%%%%MODULE_VERSION%%-%%MODULE_RELEASE%%~%%CODENAME%%) %%CODENAME%%; urgency=low
+
+  * base version updated to 1.11.5-1
+
+ -- Andrei Belov <defan@nginx.com>  Mon, 10 Oct 2016 10:15:00 +0300
diff --git a/debian/nginx-module.control.in b/debian/nginx-module.control.in
new file mode 100644
index 0000000..29000cb
--- /dev/null
+++ b/debian/nginx-module.control.in
@@ -0,0 +1,31 @@
+Source: nginx-module-%%MODULE%%
+Section: httpd
+Priority: optional
+Maintainer: Sergey Budnevitch <sb@nginx.com>
+Build-Depends: debhelper (>= 9~),
+               dpkg-dev (>= 1.16.1~),
+               quilt (>= 0.46-7~),
+               lsb-release,
+               libssl-dev (>= 1.0.1),
+               libpcre3-dev,
+               zlib1g-dev%%MODULE_BUILD_DEPENDS%%
+Standards-Version: 3.9.8.0
+Homepage: http://nginx.org
+
+Package: nginx-module-%%MODULE%%
+Architecture: any
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+         nginx (= %%MAIN_VERSION%%-%%MAIN_RELEASE%%~%%CODENAME%%)%%MODULE_DEPENDS%%%%ADD_CONTROL_TAGS%%
+Description: %%SUMMARY%%
+ %%SHORT_SUMMARY%% for nginx
+
+Package: nginx-module-%%MODULE%%-dbg
+Architecture: any
+Section: debug
+Priority: extra
+Depends: nginx (= %%MAIN_VERSION%%-%%MAIN_RELEASE%%~%%CODENAME%%),
+         nginx-module-%%MODULE%% (= %%VERSION_PREFIX%%%%MODULE_VERSION%%-%%MODULE_RELEASE%%~%%CODENAME%%),
+         ${misc:Depends}
+Description: debug symbols for the nginx-module-%%MODULE%%
+ %%SHORT_SUMMARY%% for nginx (debug symbols)
diff --git a/debian/nginx-module.postinst.in b/debian/nginx-module.postinst.in
new file mode 100644
index 0000000..781e25c
--- /dev/null
+++ b/debian/nginx-module.postinst.in
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" != "configure" ]; then
+    exit 0
+fi
+
+%%MODULE_POST%%
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/nginx-module.rules.in b/debian/nginx-module.rules.in
new file mode 100755
index 0000000..bbbacfe
--- /dev/null
+++ b/debian/nginx-module.rules.in
@@ -0,0 +1,129 @@
+#!/usr/bin/make -f
+
+#export DH_VERBOSE=1
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie                              
+DPKG_EXPORT_BUILDFLAGS = 1                                                      
+include /usr/share/dpkg/buildflags.mk
+
+BUILDDIR_nginx = $(CURDIR)/debian/build-nginx
+BUILDDIR_nginx_debug = $(CURDIR)/debian/build-nginx-debug
+INSTALLDIR = $(CURDIR)/debian/nginx-module-%%MODULE%%
+BASEDIR = $(CURDIR)
+
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+	ifeq (${NUMJOBS}, 0)
+		NUMJOBS = 1
+	endif
+else
+	NUMJOBS = 1
+endif
+
+%%MODULE_DEFINITIONS%%
+
+config.env.%:
+	dh_testdir
+	mkdir -p $(BUILDDIR_$*)
+	cp -Pa $(CURDIR)/auto $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/conf $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/configure $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/contrib $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/man $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/src $(BUILDDIR_$*)/
+	test -d $(CURDIR)/debian/extra && cp -Pa $(CURDIR)/debian/extra $(BUILDDIR_$*)/
+	touch $@
+
+config.pre.nginx:
+	dh_testdir
+%%MODULE_PREBUILD%%
+	touch $@
+
+config.pre.nginx_debug: config.pre.nginx
+	dh_testdir
+	rm -rf $(BUILDDIR_nginx_debug)/extra && cp -Pa $(BUILDDIR_nginx)/extra $(BUILDDIR_nginx_debug)/
+	touch $@
+
+config.status.nginx: config.env.nginx config.pre.nginx
+	cd $(BUILDDIR_nginx) && \
+	CFLAGS="" ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$(CFLAGS)" --with-ld-opt="$(LDFLAGS)"
+	touch $@
+
+config.status.nginx_debug: config.env.nginx_debug config.pre.nginx_debug
+	cd $(BUILDDIR_nginx_debug) && \
+	CFLAGS="" ./configure %%BASE_CONFIGURE_ARGS%% %%MODULE_CONFIGURE_ARGS%% --with-cc-opt="$(CFLAGS)" --with-ld-opt="$(LDFLAGS)" --with-debug
+	touch $@
+
+build-arch.%: config.status.%
+	dh_testdir
+	dh_prep
+	$(MAKE) -j$(NUMJOBS) -C $(BUILDDIR_$*) modules
+
+build-arch: build-arch.nginx build-arch.nginx_debug
+	dh_testdir
+	touch $@
+
+build-dbg.%: install
+	dh_testdir
+	dh_strip --dbg-package=nginx-module-%%MODULE%%-dbg
+
+build-dbg: build-dbg.nginx
+	dh_testdir
+	touch $@
+
+build-indep:
+	dh_testdir
+	touch $@
+
+build: build-arch build-indep
+	dh_testdir
+	touch $@
+
+clean:
+	dh_testdir
+	dh_testroot
+	dh_clean
+	rm -rf $(CURDIR)/debian/build-*
+	find $(CURDIR) -maxdepth 1 -size 0 -delete
+
+post-build:
+	for so in `find $(BUILDDIR_nginx_debug)/objs/ -maxdepth 1 -type f -name "*.so"`; do \
+	    debugso=`echo $${so} | sed -e "s|.so|-debug.so|"` ; \
+	    mv $${so} $${debugso} ; \
+	done
+
+install:
+	dh_testdir
+	dh_testroot
+	dh_prep
+	dh_installdirs
+	dh_install
+%%MODULE_PREINSTALL%%
+	mkdir -p $(INSTALLDIR)/usr/lib/nginx/modules
+	for so in `find $(BUILDDIR_nginx_debug)/objs/ -maxdepth 1 -type f -name "*.so"`; do \
+	    install -m755 $${so} $(INSTALLDIR)/usr/lib/nginx/modules/ ; \
+	done
+	for so in `find $(BUILDDIR_nginx)/objs/ -maxdepth 1 -type f -name "*.so"`; do \
+	    install -m755 $${so} $(INSTALLDIR)/usr/lib/nginx/modules/ ; \
+	done
+
+binary-indep: build post-build install
+
+binary-arch: install build-dbg
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -a
+	dh_installdocs -a
+	dh_lintian -a
+	dh_link -aA
+	dh_compress -a
+	dh_perl -a
+	dh_fixperms -a
+	dh_installdeb -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/debian/changelog b/debian/nginx.changelog.in
similarity index 98%
rename from debian/changelog
rename to debian/nginx.changelog.in
index 40d4224..32adaf0 100644
--- a/debian/changelog
+++ b/debian/nginx.changelog.in
@@ -1,3 +1,9 @@
+nginx (%%MAIN_VERSION%%-%%MAIN_RELEASE%%~%%CODENAME%%) %%CODENAME%%; urgency=low
+
+  * 1.11.5
+
+ -- Andrei Belov <defan@nginx.com>  Mon, 10 Oct 2016 10:15:00 +0300
+
 nginx (1.11.4-1~%%CODENAME%%) %%CODENAME%%; urgency=low
 
   * 1.11.4
diff --git a/debian/nginx.control.in b/debian/nginx.control.in
new file mode 100644
index 0000000..31a0360
--- /dev/null
+++ b/debian/nginx.control.in
@@ -0,0 +1,29 @@
+Source: nginx
+Section: httpd
+Priority: optional
+Maintainer: Sergey Budnevitch <sb@nginx.com>
+Build-Depends: debhelper (>= 9~),
+               dpkg-dev (>= 1.16.1~),
+               quilt (>= 0.46-7~),
+               lsb-release,
+               libssl-dev (>= 0.9.7),
+               libpcre3-dev,
+               zlib1g-dev
+Standards-Version: 3.9.8.0
+Homepage: http://nginx.org
+
+Package: nginx
+Architecture: any
+Depends: ${misc:Depends}, ${shlibs:Depends}, lsb-base, adduser
+Provides: httpd
+Description: high performance web server
+ nginx [engine x] is an HTTP and reverse proxy server, as well as
+ a mail proxy server.
+
+Package: nginx-dbg
+Architecture: any
+Section: debug
+Priority: extra
+Depends: ${misc:Depends}, nginx (= ${binary:Version})
+Description: nginx debug symbols
+ This package contains the debugging symbols for nginx.
diff --git a/debian/nginx.docs b/debian/nginx.docs
index 6268349..687f935 100644
--- a/debian/nginx.docs
+++ b/debian/nginx.docs
@@ -1,2 +1,2 @@
-README
 CHANGES.ru
+README
diff --git a/debian/init.d.in b/debian/nginx.init.in
similarity index 100%
rename from debian/init.d.in
rename to debian/nginx.init.in
diff --git a/debian/nginx.install b/debian/nginx.install
new file mode 100644
index 0000000..0865ff1
--- /dev/null
+++ b/debian/nginx.install
@@ -0,0 +1,12 @@
+debian/nginx.conf			etc/nginx
+conf/win-utf				etc/nginx
+conf/koi-utf				etc/nginx
+conf/koi-win				etc/nginx
+conf/mime.types				etc/nginx
+conf/scgi_params			etc/nginx
+conf/fastcgi_params			etc/nginx
+conf/uwsgi_params			etc/nginx
+html/index.html				usr/share/nginx/html
+html/50x.html				usr/share/nginx/html
+debian/build-nginx/objs/nginx		usr/sbin
+debian/build-nginx-debug/objs/nginx-debug	usr/sbin
diff --git a/debian/logrotate b/debian/nginx.logrotate
similarity index 100%
rename from debian/logrotate
rename to debian/nginx.logrotate
diff --git a/debian/nginx.rules.in b/debian/nginx.rules.in
new file mode 100755
index 0000000..afa208b
--- /dev/null
+++ b/debian/nginx.rules.in
@@ -0,0 +1,133 @@
+#!/usr/bin/make -f
+
+#export DH_VERBOSE=1
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/buildflags.mk
+
+PKGS = nginx nginx-dbg
+
+BUILDDIR_nginx = $(CURDIR)/debian/build-nginx
+BUILDDIR_nginx_debug = $(CURDIR)/debian/build-nginx-debug
+INSTALLDIR = $(CURDIR)/debian/nginx
+BASEDIR = $(CURDIR)
+
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+	ifeq (${NUMJOBS}, 0)
+		NUMJOBS = 1
+	endif
+else
+	NUMJOBS = 1
+endif
+
+DO_PKGS = $(PKGS)
+
+config.env.%:
+	dh_testdir
+	mkdir -p $(BUILDDIR_$*)
+	cp -Pa $(CURDIR)/auto $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/conf $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/configure $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/contrib $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/man $(BUILDDIR_$*)/
+	cp -Pa $(CURDIR)/src $(BUILDDIR_$*)/
+	touch $@
+
+config.status.nginx: config.env.nginx
+	cd $(BUILDDIR_nginx) && \
+	CFLAGS="" ./configure %%BASE_CONFIGURE_ARGS%% --with-cc-opt="$(CFLAGS)" --with-ld-opt="$(LDFLAGS)"
+	touch $@
+
+config.status.nginx_debug: config.env.nginx_debug
+	cd $(BUILDDIR_nginx_debug) && \
+	CFLAGS="" ./configure %%BASE_CONFIGURE_ARGS%% --with-cc-opt="$(CFLAGS)" --with-ld-opt="$(LDFLAGS)" --with-debug
+	touch $@
+
+build-arch.%: config.status.%
+	dh_testdir
+	dh_prep
+	$(MAKE) -j$(NUMJOBS) -C $(BUILDDIR_$*) build
+
+build-arch: build-arch.nginx build-arch.nginx_debug
+	dh_testdir
+	touch $@
+
+build-dbg.%: install
+	dh_testdir
+	dh_strip --dbg-package=nginx-dbg
+
+build-dbg: build-dbg.nginx
+	dh_testdir
+	touch $@
+
+build-indep:
+	dh_testdir
+	touch $@
+
+build: build-arch build-indep
+	dh_testdir
+	touch $@
+
+clean:
+	dh_testdir
+	dh_testroot
+	dh_clean
+	rm -f $(CURDIR)/objs
+	rm -rf $(CURDIR)/debian/build-*
+	rm -f $(CURDIR)/debian/*.init
+	find $(CURDIR) -maxdepth 1 -size 0 -delete
+
+post-build:
+	mv $(BUILDDIR_nginx_debug)/objs/nginx $(BUILDDIR_nginx_debug)/objs/nginx-debug
+	ln -s $(BUILDDIR_nginx)/objs $(CURDIR)/objs
+	cp $(BUILDDIR_nginx)/objs/nginx.8 $(BUILDDIR_nginx)/objs/nginx-debug.8
+
+install:
+	dh_testdir
+	dh_testroot
+	dh_prep
+	dh_installdirs
+	dh_install
+	mkdir -p $(INSTALLDIR)/usr/lib/nginx/modules
+	mkdir -p $(INSTALLDIR)/usr/share/doc/nginx
+	install -m 644 debian/CHANGES $(INSTALLDIR)/usr/share/doc/nginx/changelog
+	install -m 644 debian/nginx.vh.default.conf $(INSTALLDIR)/etc/nginx/conf.d/default.conf
+	ln -s /usr/lib/nginx/modules $(INSTALLDIR)/etc/nginx/modules
+
+binary-indep: build post-build install
+	dh_testdir
+	dh_testroot
+	dh_installman -i -pnginx
+	dh_installdebconf
+	sed -e 's/%%PROVIDES%%/nginx/g' \
+		-e 's/%%DEFAULTSTART%%/2 3 4 5/g' \
+		-e 's/%%DEFAULTSTOP%%/0 1 6/g' \
+		< debian/nginx.init.in > debian/nginx.init
+	dh_installinit -i -pnginx --no-restart-on-upgrade --no-start --name=nginx
+	sed -e 's/%%PROVIDES%%/nginx-debug/g' \
+		-e 's/%%DEFAULTSTART%%//g' \
+		-e 's/%%DEFAULTSTOP%%/0 1 2 3 4 5 6/g' \
+		< debian/nginx.init.in > debian/nginx-debug.init
+	dh_installinit -i -pnginx --no-restart-on-upgrade --no-start --noscripts --name=nginx-debug
+	dh_installlogrotate -i -pnginx --name=nginx
+
+binary-arch: install build-dbg
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs -a
+	dh_installdocs -a
+	dh_lintian -a
+	dh_link -aA
+	dh_compress -a
+	dh_perl -a
+	dh_fixperms -a
+	dh_installdeb -a
+	dh_shlibdeps -a
+	dh_gencontrol -a
+	dh_md5sums -a
+	dh_builddeb $(foreach p,$(DO_PKGS),-p$(p))
+
+binary: binary-indep binary-arch
+
+.PHONY: build clean binary-indep binary-arch binary install
diff --git a/debian/rules b/debian/rules
deleted file mode 100755
index 282f86d..0000000
--- a/debian/rules
+++ /dev/null
@@ -1,140 +0,0 @@
-#!/usr/bin/make -f
-
-#export DH_VERBOSE=1
-
-export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie
-
-DPKG_EXPORT_BUILDFLAGS = 1
-include /usr/share/dpkg/buildflags.mk
-
-WITH_HTTP2 := $(shell printf \
-	"Source: nginx\nBuild-Depends: libssl-dev (>= 1.0.1)\n" | \
-	dpkg-checkbuilddeps - >/dev/null 2>&1 && \
-	echo "--with-http_v2_module")
-PKGS = nginx nginx-dbg \
-	nginx-module-xslt nginx-module-geoip nginx-module-image-filter \
-	nginx-module-perl nginx-module-njs
-COMMON_CONFIGURE_ARGS := \
-	--prefix=/etc/nginx \
-	--sbin-path=/usr/sbin/nginx \
-	--modules-path=/usr/lib/nginx/modules \
-	--conf-path=/etc/nginx/nginx.conf \
-	--error-log-path=/var/log/nginx/error.log \
-	--http-log-path=/var/log/nginx/access.log \
-	--pid-path=/var/run/nginx.pid \
-	--lock-path=/var/run/nginx.lock \
-	--http-client-body-temp-path=/var/cache/nginx/client_temp \
-	--http-proxy-temp-path=/var/cache/nginx/proxy_temp \
-	--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
-	--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
-	--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
-	--user=nginx \
-	--group=nginx \
-	--with-http_ssl_module \
-	--with-http_realip_module \
-	--with-http_addition_module \
-	--with-http_sub_module \
-	--with-http_dav_module \
-	--with-http_flv_module \
-	--with-http_mp4_module \
-	--with-http_gunzip_module \
-	--with-http_gzip_static_module \
-	--with-http_random_index_module \
-	--with-http_secure_link_module \
-	--with-http_stub_status_module \
-	--with-http_auth_request_module \
-	--with-http_xslt_module=dynamic \
-	--with-http_image_filter_module=dynamic \
-	--with-http_geoip_module=dynamic \
-	--with-http_perl_module=dynamic \
-	--add-dynamic-module=debian/extra/njs-0.1.2/nginx \
-	--with-threads \
-	--with-stream \
-	--with-stream_ssl_module \
-	--with-stream_ssl_preread_module \
-	--with-stream_realip_module \
-	--with-stream_geoip_module=dynamic \
-	--with-http_slice_module \
-	--with-mail \
-	--with-mail_ssl_module \
-	--with-file-aio \
-	--with-ipv6 \
-	$(WITH_HTTP2) \
-	--with-cc-opt="$(CFLAGS)" \
-	--with-ld-opt="$(LDFLAGS)"
-
-%:
-	dh $@ 
-
-override_dh_auto_configure: configure_debug
-
-override_dh_strip:
-	dh_strip --dbg-package=nginx-dbg
-
-override_dh_auto_build:
-	dh_auto_build
-	mv objs/nginx objs/nginx-debug
-	mv objs/ngx_http_xslt_filter_module.so objs/ngx_http_xslt_filter_module-debug.so
-	mv objs/ngx_http_image_filter_module.so objs/ngx_http_image_filter_module-debug.so
-	mv objs/ngx_http_geoip_module.so objs/ngx_http_geoip_module-debug.so
-	mv objs/ngx_http_perl_module.so objs/ngx_http_perl_module-debug.so
-	mv objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.so objs/src/http/modules/perl/blib/arch/auto/nginx/nginx-debug.so
-	mv objs/ngx_http_js_module.so objs/ngx_http_js_module-debug.so
-	mv objs/ngx_stream_js_module.so objs/ngx_stream_js_module-debug.so
-	mv objs/ngx_stream_geoip_module.so objs/ngx_stream_geoip_module-debug.so
-	CFLAGS="" ./configure $(COMMON_CONFIGURE_ARGS)
-	dh_auto_build
-
-configure_debug:
-	CFLAGS="" ./configure $(COMMON_CONFIGURE_ARGS) \
-		--with-debug
-
-override_dh_installinit:
-	dh_installinit --no-start --no-restart-on-upgrade
-	dh_installinit --no-start --no-restart-on-upgrade --noscripts --init-script=nginx-debug --name=nginx-debug
-
-override_dh_auto_install:
-	sed -e 's/%%PROVIDES%%/nginx/g' \
-		-e 's/%%DEFAULTSTART%%/2 3 4 5/g' \
-		-e 's/%%DEFAULTSTOP%%/0 1 6/g' \
-		< debian/init.d.in > debian/init.d
-	dh_auto_install
-	mkdir -p debian/nginx/etc/init.d debian/nginx/etc/default \
-		debian/nginx/usr/lib/nginx/modules
-	sed -e 's/%%PROVIDES%%/nginx-debug/g' \
-		-e 's/%%DEFAULTSTART%%//g' \
-		-e 's/%%DEFAULTSTOP%%/0 1 2 3 4 5 6/g' \
-		< debian/init.d.in > debian/nginx.nginx-debug.init
-	/usr/bin/install -m 644 debian/nginx-debug.default \
-		debian/nginx/etc/default/nginx-debug
-	/usr/bin/install -m 644 debian/nginx.conf debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/win-utf debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/koi-utf debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/koi-win debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/mime.types debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/scgi_params debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/fastcgi_params debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 conf/uwsgi_params debian/nginx/etc/nginx/
-	/usr/bin/install -m 644 html/index.html \
-		debian/nginx/usr/share/nginx/html/
-	/usr/bin/install -m 644 html/50x.html \
-		debian/nginx/usr/share/nginx/html/
-	/usr/bin/install -m 644 debian/nginx.vh.default.conf \
-		debian/nginx/etc/nginx/conf.d/default.conf
-	/usr/bin/install -m 755 objs/nginx  debian/nginx/usr/sbin/
-	/usr/bin/install -m 755 objs/nginx-debug  debian/nginx/usr/sbin/
-	cd debian/nginx/etc/nginx && /bin/ln -s \
-		../../usr/lib/nginx/modules modules && cd -
-
-override_dh_gencontrol:
-	for p in $(PKGS); do \
-		if [ -e debian/$$p.version ]; then \
-			dpkg-gencontrol -p$$p -ldebian/changelog -Tdebian/$$p.substvars -Pdebian/$$p -v`cat debian/$$p.version`~`lsb_release -cs`; \
-		else \
-			dpkg-gencontrol -p$$p -ldebian/changelog -Tdebian/$$p.substvars -Pdebian/$$p ; \
-		fi ; \
-	done
-
-override_dh_clean:
-	dh_clean
-	rm -f debian/*init.d
diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides
index a351a52..c4bc670 100644
--- a/debian/source/lintian-overrides
+++ b/debian/source/lintian-overrides
@@ -1,5 +1,3 @@
 # this is just wrong for us
 nginx source: changelog-should-mention-nmu
 nginx source: source-nmu-has-incorrect-version-number
-# nginx dynamic modules depend on the exact version of the binary they were built against
-nginx source: not-binnmuable-any-depends-any
