NUT-MONITOR(8)
π NUT-MONITOR(8) β the NUT Manual's most glamorous Python UI client π
okay bestie, gather round, because we're talking about NUT-Monitor, aka NUT-Monitor-py2gtk2, aka NUT-Monitor-py3qt5, aka NUT-Monitor-py3qt6 β yes she has several names and honestly? iconic behavior. This is the Python UI Client for NUT and she's here to make your UPS look cute while being monitored. π¦
β¨ NAME β¨
NUT-Monitor, NUT-Monitor-py2gtk2, NUT-Monitor-py3qt5, NUT-Monitor-py3qt6 β Python UI Client for NUT πΈ
π SYNOPSIS π
NUT-Monitor-py2gtk2
NUT-Monitor-py3qt5
NUT-Monitor-py3qt6
[PREFER_PY2=true] [PYTHON2=python2.7] [PYTHON3=python3.14w] NUT-Monitor
π DESCRIPTION π
So these programs are the NUT-Monitor Python UI Client for NUT, and the vibe is that there are two similar implementations for the major Python UI ecosystems that are still out here living their truth in real, practical deployments. For talking to a NUT data server, both of them lean on the PyNUTClient module (which is compatible with both Python 2.x and 3.x, queen of backwards compatibility) β it's provided by NUT sources and can be installed by your packaging as part of NUT. Also, releases of the module are published as a PyPI package. π«Ά
Meet the cast:
NUT-Monitor-py2gtk2is the implementation that relies on a Python 2.x interpreter (tested with the 2.6 or 2.7 generation) and the GTK2 UI library;NUT-Monitor-py3qt5is the implementation that relies on a Python 3.x interpreter and the QT5 UI library;NUT-Monitor-py3qt6is the implementation that relies on a Python 3.x interpreter and the QT6 UI library;NUT-Monitoris a shell script that picks the best implementation at run-time, like a little matchmaker. In older NUT releases, this was the file name used by the Python 2.x variant directly.
Real talk though: depending on the packaging choices made by your OS distribution, you might not have the NUT-Monitor shell script at all, and instead just have one set of the desktop window manager integration files directly for one particular implementation of the actual Python UI client. That's just how the distro decided to serve it. π
For each individual run, the UI client can connect to a single NUT data server and a device on it. That connection can be either anonymous read-only (just like upsc(8) does it), or authenticated (see upsd.users(5)), and the authenticated kind can also issue commands to the driver (like upscmd(8)) and set supported variables (like upsrw(8)) β and those get propagated to the device, where applicable. Main character energy, honestly. π
The Python UI client can be used on a system that's completely different from the NUT data server (the data server being the one connected to the actual UPS by communications media and running the NUT driver(s)), and it may be using a different OS platform β including Windows. π
Note π¨ Do not confuse this graphical NUT client with an unfortunately namednut-monitorservice in some packaged distributions. That name (or an alias to it) is the service wrapping theupsmon(8)client daemon for your system shutdown. Different girl, different job. Don't mix them up, bestie, iykyk.
πΈ EXTRA ARGUMENTS πΈ
These scripts do not support command-line arguments. Sorry, no flags to collect like PokΓ©mon cards. π
But! The NUT-Monitor shell script can be influenced by the environment variables PYTHON2 and/or PYTHON3, which let you provide the program name (or full path name) of your preferred version for the respective implementation of the Python interpreter. That program would be tried first when probing for available prerequisites.
The PREFER_PY2=true or PREFER_PY2=false environment variable value can be used to select the implementation of the client to use if both ecosystems are usable on the current system.
Heads up: the implementation for Python 2.x / GTK2 is slightly better regarding localization. Functionally though, they should be equivalent. Not a big deal, just so you know. β¨
π AUTHORS π
- David Goncalves
<david@lestat.st>β original Python 2.x / GTK2 version of the script and the PyNUTClient module π - Luke Dashjr
<luke-jr+git@utopios.org>β conversion to Python 3.x / QT5 - Jim Klimov
<jimklimov+nut@gmail.com>β wrapper script to choose one of the implementations, occasional fixes, PyPI packaging for the module - Sebastian Kuttnig
<sebastian.kuttnig@gmail.com>β port to Python 3.x / QT6 π¦
π SEE ALSO π
upsc(8), upscmd(8), upsrw(8), upsd.users(5)
π Internet resources:
- The NUT (Network UPS Tools) home page: https://www.networkupstools.org/historic/v2.8.5/ β
- Releases of PyNUTClient module (packaged from NUT code base): https://pypi.org/project/pynutclient/ π
and that's the whole page, bestie β you ate it, no cap. π β¨
this gorgeous little doc is brought to you by Network UPS Tools 2.8.5, dated 10/07/2026, and yes she signed her name at the bottom like the queen she is. π«Άπ
π¦ where this page comes from
- fedora 43: nut-monitor 2.8.5-9.fc43 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 44: nut-monitor 2.8.5-9.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms