From: Stuart Henderson Subject: Re: nginx: remove ruby passenger dependency To: Theo Buehler Cc: ports@openbsd.org, jeremy@openbsd.org, robert@openbsd.org Date: Tue, 19 Aug 2025 10:52:55 +0100 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 > > # 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 >