Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: nginx: remove ruby passenger dependency
To:
Theo Buehler <tb@theobuehler.org>
Cc:
ports@openbsd.org, jeremy@openbsd.org, robert@openbsd.org
Date:
Tue, 19 Aug 2025 10:52:55 +0100

Download raw body.

Thread
On 2025/08/19 10:49, Theo Buehler wrote:
> Our passenger is quite outdated and will break with the libc++19 update.
> Since it's a dependency of nginx, we need to fix that. Since it's a pain
> to udpate and with ruby-puma there is a better solution, jeremy suggested
> we get rid of passenger. No actual user spoke up on the list since
> jeremy asked: https://marc.info/?t=175224762500001&r=1&w=2
> 
> I think the diff for nginx would look like this. I verified that this
> builds and packages with current and with libc++19. This can of course
> wait until the smtp module fix is committed.

ok sthen (either before or after smtp).

probably wants a custom text quirk for nginx-passenger pointing users at
puma (I can take care of that, or go ahead when committing).

> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/www/nginx/Makefile,v
> diff -u -p -r1.193 Makefile
> --- Makefile	24 Jul 2025 23:20:36 -0000	1.193
> +++ Makefile	19 Aug 2025 07:46:41 -0000
> @@ -13,7 +13,6 @@ COMMENT-mailproxy=	nginx mail proxy modu
>  COMMENT-modsecurity=	nginx module for ModSecurity
>  COMMENT-naxsi=		nginx web application firewall module
>  COMMENT-njs=		nginx javascript scripting module
> -COMMENT-passenger=	nginx passenger (ruby/python/nodejs) integration module
>  COMMENT-perl=		nginx perl scripting module
>  COMMENT-rtmp=		nginx module for RTMP streaming
>  COMMENT-securelink=	nginx HMAC secure link module
> @@ -23,7 +22,6 @@ COMMENT-xslt=		nginx XSLT filter module
>  VERSION=	1.28.0
>  REVISION=	1
>  REVISION-njs=		2
> -REVISION-passenger=	2
>  DISTNAME=	nginx-${VERSION}
>  CATEGORIES=	www
>  
> @@ -38,15 +36,12 @@ PKGNAME-mailproxy=	nginx-mailproxy-${VER
>  PKGNAME-modsecurity=	nginx-modsecurity-${VERSION}
>  PKGNAME-naxsi=		nginx-naxsi-${VERSION}
>  PKGNAME-njs=		nginx-njs-${VERSION}
> -PKGNAME-passenger=	nginx-passenger-${VERSION}
>  PKGNAME-perl=		nginx-perl-${VERSION}
>  PKGNAME-rtmp=		nginx-rtmp-${VERSION}
>  PKGNAME-securelink=	nginx-securelink-${VERSION}
>  PKGNAME-stream=		nginx-stream-${VERSION}
>  PKGNAME-xslt=		nginx-xslt-${VERSION}
>  
> -ONLY_FOR_ARCHS-passenger= aarch64 amd64 arm i386
> -
>  SITES=	https://nginx.org/download/
>  SITES.p=https://raw.githubusercontent.com/rnagy/nginx_chroot_patch/master/ \
>  	https://raw.githubusercontent.com/sthen/nginx_chroot_patch/add_1.20.1/
> @@ -74,14 +69,12 @@ HOMEPAGE-lua=		https://github.com/openre
>  HOMEPAGE-modsecurity=	https://github.com/owasp-modsecurity/ModSecurity-nginx
>  HOMEPAGE-naxsi=		https://github.com/wargio/naxsi
>  HOMEPAGE-njs=		https://github.com/nginx/njs
> -HOMEPAGE-passenger=	https://www.phusionpassenger.com/
>  HOMEPAGE-rtmp=		https://github.com/arut/nginx-rtmp-module
>  HOMEPAGE-securelink=	https://github.com/nginx-modules/ngx_http_hmac_secure_link_module
>  
>  MAINTAINER=	Robert Nagy <robert@openbsd.org>
>  
>  # nginx, cache_purge, geoip2, headers_more, ldap_auth, njs, rtmp: BSD-like
> -# passenger: MIT
>  # securelink: unlicensed
>  # naxsi: GPLv3
>  # modsecurity: Apache2
> @@ -91,11 +84,11 @@ MULTI_PACKAGES =	-main -naxsi -perl ${MO
>  
>  MODULE_PACKAGES =	-cache_purge -geoip2 -headers_more \
>  			-image_filter -ldap_auth -lua -mailproxy \
> -			-modsecurity -njs -passenger -rtmp \
> +			-modsecurity -njs -rtmp \
>  			-securelink -stream -xslt
>  
>  FLAVOR ?=
> -PSEUDO_FLAVORS =	no_lua no_modsecurity no_njs no_passenger
> +PSEUDO_FLAVORS =	no_lua no_modsecurity no_njs
>  
>  COMPILER =		base-clang ports-gcc base-gcc
>  
> @@ -112,7 +105,6 @@ WANTLIB-mailproxy=
>  WANTLIB-modsecurity=	modsecurity
>  WANTLIB-naxsi=
>  WANTLIB-njs=		exslt m xml2 xslt
> -WANTLIB-passenger=	m pthread ${COMPILER_LIBCXX}
>  WANTLIB-perl=		c m perl
>  WANTLIB-rtmp=
>  WANTLIB-securelink=	crypto
> @@ -141,8 +133,6 @@ RUN_DEPENDS-main=	# blank (override defa
>  RUN_DEPENDS-lua=	${RUN_DEPENDS} \
>  			${_MODLUA_RUN_DEPENDS} \
>  			devel/pcre
> -RUN_DEPENDS-passenger=	${RUN_DEPENDS} \
> -			ruby*-passenger-*:www/ruby-passenger
>  
>  NGINX_DIR=	/var/www
>  SUBST_VARS=	NGINX_DIR
> @@ -175,14 +165,6 @@ CONFIGURE_ARGS+=	--add-dynamic-module=${
>  CONFIGURE_ENV+=		MODSECURITY_INC=${LOCALBASE}/include/modsecurity \
>  			MODSECURITY_LIB=${LOCALBASE}/lib
>  CONFIGURE_ARGS+=	--add-dynamic-module=${WRKSRC}/ModSecurity-nginx
> -.endif
> -
> -.if ${BUILD_PACKAGES:M-passenger}
> -MODULES+=		lang/ruby
> -MODRUBY_BUILDDEP=	No
> -MODRUBY_RUNDEP=		No
> -BUILD_DEPENDS+=		${MODRUBY_PKG_PREFIX}-passenger-*:www/ruby-passenger
> -CONFIGURE_ARGS+=	--add-dynamic-module=${LOCALBASE}/lib/phusion-passenger${GEM_BIN_SUFFIX}/src/nginx_module
>  .endif
>  
>  .if ${BUILD_PACKAGES:M-rtmp}
> Index: pkg/DESCR-passenger
> ===================================================================
> RCS file: pkg/DESCR-passenger
> diff -N pkg/DESCR-passenger
> --- pkg/DESCR-passenger	4 Nov 2016 22:13:43 -0000	1.1
> +++ /dev/null	1 Jan 1970 00:00:00 -0000
> @@ -1,13 +0,0 @@
> -This is the nginx module adding support for Phusion Passenger.
> -
> -Phusion Passenger is a web server and application server, designed to be fast,
> -robust and lightweight. It takes a lot of complexity out of deploying web apps,
> -adds powerful enterprise-grade features that are useful in production, and makes
> -administration much easier and less complex. Phusion Passenger supports Ruby,
> -Python, Node.js and Meteor, and is being used by high-profile companies such as
> -Apple, Pixar, New York Times, AirBnB, Juniper etc as well as over 350.000
> -websites.
> -
> -What makes it so fast and reliable is its C++ core, its zero-copy architecture,
> -its watchdog system and its hybrid evented, multi-threaded and multi-process
> -design.
> Index: pkg/PLIST-passenger
> ===================================================================
> RCS file: pkg/PLIST-passenger
> diff -N pkg/PLIST-passenger
> --- pkg/PLIST-passenger	11 Mar 2022 20:10:10 -0000	1.3
> +++ /dev/null	1 Jan 1970 00:00:00 -0000
> @@ -1 +0,0 @@
> -@so ngx_http_passenger_module.so
>