NSPATCH(1)
π NSPATCH β the group chat manual page π
okay so bestie, welcome to nspatch (that's the NSPATCH(1) page, and yes it's a User Contributed Perl thing, we love that for it). sit down, grab a strawberry π, and let me tell you about the little utility that runs nsdiff | nsupdate for you and actually handles the errors like a responsible main character.
β¨ NAME β¨
nspatch β run nsdiff | nsupdate with error handling π«Ά
πΈ SYNOPSIS πΈ
nspatch [-hVv] [-r count]
-- [nsdiff options] -- [nsupdate options]
like. that's it. that's the whole vibe. π
π¦ DESCRIPTION π¦
so the nspatch utility runs "nsdiff | nsupdate" and β this is the important part β it checks that both programs complete successfully. both of them. no slacking. π
it suppresses their output unless there is an error, in a manner suitable for running from cron. which, yes, is giving "quiet kid in the back of the class who is secretly the smartest one here." no cap.
the nsupdate script produced by nsdiff includes a prerequisite check to detect and fail if there is a concurrent update. and these failures? they get detected by nspatch, which then retries the update. iconic behaviour fr fr. π₯
rather than using a pipe, nspatch uses temporary files to store the output of nsdiff and nsupdate. yes bestie, files. not a pipe. it said "i do my own thing." π
π OPTIONS π
-hβ Display this documentation. the classic "help me help you" move. π-Vβ Display version information. she's telling you who she is. πββοΈ-rcount β If the update fails because of a concurrent update,nspatchwill retry up to count times. The default retry count is2. so like, she'll try again, but she's not gonna try forever. boundaries. β-vβ Turn on verbose mode, so the output fromnsdiffandnsupdateis printed even if they are successful. (By default it is suppressed.) the way that silence is the default and talking is opt-inβ¦ highkey relatable. π
the verbose option is passed on to nsdiff. If nspatch is not given the -v option, it passes the -v '' option to nsdiff. If nspatch is given the -v option, it passes the -v 'qr' option to nsdiff. (yes those quotes are real and yes you need them, don't come for me. π)
π EXIT STATUS π
the nspatch utility returns 0 if no change is required or if the update is successful, or 1 if there is an error.
zero means "we ate, nothing to do, or we did it." one means "bestie something went wrong." that's the whole spectrum. π
π§ ENVIRONMENT π§
TMPDIRβ Location for temporary files. that's where the temp files live. that's their home. respect it. π
π VERSION π
this is nspatch-1.85 <https://dotat.at/prog/nsdiff/>
written by Tony Finch <fanf2@cam.ac.uk> <dot@dotat.at> at Cambridge University Information Services. you may do anything with this. it has no warranty. β
π₯ SEE ALSO π₯
nsdiff(1), nsupdate(1), cron(8)
and that's the page, bestie. go forth and update your DNS zones responsibly. no cap. π
okay final sign-off: this was the NSPATCH(1) page from perl v5.42.0, dated 2025-07-24. slay. πβ¨π
π¦ where this page comes from
- fedora 43: nsdiff 1.85-3.fc43 Β· 0BSD OR MIT-0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms