apcupsd is mainly developed under Linux and will compile cleanly and work under most flavors of Unix as well as many other operating systems including Windows.
What to do if you find bugs :
send an email to apcupsd-devel at lists.sourceforge.net (Developers mailing list) or visit one of the following sites:
http://www.apcupsd.com http://sourceforge.net/projects/apcupsdPlease be sure to include the version of apcupsd you are running, your operating system, and a detailed description of your problem.
Change Log
- Lots of updates to the document. - Fixed a slave crash in master/slave mode. It was a missing setup_device, and was diagnosed and reported by Christian Schacht -- many thanks. - Made non-existent header files non-fatal and added #ifdef around sys/socket.h so it will compile on IRIX. - Add Scott's latest apcupsd.conf with the hid-ups program code (actually I had done this some time ago ...). - Start a ReleaseNotes file - Fixed a typo error (mine) that prevented Scott from building rpms. Strange, it worked for me???? - More DESTDIR cleanup for building non-root rpms. - Add DESTDIR everywhere so we can build rpms non-root - Additional documentation - Add Scott's new apcupsd.spec - On Hilary Jones suggestion, I fixed the ./configure message that is printed when no libgd is found to direct the user to the main source. - Add Sergey Vlasov's kernel patch to the examples directory, and it replaces the previous patch. This patch now solves the killpower problem on Linux USB./examples/linux-2.4.20-alt-apc_usb_ups.patch notes are in: linux-usb-patch-email.txt - Add TTY mode to apctest to communicated directly with UPS. - Apply patch to linux-usb.c in killpower supplied by Sergey Vlasov (thanks!). - Eliminate pow() function in linux-usb.c so that -lm is not needed. - Add automatic detection of socklen_t - I received a kernel patch from Sergey Vlasov that fixes the killpower problem on CS UPSes. apcupsd can now shutdown these devices! I've removed some debug code that was in the killpower routine and is not needed or used. I have put the kernel patch in: /examples/linux-2.4.20-alt-hidups.patch - When the Win32 version starts as a service, delete the NOLOGIN and PWRFAIL files to prevent later confusion. Thanks to Allen Crawford for pointing this out. - Modify all Win32 program so that only windowed programs (apcupsd, popup) have the -mwindows flags. The others do not. - Tweak apctest.c a bit -- add EEPROM programming (still a bit kludgy), but at least it can be done. - Lots of clean ups for Cygwin stuff. Events now work, and exit. - Clean up a few undefined symbols in building with everything on. - Eliminate pid and serial port lock file on Win32 systems. - Modify init script to use daemon so that STDIN/OUT, ... are detached from the terminal and pointed to the log file. This prevents remotely logged in users who start apcupsd from being unable to log out. - Made some mindor modifications to configure.in and aclocal.m4 to make consistent use of double quotes in test statements in response to problems with make install reported by Andrew Surratt. - Thanks to Richard Schwaninger for finding and submitting a patch to the tcp-wrappers code that prevented it from working because of an invalid name. Fixed. - Thanks to Andrew Reid for pointing out that the child reaping code should be clearing the pid slot if a -1 is returned. The pid table was filling up on his system due to killed children. Fixed - A bug report against the Mandrake version of apcupsd indicates that apcupsd is not releasing /dev/console. I've moved the close() of STDIN so that it is always executed to prevent this possibility. - Implement very crude first cut of EEPROM programming in apctest. Set battery date, set UPS name, and print EEPROM values should work.