Stuff planned for future releases... (in no particular order) Feel free to help out with any of this stuff! :) Please send a message to the mailing list if you have any question. Things for the short term: - The menu_goto command: A given menu should come up (if the menu accepts that). - Rotation and priorities - Have server also use Left and Right key - Entire server menu working properly - Fix rendering of subframes - Fix rendering anyway ;) - (?) Use centralized command message parsing engine (more secure) Things for the longer term: ---------------------------------------- Client driver An LCDproc client can connect, request the "client" driver, then get all screen information sent to it! This allows things such as logging in remotely and starting up a curses display of LCDproc. It also gives another method for writing drivers. In a sense, it could even let you write and link in new drivers without having to recompile and restart LCDproc... Another bonus is that LCDproc will come with a client which can, for example, start up a "client" driver to send "keypresses" from the command line. Or, lcdtool -key A would have the same result as pressing a key on the keypad. STATUS: Loadable drivers are working in 0.5 but not loggin in remotely nor key ---------------------------------------- Port the lcdproc client screens to *BSD. Thomas Runge ported the 4.0-pre9 client to *BSD but we forgot to merge it in the CVS tree back them. The patch is available at: http://core.de/~coto/misc/lcdproc_bsd.diff.gz A backup copy is available at: http://lcdproc.sf.net/lcdproc_bsd.diff.gz The main problem in applying this patch is to make it work with autoconf/automake. I estimate the time to do this to between 1 and 4 hours per screen. The person applying to port should have access to at least one BSD account (sourceforge compile farm provide a BSD box, ask the mailing list if you don't know how to access it). The port should be tested on FreeBSD, OpenBSD and NetBSD before applying it to the CVS tree. Just ask the mailing list for testing. STATUS: chrono.c, cpu.c, disk.c have been ported. ---------------------------------------- Add LibGTop support to the lcdproc client LibGTop is a library that fetches information about the running system such as cpu, memory usage and active processes, and make it available to the requesting program. Adding LibGTop support to the lcdproc client would enable it to work on more platforms, including MacOS X. LibGTop is available at: http://ftp.gnome.org/pub/GNOME/stable/sources/libgtop/ STATUS: No work done yet. ---------------------------------------- Menus / Client menus LCDproc will have a "menu" mode, where various options can be configured. You can rearrange the screenlist, change the contrast, add/remove drivers, change screen priorities, kick off clients, etc... You can also access client menus to configure options in each client. STATUS: This is currently being worked on. Client supplied menus work. Check 0.5 to see it. ---------------------------------------- Config Files... LCDproc will use a config file for its parameters, like other programs; instead of relying upon long command lines. Keypresses, drivers, and other things will be configurable here. Also, LCDproc will have the ability to load/modify/save config files via its menu interface, so you don't have to edit it by hand. Info about particular clients/screens will also be stored in the LCDproc config file, so you can (for example) save your preferences about screen priorities, etc... Code will be made generic, so that other programs can use it for their own config files. Clients may want to use this.. STATUS: We have a config file only for LCDd but we don't save config. ---------------------------------------- Scheduling modes Instead of the simplistic "round robin" circular screen-scheduling in the current release, later versions will offer several different algorithms for screen-ordering. One example: High-priority screens will be shown more often than low-priority screens, simply by showing up more often. STATUS: Currently high priority screens will only be shown _first_ after a resorting of the screenlist. The time that it's visible is unaltered. ---------------------------------------- Shell Commands The server will also be able to run arbitrary shell commands from the config file. This will allow you to, for example, shut down the machine, get online, or other system tasks. STATUS: These commands can now be run by the lcdexec client. ---------------------------------------- Improved display driver API The desirable aspects of what a driver should do has changed somewhat since I first read the LCD manual. The driver spec is based largely on the functions MtxOrb's LCDs provide easily, but it is not well-suited to other types of display. So, I'll be working on a new driver spec which is more flexible and more powerful. In addition, I'm looking for ways to better handle multiple driver devices. STATUS: This is API and version 0.5 ----------------------------------------