Page MenuHomeFreeBSD

ntp: Switch to upstream man pages
ClosedPublic

Authored by cy on Oct 28 2024, 8:15 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Jan 17, 12:47 PM
Unknown Object (File)
Thu, Jan 16, 10:51 PM
Unknown Object (File)
Dec 27 2024, 10:54 AM
Unknown Object (File)
Dec 27 2024, 10:15 AM
Unknown Object (File)
Dec 27 2024, 9:41 AM
Unknown Object (File)
Dec 27 2024, 2:12 AM
Unknown Object (File)
Dec 26 2024, 1:17 PM
Unknown Object (File)
Dec 26 2024, 11:18 AM

Details

Summary

The downstream (FreeBSD) ntp man pages are out of date. Switch to those
provided by ntp.org (nwtime.org).

PR: 104493

Test Plan

Built and running here.

However using ${.IMPSRC} ${.ALLSRC} failed to find the source files even though their path was included in .PATH. I'm open to ideas if there's a way to do this in a more elegant fashion.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

cy requested review of this revision.Oct 28 2024, 8:15 PM
cy created this revision.

There's probably a better way to do this than my patch.

I don't *really* know how to test this, but make -j30 universe completed without complaining with this patch applied. After installing it, it worked because now my ntpd(8) has an incorrect document title.

Thus we're not attempting to build the ntp manual from the .defs? Related, Graham Percival was working on that: https://bugs.ntp.org/show_bug.cgi?id=3947#c25

I don't understand why we don't need to remove the previously generated manuals from src/usr.sbin/ntp/doc/ for this to work?

If we can get to where cd usr.sbin/ntp/; make install will build and install the doc like cd src/foo; make install does in other parts of the tree, that would be awesome. Theres like 20 years of pending patches to these doc, but building it is hard.

Could you elaborate on why this patch doesn't modify usr.sbin/ntp/ ? Is it that since they're contributed files, they really belong in contrib/ anyway? (I have no objection if that's the motivation, but it would be nice to have that mentioned in the commit message.)

I have somewhere around 8 commits which resolve mdoc errors in the ntp man pages, which I sent uptsream [1]. An ntp maintainer contacted me by email to say that they were working on adding a git repo, to make it easier for multi-patch contributions. So as far as I'm aware, the plan is to 1) wait for ntp to have a git repo, 2) get those commits accepted, 3) wait for another ntp release, 4) update the freebsd copies of the ntp man pages. That's likely to take months, so there's no reason to hold back other improvements to FreeBSD's handling of the ntp man pages.

[1] https://bugs.ntp.org/show_bug.cgi?id=3947#c25

Could you elaborate on why this patch doesn't modify usr.sbin/ntp/ ? Is it that since they're contributed files, they really belong in contrib/ anyway? (I have no objection if that's the motivation, but it would be nice to have that mentioned in the commit message.)

It doesn't at the moment because the files in usr.sbin/ntp (FreeBSD private copies of mdoc files) will be removed.

I have somewhere around 8 commits which resolve mdoc errors in the ntp man pages, which I sent uptsream [1]. An ntp maintainer contacted me by email to say that they were working on adding a git repo, to make it easier for multi-patch contributions. So as far as I'm aware, the plan is to 1) wait for ntp to have a git repo, 2) get those commits accepted, 3) wait for another ntp release, 4) update the freebsd copies of the ntp man pages. That's likely to take months, so there's no reason to hold back other improvements to FreeBSD's handling of the ntp man pages.

Updates to ntp upstream man pages will show up in contrib/ntp. But, we don't use them. This addresses this quirk.

[1] https://bugs.ntp.org/show_bug.cgi?id=3947#c25

cy edited the summary of this revision. (Show Details)

Based on comments in this review there's some confusion because the independent privately maintained FreeBSD man pages remain. This latest upload removes those now. Only the man pages upstream supplies are removed. ntpdate.8, ntptime.8 and ntptrace.8 remain, because upstream has deprecated these utilities (which they've been promising to remove for the last ten years or more, and will be removed when upstream finally removes the utilities).

This is the way I should have built this from the start. Sadly I didn't put a . in front of SUFFIXES and that's why it didn't work.

This is what I wanted to commit in the first place.

That makes a lot more sense, thanks for the explanation!

This update to the patch correctly replaces the upstream volume name with the correct man page volume number.

This revision was not accepted when it landed; it landed in state Needs Review.Nov 12 2024, 3:28 AM
This revision was automatically updated to reflect the committed changes.