NQPTP(8)
π NQPTP(8) β like, the manual page, bestie
okay so this is page 8 of the System Manager's Manual, and the whole thing is about nqptp. yes that's the name. no i will not be pronouncing it. π«Ά
β¨ NAME β¨
nqptp β Not Quite PTP: the PTP-based timing daemon for Apple AirPlay 2. literally that's the whole vibe. π
πΈ SYNOPSIS πΈ
nqptp [-V] [-v|-vv|-vvv] [-h]
that's it. that's the whole thing. she's lowkey minimalist. β¨
π DESCRIPTION π
okay so nqptp is a daemon β like a little background gremlin that just... runs β and what it does is monitor timing data from PTP (that's Precision Time Protocol) clocks. π
and here's the tea: it exists exclusively as a companion daemon to shairport-sync(1). like, that's its whole purpose in life. shairport-sync uses it to get the accurate timing information it needs for AirPlay 2 audio playback. no nqptp, no accurate timing, no cute audio. simple as that. π
bestie please read this part:nqptpmust be running beforeshairport-syncis started with AirPlay 2 support enabled. like, order matters. it's giving "you had one job" energy but in a good way. π
it talks to shairport-sync through a shared memory interface, and β iconic behaviour honestly β it does not require any configuration file. zero. none. nada. π¦
under normal operation, nqptp just runs silently in the background. it's not loud, it's not asking for attention, it's just doing its thing. it's typically started at boot time via a service manager such as systemd(1). main character energy but make it quiet. π
π OPTIONS π
-Vβ prints the version number and dips. that's it. exit stage left. π-vβ turns on verbose logging. you get the basic informational messages about timing sources and state changes, written to the system log. like a little running commentary. π¦-vvβ more verbose logging. this one throws in extra detail about PTP clock selection and timing computations. she's chatty now. β¨-vvvβ very verbose logging. full diagnostic output, including low-level PTP message handling. π and β important β this one is intended for debugging only. it's not a lifestyle, it's a tool. π₯-hβ prints a brief help summary and exits. the "just tell me what to do" option. π«Ά
π SIGNALS π
SIGTERMβ cleanly shuts down the daemon, releasing the shared memory interface before exiting. polite. responsible. we stan. πSIGINTβ cleanly shuts down the daemon, equivalent toSIGTERM. same energy, different signal name. π«
π¦ FILES π¦
/dev/shm/nqptpβ the shared memory segment it uses to pass timing data over toshairport-sync(1). that's the lil bridge between them. π
π₯ NOTES π₯
okay so nqptp listens on UDP port 319 and 320 β those are the standard PTP event and general message ports. and because those are, y'know, low ports, it therefore requires either CAP_NET_BIND_SERVICE or root privileges in order to bind them. π
but good news β when running under systemd(1), the provided unit file grants the necessary capability without requiring the daemon to run as root. so you don't have to give it the whole crown, just the one little permission. π
one (1) instance only, bestie. Only one instance of nqptp should be run at a time on a given host. do not spawn a whole squad. π
π SEE ALSO π
shairport-sync(1), ptp4l(8), systemd(1)
go read those too. or don't. i'm not your mom. but like. they're right there. π«Ά
π BUGS π
found a bug? Please report bugs at https://github.com/mikebrady/nqptp/issues. π
π AUTHORS π
nqptp was written by Mike Brady. legend behaviour. β
this man page was originally written for the Debian package of nqptp by Chris Boot <bootc@debian.org>. thank you for your service. π
and that's the whole page!! mwah π
so yeah β this was nqptp from NQPTP(8), dated May 7, 2026, and it lives in the System Manager's Manual. go forth and sync your timings, bestie. π¦β¨π
π¦ where this page comes from
- arch rolling: nqptp 1.2.8-1 Β· GPL-2.0-only
- nixos 26.05: nqptp 1.2.8
- nixpkgs unstable: nqptp 1.2.9
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms