public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Zurab Kvachadze <zurabid2016@gmail.com>
To: gentoo-dev@lists.gentoo.org
Cc: Zurab Kvachadze <zurabid2016@gmail.com>
Subject: [gentoo-dev] [PATCH v4 18/44] www-servers/nginx: add 1.29.0, use nginx.eclass
Date: Thu,  3 Jul 2025 00:06:38 +0200	[thread overview]
Message-ID: <20250702220705.4649-19-zurabid2016@gmail.com> (raw)
In-Reply-To: <20250702220705.4649-1-zurabid2016@gmail.com>

This commit makes NGINX employ new nginx.eclass. This adds the mainline
1.29.0 NGINX version to the Gentoo tree bringing a considerable
amount of changes:

    * NGINX is now fully slotted. Stable versions are in the 'stable'
      SLOT and mainline ones are in the 'mainline' SLOT. There is also a
      'live' slot for the latest git version.

    * All external modules have been unbundled from the main NGINX
      package. They will soon be available as separate packages in the
      www-nginx/ category. In addition, NGINX development kit
      (ngx_devel_kit) is no longer unconditionally statically built into
      NGINX binary.

    * LICENSE has been modified to reflect reality.

    * USE flag changes:

	1. "pcre", "pcre2" have been removed along with the dependency
	   on EOL libpcre1. Bug 886537, although it is not really closed
	   until old versions that still depend on libpcre1 are
	   treecleaned.

	2. "ktls" and "pcre-jit" have been removed completely since they
	   have no effect if system OpenSSL and libpcre are used (as is
	   always the case with NGINX on Gentoo).

	3. "threads" - removed, even though some really ancient
	   third-party modules break with this (e.g. mogilefs last time
	   I checked it). nginx.eclass enables pthreads support
	   unconditionally, see https://bugs.gentoo.org/868336.

	4. "vim-syntax" has been removed, as vimfiles are bundled with
	   NGINX, are more updated there and, therefore, are now
	   installed from the NGINX tarball.

	5. "http2" and "http3" have been moved to their
	   nginx_modules_http_v{2,3} counterparts where they actually
	   belong as regular modules.

	6. "ssl" has been moved to nginx_modules_{http,mail,stream}_ssl.

	7. "http-cache" has been removed. It does not even qualify to be
	   a USE flag: the flag just passes some argument to disable the
	   http cache, which (the cache) is not documented upstream at
	   all.

	8. "modules" USE flag has been added to control dynamic modules
	   support.

	9. A substantial amount of USE flags have been added for minor
	   HTTP, stream (bug 735020) and mail modules.

    * All the miscellaneous files (configuration file, confd, init and
      logrotate scripts, systemd service) have been revbumped. NGINX now
      ships with tmpfiles.d(5) configuration file (see below). This
      closes bugs 481456, 928131, 576414.

    * All the files that previously went into /etc/nginx are now stored
      in /usr/share/nginx, apart from nginx.conf.

    * NGINX's temporary files are now stored in /var/tmp/nginx, instead
      of /var/lib/nginx/tmp. The new directory is managed by
      systemd-tmpfiles(8), which has been added as a dependency.

    * NGINX now uses the access.log and error.log as default log names,
      instead of access_log and error_log (bug 700866).

    * NGINX no longer does strange permission checks for 8-year-old
      CVEs.

This commit also closes the bug 578658 mentioned in nginx.eclass.

Bug: https://bugs.gentoo.org/886537
Closes: https://bugs.gentoo.org/481456
Closes: https://bugs.gentoo.org/928131
Closes: https://bugs.gentoo.org/576414
Closes: https://bugs.gentoo.org/578658
Closes: https://bugs.gentoo.org/735020
Closes: https://bugs.gentoo.org/700866
Signed-off-by: Zurab Kvachadze <zurabid2016@gmail.com>
---
 www-servers/nginx/Manifest            |  2 ++
 www-servers/nginx/nginx-1.29.0.ebuild | 31 +++++++++++++++++++++++++++
 2 files changed, 33 insertions(+)
 create mode 100644 www-servers/nginx/nginx-1.29.0.ebuild

diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest
index b5bf8a70d246..7c57baf51e34 100644
--- a/www-servers/nginx/Manifest
+++ b/www-servers/nginx/Manifest
@@ -1,8 +1,10 @@
 DIST modsecurity-nginx-1.0.3.tar.gz 34063 BLAKE2B 859a29eb7f67d53a818578f1008f0d0debbe37c205bb7c6e79594d8b1a6a0d93988880d35f607ef05ef6d73c9aa887baebfd2c54aca894969beeed4bfe576f37 SHA512 20495884c6b3594edf879a19fd7445f2e74a1628789decd146b3c712764b0507e440a84a64aab619461b044f98b8d641913cfad57a6d0002e7061716bdfe84fc
 DIST nginx-1.26.3.tar.gz 1260179 BLAKE2B 4ef731070e986d98fc1984717dec7fb766ed1a02b196c3ae9a69deea7093d17253b46c06f4eb812a19187be49e42c1a485a54ba3e2e639b5084ef2b0e2287212 SHA512 cd780e495796bf7413e54a6730d11d55127b0ca6563acf5c75eb2698f62cddbbf5ba61820c57b2316c0bb789fcfd17f98a27a84b525ed50f304d1b1043ffa05d
 DIST nginx-1.27.5.tar.gz 1279891 BLAKE2B 6d7fd563d201e8ed985810e418f9981fd0adedf7b40bb3cf8278819a88ecaea148df7df69ff0240cfd028df86d92734e9d20449c2178d3e4b82e78bb0cef3e36 SHA512 5130bc2ec08a962b631ceb741ecb3dc0d84423ca50afb713d9c52c13af1e1bf5e2b0be226936d6dfbc7c2a45b44726ba478a571c6032099bc8ece85fe015ccbc
+DIST nginx-1.29.0.tar.gz 1284291 BLAKE2B 29c229f71d8f65aa44213eec47be1b5205ae4bc1ac1769b1c7ad31ea3db1599000a531c1cbd04f154603a8c121e155795c3a6338349c5b215fcb9c3f2029bd32 SHA512 7bc86e6e6a2bb9b0776a9590a1b73c2dfd8cb1a4cf983ffaa03990f1bf32a8b8d0c28d0eca7c7d865a06cd0829c948f7080aafd119a8375331a455397ab63459
 DIST nginx-auth-ldap-42d195d7a7575ebab1c369ad3fc5d78dc2c2669c.tar.gz 18457 BLAKE2B 22225ca9e5299b20ab5a93a001cac48e446bd86b3a24ac49e716bc975b128890bdb4b0dbbf5730fbaaeadfd958160093c7a6af798dd0e6de27062f149a760333 SHA512 ec59637fda5acac053e815cb1d04b545fc6b765e5ec63d8c2c9c301abad87afaa2698145acac08e9e14c91e1423ebff7aff0cca2b940b19ccccbf4cf53973269
 DIST nginx-tests-0b5ec15c62ed.tar.gz 282652 BLAKE2B af41397f88f7aa969749c6dd9a77c58d1835bca24fe764dd0af328d621817f5fb89b3f5b5c0fbd1e7db53d51365e9098b020005e27a531649bd8a51a05b3cbb0 SHA512 c376d23c7001c5203428b664c388e97956cdda8365eb7df57db0da5146d0806f5c35cd1352260d6803d55542f46a90da4a604ebf971055caa77dd6106930558e
