sysutils/nfs-over-tls: Fix build with OpenSSL without KTLS patches The NFS over TLS daemons have been updated so that they will build with versions of OpenSSL not patched for KTLS. They also check for KTLS being enabled and just errx() if not. Since this is a new port and the above changes do not change the daemons when built with a KTLS enabled version of OpenSSL, the source revision has not changed. However, distinfo does need to be updated for the modified tarball. Reviewed_by: lwushu, loader, koobs Approved by: lwhsu (ports), koobs (ports) MFH: No (Port does not exist in quarterly) Differential_Revision: D28572
Details
- portlint: OK (looks fine.)
- testport: OK (poudriere: <freebsd <versions>, <archs>, <OPTIONS> tested)
- maketest: OK (XXX of YYY PASS)
Ran a "make stage" with the tarball in /usr/ports/distfiles deleted.
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Since there is already nfs-over-tls package available on pkg.freebsd.org, I suggest we at least to bump the PORTREVISION in Makefile. And I suggest still bump the version of the distfile for mitigating the mirroring issues.
Please feel free to commit with my approval for ports.
sysutils/nfs-over-tls/Makefile | ||
---|---|---|
20 ↗ | (On Diff #83688) | BTW, I feel IGNORE might be more suitable. From ports/Mk/bsd.port.mk: # IGNORE - Package build should be skipped entirely (e.g. # because of serious unfixable problems in the build, # because it cannot be manually fetched, etc). Error # logs will not appear on pointyhat, so this should be # used sparingly. # BROKEN - Port is believed to be broken. Package builds can # still be attempted using TRYBROKEN to test this # assumption. |
poudriere[0] runs as user nobody by default, and
it failed to run install(1) with "-o root -g wheel".
[0]: https://docs.freebsd.org/en/books/porters-handbook/testing-poudriere.html
=========================================================================== =======================<phase: run-depends >============================ =========================================================================== =======================<phase: stage >============================ ===> Staging for nfs-over-tls-1.1 ===> Generating temporary packing list install -s -m 0555 -o root -g wheel rpc.tlsclntd rpc.tlsservd /wrkdirs/usr/ports/sysutils/nfs-over-tls/work/stage/usr/local/sbin install: /wrkdirs/usr/ports/sysutils/nfs-over-tls/work/stage/usr/local/sbin/rpc.tlsclntd: chown/chgrp: Operation not permitted *** Error code 71 Stop. make[1]: stopped in /wrkdirs/usr/ports/sysutils/nfs-over-tls/work/nfs-over-tls-1.1 *** Error code 1
There's no need to run install(8) with "-o root -g wheel" in the Makefile,
pkg-create(8) sets the default ownership to root:wheel while creating the package,
(even running as a regular user):
https://github.com/freebsd/pkg/blob/release-1.16/libpkg/pkg_ports.c#L1323
1323 p->uname = xstrdup("root"); 1324 p->gname = xstrdup("wheel");
File ownership and permission could be set in pkg-plist.
pkg-create(8):
@mode mode Set default permission for all subsequently extracted files to mode. Format is the same as that used by the chmod command. Use without an arg to set back to default (mode of the file while being packed) permissions. @owner user Set default ownership for all subsequent files to user. Use without an arg to set back to default (root) ownership. @group group Set default group ownership for all subsequent files to group. Use without an arg to set back to default (wheel) group ownership.
Revert the last change and take setting root/wheel out
of the port's Makefile, as requested by loader.
The port now builds (but does not install, of course)
when done as non-root.
This seems ok to me, since the install obviously
needs to be done by root.
Change looks good.
Review/Commit improvements:
- Format reviews as you would a good commit log message:
category/portname: <verb> short summary Background and rationale for changes (if not self explanatory) All: Relevant: Properties: MFH: <branch|No> (<reason>)
Since this port isnt in quarterly (yet):
MFH: No (does not existing in 2020Q1)
I'll update this review shortly as an example.
- For TEST PLAN section:
* portlint: OK (looks fine.) * testport: OK (poudriere: <freebsd <versions>, <archs>, <OPTIONS> tested) * maketest: OK (XXX of YYY PASS)
You'll want to install poudriere. It covers the full packaging workflow and will pickup issues that subset manual commands wont
I'm totally confused, where are those things come from?
I can't find them in https://docs.freebsd.org/en/articles/committers-guide/#commit-log-message or
https://docs.freebsd.org/en/books/porters-handbook/
This has been done by @loader so I believe just adding this in the log is sufficient:
Tested by: loader
Should be enough.