git: d52da5167116 - main - www/angie-module-zstd: New port: zstd compression for angie

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Wed, 10 Dec 2025 12:05:47 UTC
The branch main has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=d52da51671168cbf847447d3252565607997b841

commit d52da51671168cbf847447d3252565607997b841
Author:     Sebastian Oswald <sko@rostwald.de>
AuthorDate: 2025-12-10 12:04:05 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2025-12-10 12:04:05 +0000

    www/angie-module-zstd: New port: zstd compression for angie
    
    The module adds support for Zstandard compression of responses, both
    dynamic (on-the-fly) and static (precompressed files). Compared to gzip,
    zstd offers higher compression and decompression speeds at comparable
    or better compression ratios.
    
    Source and documentation:
    https://github.com/tokers/zstd-nginx-module/
    
    Angie-specific documentation:
    https://en.angie.software/angie/docs/installation/external-modules/zstd/
    
    PR:     291546
---
 www/Makefile                               |  1 +
 www/angie-module-zstd/Makefile             | 29 +++++++++++++++++++++++++++++
 www/angie-module-zstd/files/pkg-message.in | 17 +++++++++++++++++
 www/angie-module-zstd/pkg-descr            |  4 ++++
 www/angie-module-zstd/pkg-plist            |  3 +++
 www/angie/distinfo                         |  4 +++-
 6 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/www/Makefile b/www/Makefile
index 3eabb625c15c..07f03e528ff7 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -63,6 +63,7 @@
     SUBDIR += angie-module-upload
     SUBDIR += angie-module-vod
     SUBDIR += angie-module-xslt
+    SUBDIR += angie-module-zstd
     SUBDIR += anyremote2html
     SUBDIR += apache-mode.el
     SUBDIR += apache24
diff --git a/www/angie-module-zstd/Makefile b/www/angie-module-zstd/Makefile
new file mode 100644
index 000000000000..8b527ccf061f
--- /dev/null
+++ b/www/angie-module-zstd/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	angie-module-zstd
+MODULE_VERSION=	0.1.1
+MODULE_PORTREVISION=	0
+GH_TUPLE=	tokers:zstd-nginx-module:${MODULE_VERSION}:module
+
+COMMENT=	Angie zstd dynamic module
+WWW=		https://github.com/tokers/zstd-nginx-module/
+
+LICENSE=	BSD2CLAUSE
+
+LIB_DEPENDS=	libzstd.so:archivers/zstd
+
+CONFIGURE_ADD=	--add-dynamic-module=${WRKSRC_module}
+
+MASTERDIR=	${.CURDIR}/../../www/angie
+
+do-install:
+	${MKDIR} ${STAGEDIR}${DOCSDIR} \
+		 ${STAGEDIR}${MODDIR}
+
+.for i in ngx_http_zstd_static_module ngx_http_zstd_filter_module
+	${INSTALL_LIB} ${WRKSRC}/objs/${i}.so ${STAGEDIR}${MODDIR}
+.endfor
+
+.for i in README.md
+	${INSTALL_MAN} ${WRKSRC_module}/${i} ${STAGEDIR}${DOCSDIR}
+.endfor
+
+.include "${MASTERDIR}/Makefile"
diff --git a/www/angie-module-zstd/files/pkg-message.in b/www/angie-module-zstd/files/pkg-message.in
new file mode 100644
index 000000000000..a514ed564dc6
--- /dev/null
+++ b/www/angie-module-zstd/files/pkg-message.in
@@ -0,0 +1,17 @@
+[
+{ type: install
+  message: <<EOM
+
+The zstd dynamic modules for Angie have been installed.
+To enable these modules, add the following to %%PREFIX%%/etc/angie/angie.conf
+and reload angie:
+
+    load_module modules/ngx_http_zstd_filter_module.so;
+    load_module modules/ngx_http_zstd_static_module.so;
+
+Please refer to the module documentation for further details:
+https://github.com/tokers/zstd-nginx-module
+https://en.angie.software/angie/docs/installation/external-modules/zstd/
+EOM
+}
+]
diff --git a/www/angie-module-zstd/pkg-descr b/www/angie-module-zstd/pkg-descr
new file mode 100644
index 000000000000..f70034e027ba
--- /dev/null
+++ b/www/angie-module-zstd/pkg-descr
@@ -0,0 +1,4 @@
+The module adds support for Zstandard compression of responses, both
+dynamic (on-the-fly) and static (precompressed files). Compared to gzip,
+zstd offers higher compression and decompression speeds at comparable
+or better compression ratios.
diff --git a/www/angie-module-zstd/pkg-plist b/www/angie-module-zstd/pkg-plist
new file mode 100644
index 000000000000..28417be3d639
--- /dev/null
+++ b/www/angie-module-zstd/pkg-plist
@@ -0,0 +1,3 @@
+%%DOCSDIR%%/README.md
+%%MODDIR%%/ngx_http_zstd_filter_module.so
+%%MODDIR%%/ngx_http_zstd_static_module.so
diff --git a/www/angie/distinfo b/www/angie/distinfo
index c977762dd30e..6f8836c03554 100644
--- a/www/angie/distinfo
+++ b/www/angie/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1765300000
+TIMESTAMP = 1765353535
 SHA256 (angie-1.10.3.tar.gz) = ff820ec9dc7ac8b0e873c52ddc48b3417f5054f157b5d2df5c1b8ed7adfb2256
 SIZE (angie-1.10.3.tar.gz) = 1758928
 SHA256 (61131-nginx-http-auth-totp-1.1.0_GH0.tar.gz) = d36d2b75a3b239e63ec060ef9ccfa6b89acbceb74b7c93e47550c1f75ac4857e
@@ -51,3 +51,5 @@ SHA256 (fdintino-nginx-upload-module-2.3.0_GH0.tar.gz) = c86e318addb9c88d70fdbd5
 SIZE (fdintino-nginx-upload-module-2.3.0_GH0.tar.gz) = 40139
 SHA256 (kaltura-nginx-vod-module-1.33_GH0.tar.gz) = 9c9600e5da4ee02ef6820d056da9eb5f3449f715468334ddab41727b76d478d8
 SIZE (kaltura-nginx-vod-module-1.33_GH0.tar.gz) = 471858
+SHA256 (tokers-zstd-nginx-module-0.1.1_GH0.tar.gz) = 707d534f8ca4263ff043066db15eac284632aea875f9fe98c96cea9529e15f41
+SIZE (tokers-zstd-nginx-module-0.1.1_GH0.tar.gz) = 55417