+DIST nginx-tests-7f1e88e10dca8e4c135ab9e688df0c2484091125.tar.gz 314916 BLAKE2B 67c70550a1cdfb08b75c760953a3e6a36a70f56a00236c9957daa0d7a19ef064836f858174c99ee8b755336b7436fbf167ceaa5146f37dd25d2cd8c9d74167cd SHA512 cd0d7106ded9634bb034fed18e5965c3ef7209e0036c1f42f134705ecbcc5b85c0caaf99c95543dabd864c8d86960e1f98e1b3f109cdaeb5e68083a8f7e83ac9
 DIST nginx-vod-module-1.33.tar.gz 471858 BLAKE2B fa5cb9fd185b30c5c53b25a6f103213b3d04dac5d2d81db72f9749a51548e09e3e17dccc636d748aff8d21c6623484c77fdeb10d70854480759665d140d42e0e SHA512 29ef77f1bbdb2410ff317ebdd7434f31b8ec370ae6b617b92e745e87c11bc820b451181d1d2b57156b414348da14ac448b689b32b17ab418144292eda094512d
 DIST nginx_http_sticky_module_ng-1.2.6-10-g08a395c66e42.tar.bz2 124047 BLAKE2B d37ef9a15c91abe3c6258e420d1f99fa452f9d9966a0e13102174973314a3bac5413957a5fe632a9dcb1163b3be5df8116e05cc053ee061e19319ec25f341570 SHA512 6c1bfdcf89884b2855d51ae7da0f6e53a4ca3629e1aaf58433b70c07dcb2af797ba6e87d9b3eb4fe2fb6d4d697e862f2b4c2f8d8b3fdaea201740c97ec936529
 DIST ngx_brotli-1.0.0rc.tar.gz 16207 BLAKE2B 450d0ea693bd98d4a1b615f2cdcaad41ccd28266f6d80beec7fe77fe750ab8c5d1bb55aabe15161b9b6d819d2b4d99a7774f2706f2f6fd084b52a7c7dddbc00c SHA512 05a880d5e48ac83be84498ed41fb4750211b827a9d7541acfd6ef494e5205a6e853d5594bfec3ab4ae668ea3f803e4f4b0ba550c76811971c8e266e42663c56d
diff --git a/www-servers/nginx/nginx-1.29.0.ebuild b/www-servers/nginx/nginx-1.29.0.ebuild
new file mode 100644
index 000000000000..187f6765a964
--- /dev/null
+++ b/www-servers/nginx/nginx-1.29.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+NGINX_SUBSYSTEMS=(+http stream mail)
+NGINX_MODULES=(
+	+http_{charset,gzip,ssi,userid,access,auth_basic,mirror,autoindex,geo,map}
+	+http_{split_clients,referer,rewrite,proxy,fastcgi,uwsgi,scgi,grpc}
+	+http_{memcached,limit_conn,limit_req,empty_gif,browser,upstream_hash}
+	+http_{upstream_ip_hash,upstream_least_conn,upstream_random}
+	+http_{upstream_keepalive,upstream_zone}
+	http_{ssl,v2,v3,realip,addition,xslt,image_filter,geoip,sub,dav,flv,mp4}
+	http_{gunzip,gzip_static,auth_request,random_index,secure_link,degradation}
+	http_{slice,stub_status,perl}
+	+mail_{pop3,imap,smtp}
+	mail_ssl
+	+stream_{limit_conn,access,geo,map,split_clients,return,pass,set}
+	+stream_{upstream_hash,upstream_least_conn,upstream_random,upstream_zone}
+	stream_{ssl,realip,geoip,ssl_preread}
+)
+NGINX_UPDATE_STREAM=mainline
+NGINX_TESTS_COMMIT=7f1e88e10dca8e4c135ab9e688df0c2484091125
+NGINX_MISC_FILES=(
+	nginx-{r2.logrotate,r2.service,r4.conf,r5.initd,r1.confd}
+	nginx.tmpfiles
+)
+
+inherit nginx
+
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
-- 
2.49.0



  parent reply	other threads:[~2025-07-02 22:24 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-02 22:06 [gentoo-dev] [PATCH v4 00/44] Rework NGINX packaging in Gentoo by introducing nginx{,-module}.eclass Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 01/44] nginx.eclass: Add new eclass for building the NGINX server Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 02/44] dev-perl/Test-Nginx: new package, add 0.31 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 03/44] nginx-module.eclass: Add new eclass for building NGINX external modules Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 04/44] profiles/arch/powerpc/ppc64: mask tests for www-servers/nginx Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 05/44] profiles/arch/riscv: " Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 06/44] www-servers/nginx: add myself as a proxy maintainer; update metadata.xml Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 07/44] www-servers/nginx: add nginx.tmpfiles for managing /var/tmp/nginx Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 08/44] www-servers/nginx: add nginx-r5.initd Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 09/44] www-servers/nginx: add nginx-r1.confd Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 10/44] www-servers/nginx: add nginx-r2.service Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 11/44] www-servers/nginx: add nginx-r2.logrotate Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 12/44] www-servers/nginx: add nginx-r4.conf Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 13/44] profiles/desc: reword and update nginx_modules_http.desc Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 14/44] profiles/desc: reword and update nginx_modules_mail.desc Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 15/44] profiles/desc: reword and update nginx_modules_stream.desc Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 16/44] profiles/categories: Add www-nginx category for external NGINX modules Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 17/44] app-metrics/nginx-lua-prometheus: revbump to r101, update EAPI 7 -> 8, remove r100 Zurab Kvachadze
