nginx-sid/debian
2016-11-10 18:29:38 +00:00
..
autoscripts dh_nginx: Support setting module priorities in .nginx files 2016-04-18 11:47:37 +03:00
conf Adding/updating comments and including apps.d/. 2016-11-10 18:29:38 +00:00
help Upgrade to the latest mime.types 2014-08-27 17:04:31 +03:00
libnginx-mod.conf mod: Convert dav-ext to dynamic module 2016-11-03 14:57:35 +02:00
modules lua: Apply OpenSSL 1.1.0 FTBFS 2016-11-03 15:16:57 +02:00
ngx-conf Fix Python 3 compatibility in ngx-conf 2015-04-09 17:58:12 -05:00
patches lua: Apply OpenSSL 1.1.0 FTBFS 2016-11-03 15:16:57 +02:00
po CVE-2016-1247: Secure log file handling 2016-10-28 09:45:29 +03:00
source Drop nginx-naxsi packages 2014-09-18 12:46:10 +03:00
tests mod: Convert dav-ext to dynamic module 2016-11-03 14:57:35 +02:00
ufw Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
upstream Fix upstream signature verification 2014-02-25 15:01:20 +02:00
vim Adding missing files. 2015-01-11 16:05:59 -06:00
changelog Applying a summary of commit 5d09382c82. Also updating nginx-common/purge. 2016-11-10 07:27:18 +00:00
compat Renamed debian/nginx-common.service to debian/nginx-common.nginx.service. Set compat to 9, updated debhelper dependency 2013-10-11 22:08:59 +05:30
control Rethink module patches logic 2016-11-03 14:57:35 +02:00
copyright Replace http-push module with nchan v1.0.2 by the same author 2016-08-31 16:20:00 +03:00
dh_nginx merge into dh_nginx 2016-04-18 12:48:25 +03:00
gbp.conf Make git-import-orig use pristine-tar by default 2013-11-20 01:01:48 +02:00
libnginx-mod-http-auth-pam.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-http-cache-purge.nginx mod: Convert http-cache to a dynamic module 2016-09-06 11:05:00 +03:00
libnginx-mod-http-dav-ext.nginx mod: Convert dav-ext to dynamic module 2016-11-03 14:57:35 +02:00
libnginx-mod-http-echo.nginx mod: Convert http-echo to a dynamic module 2016-09-06 11:03:07 +03:00
libnginx-mod-http-fancyindex.nginx mod: Convert fancyindex to a dynamic module 2016-09-06 11:05:00 +03:00
libnginx-mod-http-geoip.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-http-headers-more-filter.nginx mod: Convert headers-more to a dynamic module 2016-09-06 11:04:55 +03:00
libnginx-mod-http-image-filter.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-http-lua.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-http-ndk.nginx NDK is a dependency, load it before nginx-lua 2016-04-18 11:47:37 +03:00
libnginx-mod-http-perl.install Introduce libnginx-mod-http-perl 2016-03-31 09:34:35 +03:00
libnginx-mod-http-perl.lintian-overrides libnginx-mod-http-perl: Override wrong-section-according-to-package-name warning 2016-04-28 10:01:23 +03:00
libnginx-mod-http-perl.nginx Introduce libnginx-mod-http-perl 2016-03-31 09:34:35 +03:00
libnginx-mod-http-subs-filter.nginx mod: Convert substitution module to dynamic 2016-09-06 11:05:26 +03:00
libnginx-mod-http-uploadprogress.nginx mod: Convert upload progress module to dynamic 2016-09-06 11:05:24 +03:00
libnginx-mod-http-upstream-fair.nginx mod: Convert upstream-fair to dynamic module 2016-09-06 11:03:09 +03:00
libnginx-mod-http-xslt-filter.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-mail.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod-nchan.nginx mod: Convert nchan to a dynamic module 2016-08-31 16:20:06 +03:00
libnginx-mod-stream.nginx build modules using nginx-extras 2016-03-31 09:34:35 +03:00
libnginx-mod.nginx.skeleton build modules using nginx-extras 2016-03-31 09:34:35 +03:00
nginx-common.config CVE-2016-1247: Secure log file handling 2016-10-28 09:45:29 +03:00
nginx-common.dirs Applying a summary of commit 5d09382c82. Also updating nginx-common/purge. 2016-11-10 07:27:18 +00:00
nginx-common.install wrap-and-sort 2016-09-06 11:05:26 +03:00
nginx-common.links Setup libnginx-mod packaging flow 2016-03-30 10:03:46 +03:00
nginx-common.lintian-overrides Fix a few more issues with the new document root 2014-10-13 10:46:13 +03:00
nginx-common.NEWS Release 1.10.2-1 2016-10-29 08:45:31 +03:00
nginx-common.nginx.default initscript: gracefully stop nginx by default 2014-10-13 10:46:17 +03:00
nginx-common.nginx.init initscript: Add some comments/hints 2015-06-17 11:18:53 +03:00
nginx-common.nginx.logrotate Keep logs for 14 *days* 2016-01-14 10:40:07 +02:00
nginx-common.nginx.service Add documentation option to systemd unit 2016-03-29 17:11:19 +03:00
nginx-common.nginx.upstart Adding upstart script 2015-01-11 16:20:46 -06:00
nginx-common.postinst CVE-2016-1247: Secure log file handling 2016-10-28 09:45:29 +03:00
nginx-common.postrm Applying a summary of commit 5d09382c82. Also updating nginx-common/purge. 2016-11-10 07:27:18 +00:00
nginx-common.preinst Remove /etc/nginx/naxsi-ui.conf conffile 2014-11-30 10:16:42 +02:00
nginx-common.README.Debian Add a list of important changes since wheezy to README.Debian 2014-12-01 13:12:00 +02:00
nginx-common.templates CVE-2016-1247: Secure log file handling 2016-10-28 09:45:29 +03:00
nginx-doc.docs Ship NEWS with nginx-common instead of nginx-doc 2013-12-10 16:42:57 +02:00
nginx-doc.examples Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
nginx-extras.install Introduce libnginx-mod-http-perl 2016-03-31 09:34:35 +03:00
nginx-extras.manpages Build upstream manpages before shipping 2015-06-12 15:01:29 +03:00
nginx-extras.NEWS Release 1.10.1-2 2016-09-06 11:08:05 +03:00
nginx-extras.postinst *.postinst: Make sure we restart nginx if on-the-fly upgrade fails 2016-07-29 16:19:07 +03:00
nginx-extras.prerm Cleanup nginx-* prerm scripts 2014-01-17 14:20:07 +02:00
nginx-full.dirs Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
nginx-full.install Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
nginx-full.manpages Build upstream manpages before shipping 2015-06-12 15:01:29 +03:00
nginx-full.postinst *.postinst: Make sure we restart nginx if on-the-fly upgrade fails 2016-07-29 16:19:07 +03:00
nginx-full.prerm Cleanup nginx-* prerm scripts 2014-01-17 14:20:07 +02:00
nginx-light.dirs Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
nginx-light.install Imported Debian patch 1.2.0-1 2012-05-08 07:55:38 +02:00
nginx-light.manpages Build upstream manpages before shipping 2015-06-12 15:01:29 +03:00
nginx-light.postinst *.postinst: Make sure we restart nginx if on-the-fly upgrade fails 2016-07-29 16:19:07 +03:00
nginx-light.prerm Cleanup nginx-* prerm scripts 2014-01-17 14:20:07 +02:00
README.Packaging Re-enable experimental flow for 1.11.x 2016-07-07 11:27:53 +03:00
rules Rethink module patches logic 2016-11-03 14:57:35 +02:00
watch Follow the 1.10.x stable branch 2016-10-20 09:47:41 +03:00

Debian Packaging
================

We use git-buildpackage for packaging. Our repository can be found at
git.debian.org:/git/collab-maint/nginx.git.

Workflow for Unstable
=====================

We use the standard git-buildpackage workflow.

Dynamic Modules
===============

Since v1.9.11 Nginx added dynamic module support. This will sanitize the
nginx packaging flow in the long term, but there is a lot work to be done
in order to get there. We will gradually convert all modules to dynamic
as they add support for it.

Currently nginx modules need to be build together with nginx, but this
will be fixed upstream [0]. Since we already ship 3rd party modules under
debian/modules/ we will start shipping module packages (libnginx-mod) from
the same source. Once upstream implements separated building we will
split each module to a separate source.

[0] https://www.nginx.com/blog/dynamic-modules-nginx-1-9-11/

Workflow for Experimental
=========================

Nginx mainline releases (1.11.x series) are been packaged for experimental,
as they lack security support.

The workflow we use is based on the assumption that packaging work happens on
origin/master and experimental builds are a trivial patch away from that.

The direct consequense of treating experimental as a patchset for origin/master
is that the relevant branches are forced-pushed whenever we release a new
1.11.x version. In other words, **it is not safe to base your work on the
experimental branch**.

This is a brief description of our experimental branches and how we are using
them.

* experimental-base
  Force-pushed when origin/master changes.

  experimental-base tracks the changes needed for building the 1.11.x branch,
  such as new configure parameters, etc. On new 1.11.x releases, it is rebased
  on origin/master so it is always up-to-date with our latest packaging work.

* experimental
  Force-pushed on every 1.11.x release.

  This branch points to the latest 1.11.x release.
  Before release this branch is reset to experimental-base, and then merged
  with the new upstream-1.11 branch. Finally all the release specific changes
  are commited (changelog entry etc) and the build is made.

* upstream-1.11
  Force-pushed on every 1.11.x release.

  Before a new 1.11.x release the branch is reset to origin/upstream.
  This is a technicallity so we can avoid resolving conflicts when a new 1.10.x
  release happens between two experimental releases.

Older 1.11.x releases are not referenced by any branch, but they can be found
by the relevant debian/* tag.

3rd party experimental workflow
===============================

As we described, it is better not base you work on our forced-pushed
experimental branch. A better approach would be to maintain a custom-build
branch that is rebased to our latest experimental branch (basically git rebase
--onto the relevant commits should work).