PROJECT ARCHIVED AND NO LONGER MAINTAINED
Statusbar information script with configurable update intervals for each block of information. Designed for window managers using a separate bar such as LemonBoy's bar, Moetune's some_sorta_bar (TODO), or dzen (TODO). Information is generated and piped to the bar input. A configuration file is included, and plugins can easily be added if desired. Plugins (so far) include:
- Monsterwm desktop status display
- Date/time
- Load average
- New mail notifier for maildir(s) + weather display
- Disk usage warnings
- Battery status display
- Network up/down state and upload/download speed + OpenVPN status
- Music player status: MPD/Mopidy and Pianobar
- Current Watson project
Idea and code based heavily on py3status. Much thanks to kaskak, as I studied his code intensely before I started. I had no prior experience with threading/queue/fifo before starting this project!
Scott Hansen <firecat4153@gmail.com>
- Python 3.x
- Use less CPU cycles for infrequently needed information updates
- Configurable for different statusbars (bar, some_sorta_bar, etc.)
- Easily add new plugins (see plugin_skel.py in the plugins directory).
- Includes a python monsterstart.py script to start monsterwm and pipe its desktop output to a FIFO for reading by py-multistatus.
- Python 3+
- psutil
- An installed statusbar (bar, some_sorta_bar, etc.)
- Archlinux AUR (TODO)
# python setup.py install
OR$ python setup.py install --user
ORpip install py_multistatus
(TODO)
- MIT
- Copy configuration file status.cfg from /usr/share/py-multistatus to ~/.config/py-multistatus and edit. Make sure the bar executable and all the formatting symbols are correct for the bar you are using.
- Ensure mail accounts and directories are correct. If you want the weather displayed while there are no mail notifications, create a text file ~/.weather with the weather add there however you like. The top line of the file will be displayed.
- Add
multistatus &
to ~/.xinitrc before theexec <windowmanager
line (or before/path/to/monsterstart.py
) - The bar is automatically started by
multistatus
- If using monsterstart.py, copy it someplace into your $PATH. It starts
multistatus
so use it in .xinitrc instead.
- Some stlarch font icons (higher numbers) cause problems with the display with 'bar'
- Network speed indicator occasionally crashes when switching networks.
- If the statusbar is killed and restarted manually, the monsterwm desktop info doesn't always immediately appear.
- Test/add support for other bars beside LemonBoy's bar.
- Add logging/error detection for threads. Possibly auto-restart crashed threads
- Add option to periodically update the weather? (clickable bars only)
- Volume indication. Maybe volume controls? (clickable bars only)
- Possible inotify support for file-based information?
- Investigate using concurrent.futures in place of threads/queues.