2025-07-02 22:06 ` Zurab Kvachadze [this message]
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 19/44] www-servers/nginx: add 9999 live version, use nginx.eclass Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 20/44] www-nginx/ngx_devel_kit: new package, add 0.3.4 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 21/44] www-nginx/ngx-echo: new package, add 0.63 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 22/44] www-nginx/ngx-encrypted-session: new package, add 0.09 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 23/44] www-nginx/ngx-set-misc: new package, add 0.33 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 24/44] www-nginx/ngx-brotli: new package, add 20231109 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 25/44] www-nginx/ngx-headers-more: new package, add 0.37 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 26/44] www-nginx/ngx-upload-progress: new package, add 0.9.3 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 27/44] dev-lua/lua-resty-core: new package, add 0.1.30 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 28/44] dev-lua/lua-resty-lrucache: new package, add 0.15 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 29/44] www-nginx/ngx-lua-module: new package, add 0.10.27 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 30/44] dev-lua/lua-resty-string: new package, add 0.16 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 31/44] dev-lua/lua-resty-mysql: new package, add 0.27 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 32/44] dev-lua/lua-resty-memcached: new package, add 0.17 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 33/44] www-nginx/ngx-xss: new package, add 0.06 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 34/44] www-nginx/ngx-eval: new package, add 0_p20240817 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 35/44] www-nginx/ngx-iconv: new package, add 0.14 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 36/44] www-nginx/ngx-srcache: new package, add 0.33 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 37/44] www-nginx/ngx-lua-upstream: new package, add 0.07 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 38/44] www-nginx/ngx-memc: new package, add 0.20 Zurab Kvachadze
2025-07-02 22:06 ` [gentoo-dev] [PATCH v4 39/44] www-nginx: enable tests for OpenResty modules Zurab Kvachadze
2025-07-02 22:07 ` [gentoo-dev] [PATCH v4 40/44] www-nginx/ngx-dav-ext: new package, add 3.0.0 Zurab Kvachadze
2025-07-02 22:07 ` [gentoo-dev] [PATCH v4 41/44] www-nginx/ngx-geoip2: new package, add 3.4 Zurab Kvachadze
2025-07-02 22:07 ` [gentoo-dev] [PATCH v4 42/44] www-nginx/ngx-fancyindex: new package, add 0.5.2 Zurab Kvachadze
2025-07-02 22:07 ` [gentoo-dev] [PATCH v4 43/44] www-nginx/ngx-vod: new package, add 1.33 Zurab Kvachadze
2025-07-02 22:07 ` [gentoo-dev] [PATCH v4 44/44] www-nginx/ngx-modsecurity: new package, add 1.0.3 Zurab Kvachadze
2025-07-05  7:23 ` [gentoo-dev] [PATCH v4 00/44] Rework NGINX packaging in Gentoo by introducing nginx{,-module}.eclass Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250702220705.4649-19-zurabid2016@gmail.com \
    --to=zurabid2016@gmail.com \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox