git: 63f9bd8a213c - main - www/bunkerweb: Fix rc scripts for non-3.11 Python versions

Jochen Neumeister <[email protected]> Thu, 06 Aug 2026 03:22:08 +0000
Newsgroups gmane.os.freebsd.devel.cvs.ports
Message-ID <[email protected]>
The branch main has been updated by joneum:

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

commit 63f9bd8a213cf885b93eb49c461bec54548c7f70
Author:     Jochen Neumeister <[email protected]>
AuthorDate: 2026-08-06 03:21:25 +0000
Commit:     Jochen Neumeister <[email protected]>
CommitDate: 2026-08-06 03:21:25 +0000

    www/bunkerweb: Fix rc scripts for non-3.11 Python versions
    
    The rc scripts hardcoded /usr/local/bin/python3.11, which only worked
    while the tree default happened to be 3.11. With the default at 3.12
    none of the three Python services could start. Substitute the
    interpreter through %%PYTHON_VERSION%% instead.
    
    While here, create /var/run/bunkerweb in the scheduler precmd. The
    scheduler writes its own pid file below that directory and died with
    FileNotFoundError on a fresh boot because nothing created it.
    
    Sponsored by:   Netzkommune GmbH
---
 www/bunkerweb/Makefile                     | 2 +-
 www/bunkerweb/files/bunkerweb_api.in       | 2 +-
 www/bunkerweb/files/bunkerweb_scheduler.in | 7 ++++---
 www/bunkerweb/files/bunkerweb_ui.in        | 2 +-
 4 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/www/bunkerweb/Makefile b/www/bunkerweb/Makefile
index b1ea16204bab..0106240a2296 100644
--- a/www/bunkerweb/Makefile
+++ b/www/bunkerweb/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	bunkerweb
 DISTVERSION=	1.6.13
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	www security
 
 MAINTAINER=	[email protected]
diff --git a/www/bunkerweb/files/bunkerweb_api.in b/www/bunkerweb/files/bunkerweb_api.in
index a3df22de7e3b..8dde469ac220 100644
--- a/www/bunkerweb/files/bunkerweb_api.in
+++ b/www/bunkerweb/files/bunkerweb_api.in
@@ -12,7 +12,7 @@ rcvar="${name}_enable"
 load_rc_config "$name"
 
 : ${bunkerweb_api_enable:="NO"}
-: ${bunkerweb_api_python:="/usr/local/bin/python3.11"}
+: ${bunkerweb_api_python:="%%PREFIX%%/bin/%%PYTHON_VERSION%%"}
 : ${bunkerweb_api_pidfile:="/var/run/${name}.pid"}
 : ${bunkerweb_api_logfile:="/var/log/bunkerweb/api.log"}
 : ${bunkerweb_api_env:=""}
diff --git a/www/bunkerweb/files/bunkerweb_scheduler.in b/www/bunkerweb/files/bunkerweb_scheduler.in
index 69499ba16746..903cee1697f6 100644
--- a/www/bunkerweb/files/bunkerweb_scheduler.in
+++ b/www/bunkerweb/files/bunkerweb_scheduler.in
@@ -14,15 +14,15 @@ load_rc_config "$name"
 : ${bunkerweb_scheduler_enable:="NO"}
 
 pidfile="/var/run/${name}.pid"
-procname="/usr/local/bin/python3.11"
+procname="%%PREFIX%%/bin/%%PYTHON_VERSION%%"
 command="/usr/sbin/daemon"
-command_args="-f -p ${pidfile} /usr/bin/env PYTHONPATH=/usr/local/share/bunkerweb/common/utils:/usr/local/share/bunkerweb/common/db:/usr/local/share/bunkerweb/common/api:/usr/local/share/bunkerweb/deps/python /usr/local/bin/python3.11 /usr/local/share/bunkerweb/scheduler/main.py"
+command_args="-f -p ${pidfile} /usr/bin/env PYTHONPATH=/usr/local/share/bunkerweb/common/utils:/usr/local/share/bunkerweb/common/db:/usr/local/share/bunkerweb/common/api:/usr/local/share/bunkerweb/deps/python %%PREFIX%%/bin/%%PYTHON_VERSION%% /usr/local/share/bunkerweb/scheduler/main.py"
 
 bunkerweb_scheduler_precmd()
 {
 	mkdir -p /var/cache/bunkerweb/misc
 	mkdir -p /usr/local/share/bunkerweb/misc
-	mkdir -p /var/log/bunkerweb
+	mkdir -p /var/log/bunkerweb /var/run/bunkerweb
 
 	if [ ! -f /var/cache/bunkerweb/misc/default-server-cert.pem ] || \
 	   [ ! -f /var/cache/bunkerweb/misc/default-server-cert.key ]; then
@@ -50,6 +50,7 @@ bunkerweb_scheduler_precmd()
 	chmod 640 /usr/local/share/bunkerweb/misc/root-ca.key
 	chmod 644 /usr/local/share/bunkerweb/misc/root-ca.pem
 
+	chown bunkerweb:bunkerweb /var/run/bunkerweb
 	chown -R bunkerweb:bunkerweb /var/log/bunkerweb
 }
 
diff --git a/www/bunkerweb/files/bunkerweb_ui.in b/www/bunkerweb/files/bunkerweb_ui.in
index 46c6b6e84059..99234c094f61 100644
--- a/www/bunkerweb/files/bunkerweb_ui.in
+++ b/www/bunkerweb/files/bunkerweb_ui.in
@@ -16,7 +16,7 @@ load_rc_config $name
 
 pidfile="${bunkerweb_ui_pidfile}"
 command="/usr/sbin/daemon"
-procname="/usr/local/bin/python3.11"
+procname="%%PREFIX%%/bin/%%PYTHON_VERSION%%"
 command_args="-f -p ${pidfile} -o ${bunkerweb_ui_logfile} /usr/bin/env ENABLE_HEALTHCHECK=yes LISTEN_ADDR=0.0.0.0 LISTEN_PORT=7000 PYTHONPATH=/usr/local/share/bunkerweb/ui:/usr/local/share/bunkerweb/common/utils:/usr/local/share/bunkerweb/common/db:/usr/local/share/bunkerweb/common/api /usr/local/bin/gunicorn --bind 0.0.0.0:7000 -c /usr/local/share/bunkerweb/ui/utils/gunicorn.conf.py main:app"
 
 start_precmd="${name}_prestart"