Re: NEW: security/zoneminder 1.39.17 - testing needed
Stuart Henderson <[email protected]>
| Newsgroups | gmane.os.openbsd.ports |
|---|---|
| Message-ID | <[email protected]> |
On 2026/08/17 08:16, Stuart Henderson wrote:
> On 2026/08/16 19:36, Ian Darwin wrote:
> > On 8/16/26 10:49 AM, vansid wrote:
> > > Attached is a tarball for a new OpenBSD port of the open source surveillance
> > > suite ZoneMinder. It is certainly a work in progress and is far from
> > > perfect...but it *does* work. I'm sure there are tons of problems, plenty
> > > of incorrect syntax (especially in pkg/PLIST), and more than a few mistakes,
> > > so feedback and testing are welcome (please be gentle...it's my first time).
> > >
> > /usr/ports/infrastructure/bin/portcheck is a tool that's usually
> > used to find certain common errors (you should probably add
> > /usr/ports/infrastructure/bin/ to your PATH in your shell startup
> > files).
> >
> > zoneminder $ portcheck
> > 2 line(s) longer than 80 chars in Makefile
> > Makefile should not contain $OpenBSD$ tag
that one is correct
> > hardcoded paths detected in pkg/MESSAGE, consider using SUBST_VARS
> > and TRUEPREFIX/LOCALBASE/LOCALSTATEDIR
> > security/zoneminder
>
> portcheck often gives silly suggestions though.
>
> SITES should use $V not hardcode the version
>
> Contents of MESSAGE should move to README and add the standard
> boilerplate from ports/infrastructure/templates/README.template
> (generally if it's more than 2-3 lines, MESSAGE is the wrong
> place)
>
> Have only read through quickly so far
> >
>
more issues
- should be using upstream's distribution plus whatever patches are
needed, not a fork where it's unclear what has changed (or even what
it started off as, since there's no 1.39.17 tag upstream)
- drop "PKGNAME = ${DISTNAME}" as that is the default
- use tabs when padding continuation lines in the Makefile, not spaces
- LIB_DEPENDS are only used where there is an actual library dependency
i.e. the library is linked into a program (and that must be listed in
WANTLIB). other things must be listed as a build or run (or both)
dependencies. (if there is no SHARED_LIBS in a port then there's no
way it can be used as LIB_DEPENDS. you will also see an error message
when it creates the package about "not needed for" if you have a
LIB_DEPENDS without an associated WANTLIB).
- add lang/php to MODULES, and don't hardcode versions for PHP deps,
instead use e.g. lang/php/${MODPHP_VERSION},-intl and
www/pecl-apcu${MODPHP_FLAVOR}. for PDO, use "MODPHP_PDO_PREF = mysql"
and add "${MODPHP_PDO_DEPENDS}" to RUN_DEPENDS.
- generally I wouldn't force deps on both mysql and pgsql extensions
for PHP, just pick one, unless there's a really good reason not to
- zm should run with nginx too; don't force dependencies on apache-httpd
and apache mod_php
- database server could be a different machine so generally you don't
depend on mariadb,-server