Desc: Using upsmon to make On Screen Display (OSD) notification File: osd-notify.txt Date: 12 April 2003 Auth: Arnaud Quette This document presents how to display NUT notification using an On Screen Display (OSD) system. It is a complement to Russell Kroll's pager.txt, which can be found on NUT website, or in NUT source tree. Have a look at this document before reading more. Pre requisites -------------- You must have a running NUT installation (driver, upsd and upsmon). Refer, if necessary, to NUT documentation for installing and configuring those. You also need X OSD to be installed. You can either: - get it on: http://www.ignavus.net/software.html - Debian: apt-get install xosd-bin - Mandrake: urpmi xosd - Others RPM based: get and install xosd (for example, from http://rpmfind.net/linux/rpm2html/search.php) Creating osd-notify shell script -------------------------------- X OSD provides a really nice program, called osd_cat. For more information on osd_cat, look at its manpage. For convenience, I've written a small script called osd-notify which should be available with the present file. You can adjust osd-notify settings to match your needs. In particular, you must put a valid font in "FONT". Use xfontsel to find one. Configuring upsmon to use osd-notify ------------------------------------ 1) You need to set EXEC flags on the event you want to be osd-displayed in upsmon.conf. For example NOTIFYFLAG ONBATT EXEC NOTIFYFLAG ONLINE EXEC You can of course set other actions, like WALL or SYSLOG, and other events. Look at upsmon.conf manual page. 2) Copy osd-notify somewhere on your system (/usr/local/bin or whatever). 3) Test osd-notify script by calling: $> osd-notify NUT 4) Tell upsmon where your script is NOTIFYCMD /path/to/osd-notify Show time --------- You need to adjust X11 access right to allow upsmon's user to display OSD notification on your screen. This is done with, from within a xterm, by using: $> xhost +local:nutmon Don't forget to adjust upsmon's user name according to your system settings. This must match the value of the "RUN_AS_USER" field in upsmon.conf Now, restart upsmon, pull the plug, and see what happens... For screenshots, have a look at X OSD website: http://www.ignavus.net/software.html Conclusion ---------- What great things we can do with a small nut ;-) Feel free to send me your comments and enhancements.