Bug#806779: nginx: provide vanilla-like build
tags 806779 + wontfix severity 806779 wishlist thanks We're not going to create yet another flavor of Nginx. I understand why you want this. However, we already need to handle the transition of the existing three flavors. There will not be an "nginx-modular" or equivalent if it can be prevented. Because Nginx will now support dynamic modules, our focus is and will continue to be ensuring a seamless migration to it for everyone. It's the same reason we froze new plugins. There will already be a *LOT* to deal with. We don't need to make it more difficult than it will already be. As for the timing of it all; it currently looks like Debian 9 will freeze not very long after we are expecting the dynamic module support. If it works out, we will be on a very tight deadline. We don't need to add to the excitement that we already have lined up. I'm going to leave this bug open, though. It will need to be addressed in the future; not now. This is a "Temporarily Won't Fix." For the time being, you could use their repository if you need support.
Bug#806779: nginx: provide vanilla-like build
On Tuesday 01 December 2015 14:35:43, Michael wrote: > tags 806779 + wontfix > severity 806779 wishlist > thanks > > We're not going to create yet another flavor of Nginx. I understand > why you want this. However, we already need to handle the transition > of the existing three flavors. There will not be an "nginx-modular" or > equivalent if it can be prevented. > > Because Nginx will now support dynamic modules, our focus is and will > continue to be ensuring a seamless migration to it for everyone. It's > the same reason we froze new plugins. There will already be a *LOT* to > deal with. We don't need to make it more difficult than it will > already be. > > As for the timing of it all; it currently looks like Debian 9 will > freeze not very long after we are expecting the dynamic module > support. If it works out, we will be on a very tight deadline. We > don't need to add to the excitement that we already have lined up. > > I'm going to leave this bug open, though. It will need to be addressed > in the future; not now. This is a "Temporarily Won't Fix." For the > time being, you could use their repository if you need support. Thank you for understanding my goals. I'll be glad if further work will continue right after Release 9. However, you might try it in experimental branch if you'll have enough time. --- Best regards, Konstantin Demin
Bug#806779: nginx: provide vanilla-like build
tag 806779 patch -- SY, Konstantin Demin
Bug#806779: nginx: provide vanilla-like build
Hello Konstantin and thank you for the patch, On Tue, Dec 01, 2015 at 11:07:34AM +0300, Konstantin Demin wrote: Source: nginx Version: 1.9.6-2 Severity: wishlist introduce build flavour "standard" * introduce "standard" build: only vanilla source, no 3rd-party modules at all. reason: Nginx Inc. provides support only for vanilla-based build. * provide packages: "nginx-standard" and "nginx-standard-dbg". * make "nginx-standard" as default/first choice when installing "nginx" meta-package. * fix other package dependencies (mostly "Conflicts") Since nginx is planning to add dynamic module support as part of the 1.9.x series[0], I don't think adding a new flavor is a good idea. When that happens we will move to a single nginx core package and a handful of satellite nginx modules. [0] https://trac.nginx.org/nginx/milestone/1.9
Bug#806779: nginx: provide vanilla-like build
Source: nginx Version: 1.9.6-2 Severity: wishlist introduce build flavour "standard" * introduce "standard" build: only vanilla source, no 3rd-party modules at all. reason: Nginx Inc. provides support only for vanilla-based build. * provide packages: "nginx-standard" and "nginx-standard-dbg". * make "nginx-standard" as default/first choice when installing "nginx" meta-package. * fix other package dependencies (mostly "Conflicts") Signed-off-by: Konstantin Demin--- debian/control | 72 ++--- debian/nginx-common.preinst | 2 + debian/nginx-standard.dirs | 1 + debian/nginx-standard.install | 1 + debian/nginx-standard.lintian-overrides | 1 + debian/nginx-standard.manpages | 1 + debian/nginx-standard.postinst | 37 + debian/nginx-standard.prerm | 22 ++ debian/rules| 25 +++- debian/tests/control| 3 ++ 10 files changed, 150 insertions(+), 15 deletions(-) create mode 100644 debian/nginx-standard.dirs create mode 100644 debian/nginx-standard.install create mode 100644 debian/nginx-standard.lintian-overrides create mode 100644 debian/nginx-standard.manpages create mode 100644 debian/nginx-standard.postinst create mode 100644 debian/nginx-standard.prerm diff --git a/debian/control b/debian/control index de705d4..865a64d 100644 --- a/debian/control +++ b/debian/control @@ -31,12 +31,14 @@ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/nginx.git;a=summar Package: nginx Architecture: all -Depends: nginx-full (>= ${source:Version}) | - nginx-light (>= ${source:Version}) | - nginx-extras (>= ${source:Version}) , - nginx-full (<< ${source:Version}.1~) | - nginx-light (<< ${source:Version}.1~) | - nginx-extras (<< ${source:Version}.1~) , +Depends: nginx-standard (>= ${source:Version}) | + nginx-light(>= ${source:Version}) | + nginx-full (>= ${source:Version}) | + nginx-extras (>= ${source:Version}) , + nginx-standard (<< ${source:Version}.1~) | + nginx-light(<< ${source:Version}.1~) | + nginx-full (<< ${source:Version}.1~) | + nginx-extras (<< ${source:Version}.1~) , ${misc:Depends} Description: small, powerful, scalable web/proxy server Nginx ("engine X") is a high-performance web and reverse proxy server @@ -63,11 +65,13 @@ Depends: lsb-base (>= 3.2-14), ${misc:Depends}, python Replaces: nginx (<< 0.8.54-4), nginx-extras (<< 0.8.54-4), nginx-full (<< 0.8.54-4), - nginx-light (<< 0.8.54-4) + nginx-light (<< 0.8.54-4), + nginx-standard (<< 0.8.54-4) Breaks: nginx (<< 0.8.54-4), nginx-extras (<< 0.8.54-4), nginx-full (<< 0.8.54-4), -nginx-light (<< 0.8.54-4) +nginx-light (<< 0.8.54-4), +nginx-standard (<< 0.8.54-4) Suggests: fcgiwrap, nginx-doc, ssl-cert Description: small, powerful, scalable web/proxy server - common files Nginx ("engine X") is a high-performance web and reverse proxy server @@ -77,12 +81,52 @@ Description: small, powerful, scalable web/proxy server - common files This package contains base configuration files used by all versions of nginx. +Package: nginx-standard +Architecture: any +Depends: nginx-common (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends} +Breaks: nginx (<< 1.4.5-1) +Provides: httpd, httpd-cgi, nginx +Conflicts: nginx-light, nginx-full, nginx-extras +Suggests: nginx-doc (= ${source:Version}) +Description: nginx web/proxy server (standard version) + Nginx ("engine X") is a high-performance web and reverse proxy server + created by Igor Sysoev. It can be used both as a standalone web server + and as a proxy to reduce the load on back-end HTTP or mail servers. + . + This package provides a standard version of nginx with the standard modules. + . + STANDARD HTTP MODULES: Core, Access, Auth Basic, Auto Index, Browser, Empty + GIF, FastCGI, Geo, Limit Connections, Limit Requests, Map, Memcached, Proxy, + Referer, Rewrite, SCGI, Split Clients, UWSGI. + . + OPTIONAL HTTP MODULES: Addition, Auth Request, Charset, WebDAV, FLV, GeoIP, + Gunzip, Gzip, Gzip Precompression, Headers, Image Filter, Index, Log, MP4, + Random Index, Real IP, Secure Link, HTTP/2, SSI, SSL, Stream, + Stub Status, Substitution, Thread Pool, Upstream, User ID, XSLT, Degradation. + . + MAIL MODULES: Mail Core, Auth HTTP, Proxy, SSL, IMAP, POP3, SMTP. + +Package: nginx-standard-dbg +Architecture: any +Section: debug +Priority: extra +Depends: nginx-standard (= ${binary:Version}), ${misc:Depends} +Conflicts: nginx-light-dbg, nginx-full-dbg, nginx-extras-dbg +Description: nginx web/proxy server (standard version) - debugging symbols + Nginx ("engine X") is a high-performance web and reverse proxy server + created by Igor
Bug#806779: nginx: provide vanilla-like build
On Tuesday 01 December 2015 11:36:12, Christos Trochalakis wrote: > Hello Konstantin and thank you for the patch, > > On Tue, Dec 01, 2015 at 11:07:34AM +0300, Konstantin Demin wrote: > >Source: nginx > >Version: 1.9.6-2 > >Severity: wishlist > > > >introduce build flavour "standard" > > > >* introduce "standard" build: only vanilla source, no 3rd-party modules at > >all. > > reason: Nginx Inc. provides support only for vanilla-based build. > >* provide packages: "nginx-standard" and "nginx-standard-dbg". > >* make "nginx-standard" as default/first choice > > when installing "nginx" meta-package. > >* fix other package dependencies (mostly "Conflicts") > > > > Since nginx is planning to add dynamic module support as part of the > 1.9.x series[0], I don't think adding a new flavor is a good idea. > When that happens we will move to a single nginx core package and a > handful of satellite nginx modules. > > [0] https://trac.nginx.org/nginx/milestone/1.9 Christos, thank you for information. I've discussed with fellow nginx developer about that feature (dynamic modules) just after reading your e-mail. Here are some key notes from our talk: - feature requires building all modules at the same source tree or against same nginx version with same compilation flags; - dynamic loading is optional feature for any nginx module; some modules (e.g., core modules) are static-compilation only; - 3rd-party modules are required to be modified or even rewritten at all to support that feature; that requires more testing at all. - implementation will take some time prior to 1.10 release; 1.10 release is planned in Q1 or Q2 2016. I'm guess that feature will be production-ready not earlier than Q3.2016. Until then let's use standard version as well as enhanced versions (light, full and extras). When nginx will become modular, I suppose that Debian Maintainers add build flavour with dynamic modules support (named like "nginx-modular" or so), but it will not replace other build flavours until feature will be well-tested. When nginx will become _truly and fully_ modular, Debian Maintainers will rework source package anyway. PS: here is video from Nginx.conf 2015 (Sep 22-24, San Francisco) about Dynamic Modules development: https://www.youtube.com/watch?v=KinJfCQ-WzY --- SY, Konstantin Demin