NUT-Monitor
===========

NUT-Monitor is a graphical application to access and manage UPSes connected to
a NUT (Network UPS Tools) server.

Dependencies
------------

This application (variants written in Python 2 + GTK2, and in Python 3 + Qt5)
uses the python-pynut class (available at http://www.lestat.st), delivered
as PyNUT in the NUT source tree.

Refer to your OS packaging and/or install custom modules with `pip` (or `pip3`)
to get required dependencies (GTK + GObject or Qt5).

Path to PyNUT module
--------------------

For quick tests (e.g. during development), you can run the clients like this:

----
:; PYTHONPATH=../module/ python2 ./NUT-Monitor-py2gtk2.in
----

or:

----
:; PYTHONPATH=../module/ python3 ./NUT-Monitor-py3qt5.in
----

Localization
------------

For localized UI, also `export LANG=fr_FR.UTF-8` or `export LANG=ru_RU.UTF-8`
(see and feel welcome to improve the choice of languages in `locale` directory).

NOTE: Currently localization only works for Python 2 client, PRs are welcome.

Desktop menu integration
------------------------

This component ships both implementation-specific `nut-monitor-py2gtk2.desktop`
and `nut-monitor-py3qt5.desktop` files which allows a user to have icons for
both variants separately, as well as the legacy-named `nut-monitor.desktop`
for running the wrapper script `NUT-Monitor` which picks an implementation best
suited for current run-time circumstances.

Screenshots
-----------

image::screenshots/nut-monitor-1.png[Example of device status overview]

image::screenshots/nut-monitor-2.png[Example report of device variables]

image::screenshots/nut-monitor-3.png[Example modification of a writable variable]

Kudos
-----

NUT-Monitor and PyNUT (for Python 2 syntax) were originally authored
by David Goncalves <david@lestat.st>

NUT-Monitor was converted to Python 3 + Qt5 by Luke Dashjr

PyNUT was extended, and two variants of NUT-Monitor converged and wrapped
for Python 2+3 dual support by Jim Klimov
