Re: git: 73922d6b363a - main - net-mgmt/librenms: Fix start on FreeBSD 14/nginx
Date: Sun, 08 Oct 2023 16:16:59 UTC
On Sun, Oct 8, 2023, at 10:54 AM, Sergey A. Osokin wrote: > Hi Dan, > > On Sat, Oct 07, 2023 at 11:52:59AM +0000, Dan Langille wrote: >> The branch main has been updated by dvl: >> >> URL: https://cgit.FreeBSD.org/ports/commit/?id=73922d6b363a6902a05721d9102386ce657b03d4 >> >> commit 73922d6b363a6902a05721d9102386ce657b03d4 >> Author: Dan Langille <dvl@FreeBSD.org> >> AuthorDate: 2023-10-07 11:49:41 +0000 >> Commit: Dan Langille <dvl@FreeBSD.org> >> CommitDate: 2023-10-07 11:49:41 +0000 >> >> net-mgmt/librenms: Fix start on FreeBSD 14/nginx >> >> This may be a path issue or a shell issue, but nginx on FreeBSD 14 >> is not finding /usr/local/bin/php. The fix: use /usr/local/bin/php >> as we have done with other patches. >> >> +- base = ("/usr/bin/env", "php") >> ++ base = ("/usr/local/bin/php",) > > Would that be better to use %%PREFIX%% in a patch and substitute > that with a value of the ${LOCALBASE} variable in a post-patch > phase? This is a great idea. I know the port is already doing this for other locations in the code. There are other patches which need this adjustment as well. This is my planned (and hand pasted patch, don't trust it): [16:15 pkg01 dan ~/ports/head/net-mgmt/librenms] % git diff diff --git a/net-mgmt/librenms/Makefile b/net-mgmt/librenms/Makefile index 1b64004a9593..f9a2dd2caa0b 100644 --- a/net-mgmt/librenms/Makefile +++ b/net-mgmt/librenms/Makefile @@ -1,6 +1,6 @@ PORTNAME= librenms PORTVERSION= 23.9.1 -PORTREVISION= 2 +PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= net-mgmt MASTER_SITES= LOCAL/dvl:vendor @@ -151,6 +151,8 @@ _OTHER_DIRS= database/seeders/config html/plugins html/js/lang \ post-patch: ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/LibreNMS/Validations/Php.php + ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/LibreNMS/__init__.py + ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/LibreNMS/wrapper.py ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/LibreNMS/Util/Version.php ${REINPLACE_CMD} 's|%%PORTVERSION%%|${PORTVERSION}|g' ${WRKSRC}/LibreNMS/Util/Version.php ${REINPLACE_CMD} 's|%%RELEASE_TIMESTAMP%%|${_RELEASE_TIMESTAMP}|g' ${WRKSRC}/LibreNMS/Util/Version.php @@ -158,6 +160,7 @@ post-patch: ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/includes/html/output/capture.inc.php ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/config.php.default ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/poller-wrapper.py + ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/snmp-scan.py ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/dist/librenms-scheduler.cron ${REINPLACE_CMD} 's|%%WWWDIR%%|${WWWDIR}|g' ${WRKSRC}/dist/librenms-scheduler.cron ${REINPLACE_CMD} 's|%%USER%%|${WWWOWN}|g' ${WRKSRC}/dist/librenms-scheduler.cron diff --git a/net-mgmt/librenms/files/patch-LibreNMS_Validations_System.php b/net-mgmt/librenms/files/patch-LibreNMS_Validations_System.php index 744b3533df01..961ebfbeaaac 100644 --- a/net-mgmt/librenms/files/patch-LibreNMS_Validations_System.php +++ b/net-mgmt/librenms/files/patch-LibreNMS_Validations_System.php @@ -5,7 +5,7 @@ $install_dir = $validator->getBaseDir(); - $lnms = str_replace('lnms:', '', rtrim(`whereis -b lnms 2>/dev/null`)); -+ $lnms = rtrim(`/usr/bin/find /usr/local/bin -name lnms`); ++ $lnms = rtrim(`/usr/bin/find %%LOCALBASE%%/bin -name lnms`); $path = rtrim(`echo "\$PATH"`); // if couldn't find lnms and we have PATH diff --git a/net-mgmt/librenms/files/patch-LibreNMS_____init____.py b/net-mgmt/librenms/files/patch-LibreNMS_____init____.py index a5a301d57649..a648688daae8 100644 --- a/net-mgmt/librenms/files/patch-LibreNMS_____init____.py +++ b/net-mgmt/librenms/files/patch-LibreNMS_____init____.py @@ -14,7 +14,7 @@ if script.endswith(".php"): # save calling the sh process - base = ("/usr/bin/env", "php") -+ base = ("/usr/local/bin/php",) ++ base = ("%%LOCALBASE%%/bin/php",) else: base = () diff --git a/net-mgmt/librenms/files/patch-LibreNMS_wrapper.py b/net-mgmt/librenms/files/patch-LibreNMS_wrapper.py index d0f9187b21cf..d37958f3ac0a 100644 --- a/net-mgmt/librenms/files/patch-LibreNMS_wrapper.py +++ b/net-mgmt/librenms/files/patch-LibreNMS_wrapper.py @@ -5,7 +5,7 @@ wrappers[wrapper_type]["executable"], ) - command = "/usr/bin/env php {} -h {}".format(executable, device_id) -+ command = "/usr/local/bin/php php {} -h {}".format(executable, device_id) ++ command = "%%LOCALBASE%%/bin/php php {} -h {}".format(executable, device_id) if modules is not None and len(str(modules).strip()): module_str = re.sub("\s", "", str(modules).strip()) command = command + " -m {}".format(module_str) diff --git a/net-mgmt/librenms/files/patch-snmp-scan.py b/net-mgmt/librenms/files/patch-snmp-scan.py index 8c8ad9ddfc03..35f95c508731 100644 --- a/net-mgmt/librenms/files/patch-snmp-scan.py +++ b/net-mgmt/librenms/files/patch-snmp-scan.py @@ -6,7 +6,7 @@ arguments = [ - "/usr/bin/env", - "lnms", -+ "/usr/local/bin/lnms", ++ "%%LOCALBASE%%/bin/lnms", "device:add", "-g", POLLER_GROUP, @@ -15,7 +15,7 @@ try: CONFIG = json.loads( - check_output(["/usr/bin/env", "php", "config_to_json.php"]).decode() -+ check_output(["/usr/local/bin/php", "config_to_json.php"]).decode() ++ check_output(["%%LOCALBASE%%/bin/php", "config_to_json.php"]).decode() ) except CalledProcessError as e: parser.error( [16:16 pkg01 dan ~/ports/head/net-mgmt/librenms] % -- Dan Langille dan@langille.org