Version 0.29.5 (February, 2019)
- Honour command line flags when starting xmobar without any configuration file (issue #375).
alsactlif it quits, e.g. because of a sleep/awake cycle (issue #376).
Weatherusing the new HTTPS URL, which requires http-conduit as a dependency (issue #378).
Version 0.29.4 (December, 2018)
Upgrade to alsa-mixer 0.3.0. See issues #372 and #373.
Version 0.29.3 (December, 2018)
- Upper bound for alsa_mixer (see issue #372)
Version 0.29.2 (December, 2018)
- Work as usual with .xmobarrc (see issue #371).
Version 0.29.1 (December, 2018)
- Honour command line flags (fixes issue #370).
- Expose Cmd and CmdX in Xmobar interface.
Version 0.29 (December, 2018)
Alsamonitor for volume display that doesn't use polling, by Daniel Schüssler.
ThermalZoneretries reading missing files, thanks to Reed Koser.
TopProcignores kernel threads (see also issue #369).
Wirelesssimple autodetection of wirless interface name (if set to "").
- Experimental support for using xmobar as a library, so that configurations are in fact Haskell programs a la Xmonad (beta stage, with help from Pavan Rikhi). Traditional config files are still (and will continue to be) supported.
- Correctly parsing configuration options
Version 0.28.1 (October, 2018)
Dependencies updated to work with GHC 8.6, avoiding issue #354.
Version 0.28 (August, 2018)
ComX, which runs a command with custom exit error message.
- hinotify version upgraded (issue #356)
Version 0.27 (July, 2018)
- Dropped support for GHC 7.x. See issue #352.
- New configuration option,
textOffsetsto specify separate vertical offsets for each of the fonts in
additionalFonts. See issue #311.
- Use the maximum width options
-Ecorrectly when a monitor subtemplate contains font and color tags.
Version 0.26 (April, 2018)
- New options to specify the ellipsis string for fields (
-e) and total width (
-E), thanks to Olivier Schneider.
MultiCpu: New option to specify fallback icon paths (
--fallback-icon-pattern), thanks to Reed Koser.
-d(number of digits) if no suffix is given (cf. issue #335).
- Race condition in network monitor fixed (issue #347).
- Limiting dbus supported version (see issue #346).
Version 0.25 (February, 2018)
- The X11 properties
WM_CLASSfor xmobar windows can be setup in either the configuration file (
wmClass) or using the new flags
-w(see issue #323).
- New flag
with_weather, to build sans
- Honouring -x in MPris monitor (issue #325)
Version 0.24.5 (May, 2017)
- Fix for vertical bars (issue #303)
Version 0.24.4 (April, 2017)
- Whe have now an active Travis CI setup.
- Reduce wakeups rate via rtsopts V0 (with new flag with_rtsopts to disable it) (see issue #89).
- Fix Net monitor for lage uptimes and bytecounts (Tomas Janoušek).
- Fix MultiCpu monitor for large uptimes (Zev Weiss).
- Fix compilation when XMP is disabled (Sergi Trofimovich).
- Better fatal error messages (Michael Bishop).
- More paths to read from in CoreTemp (see issue #291).
Version 0.24.3 (Sep 5, 2016)
- Battery monitor: fixes for cases where status is not consistently reported by the kernel (see issue #271).
Version 0.24.2 (Aug 8, 2016)
- New Weather plugin URL (see issue #270).
Version 0.24.1 (Jul 28, 2016)
- Restoring compatibility with GHC 7.6, (see issue #269).
Version 0.24 (Jul 26, 2016)
- Use the new compilation flag
with_conduitto compile an implemetation of the
Weatherplugin that will work behind proxies, by Dragos Boca.
- New command line argument (
-p) to specify xmobar's position, by Valentin Shirokov.
- Wind speed in Km/h and m/s for the
Weatherplugin, by Michael Knabe.
UVMeter, a new optional plugin showing UV data for Australian users, by Roman Joost.
- New template parameter
MPDplugin (by Bruno Heridet)
- New monitor argument
-Tto specify the maximum total width of the monitor text.
- New $VAR parameter syntax for using env vars in pipe monitors, by Will Song (see issue #268).
Volumeplugin now supports capture devices (Antoine Eiche).
MPDplugin will now automatically update on options changes (Ben Boeckel).
Batteryplugin does now a better job at tracking AC status and times (see issue #231).
PipeReaderwas polling too often (thanks to zlbruce).
MPrismonitor now honours field width and padding optons (-M, -w, etc.).
Batt: sensible thresholds for high/low power consumption (see issue #265).
Version 0.23.1 (Apr 14, 2015)
- Vertical alignment for icons, issue #216
- Improvements to vertical text alignment, with many thanks to Jan Palus (see ongoing discussion in issue #221).
- Better error handling in
Volumemonitor, issue #215
- Compilation with ghc 7.8 and 7.10 (thanks to Edward Tjörnhammar, see issue #225).
Version 0.23 (Mar 8, 2015)
- Xmobar can now use a (semi)transparent background: set it with the
new configuration option
alpha(thanks to Edward Z. Yang, see issue #114).
- Multiple fonts available by means of the new configuration
additionalFontsand the template markers
<fn=1>...</fn>, by Markus Scherer.
- New variables in
Memmonitor for available memory as reported by Linux 3.14 and newer, by Samuli Thomasson.
- New configuration parameters
iconOffset(see discussion in issue #171 and issue #201).
- New template variable
MPDmonitor, by Duncan Burke.
- We honour the
-S(show suffix) monitor flag in
Weatherparsing of wind direction, by Dino Morelli (see pull #212).
Version 0.22.1 (Oct 11, 2014)
- Fix compilation in systems that don't need mtl newer than the one shipped with GHC.
Version 0.22 (Oct 9, 2014)
MarqueePipeReaderplugin by Reto Hablützel.
Networkmonitor has now adaptive units (
-Sis used now to switch them on), by Axel Angel.
dewPoint, and the new
windKnotsvariables, by Tony Morris.
- Strings in the configuration file can now span multiple lines using Haskell-style multiline script, thanks to dunric
- Icons can now be also xpm files (if xmobar is compiled with
with_xpm), thanks to Alexander Shabalin.
borderWidthoption to set xmobar's boder width, thanks to Travis Staton.
- Support for multiple Xft fonts, thanks to Phil Xiaojun Hu and Cedric staub (see pull request #196).
- Icon patterns for several monitors, that allow you to specify a collection of icons to use for successive integer variable values, thanks to Alexander Shabalin (see pull request #192 and the documentation for details).
- Upgrade to libmpd 0.9.
- Much more efficient implementation of the
Locksplugin, thanks to Anton Vorontsov (see pull request #195).
- Not colorizing total disk size in
- Avoiding zombies on click actions, thanks to Phil Xiaojun Hu (issue #181).
Version 0.21 (Jul 1, 2014)
- Vertical bar indicators using unicode available for most monitors, by Eric Mrak.
CoreTemp: support for linux 3.15, by Tomáš Janoušek.
CatIntmonitor, displaying integer values read from a file, by Nathaniel Wesley Filardo.
<raw>tag for safer input parsing, also by Nathaniel.
UnsafeXMonadLogmonitor (by Eric Mrak) and their xproperty counterparts,
Networknow reports status for ppp connections (see issue #89).
- Fix for very long running
Cpumonitors, by Robert J Macomber.
Version 0.20.1 (March 13, 2014)
- Back to picking by default the first available screen, with a new
pickBroadest, for choosing the broadest (see issue #158).
Version 0.20 (March 10, 2014)
- Mouse actions now support multiple buttons, by Marcin Mikołajczyk.
- Non supported monitors are ignored in configuration files (see issue #139), by Adam Vogt.
Diskmonitor now ignores non-existent devices (Reto Hablützel).
Weatheris now non-blocking and doesn't use curl (Ben Boeckel).
- Fix for
Memorymonitor in 3.14 kernels (Ben Boeckel).
- Fix for infinite loops in
AutoMPD(issue #76, issue #111).
- More robust AC readings in
- Fix for
Topmonitor's readings for processes whose name contains blanks.
- Fixes for geometry computation on multihead (Dmitry Malikov).
- Fixes for missing XDG configuration (Thiago Negri and James McCoy, see issue #133).
- Compatibility with latest
Version 0.19 (October 27, 2013)
As of this release, the old bug tracker at Google code is deprecated. Please use Github's tracker for new bugs.
- New monitor
BatteryN, a variant of
BatteryPthat lets you specify the name of the monitor in the template.
- Support for configuration file living in
XDG_CONFIG_HOME(see github #99).
runInteractiveProcessinstead of spawning a shell (David McLean). If you're using shell expansion in your
Com(e.g. "~/bin/script") here's a workaround:
Run Com "/bin/bash" ["-c", "~/bin/script"](cf. github #127).
- New plugin
UnsafeStdinReaderthat allows actions from stdin. Now it's possible to have clickable workspaces! (Thiago Negri, see github #125).
- New monitor configuration option (
--nastring) that allows specifying what string to display when a monitor is not available (defaulting to "N/A"). Cf. github #119.
- Using the width options
-Min battery monitors watts display (github #118).
- Using the
- Fix for systems not supporting PCRE regular expressions: we use now BCEs, so regex-compat should be enough everywhere (see github #117).
- Weather monitor: support for stations without name (Sergei Trofimovich, issue #65).
Version 0.18 (June 5, 2013)
New battery monitor extra argument,
-i, for the idle status.
- Safer standard input parsing, avoiding injections.
Version 0.17 (May 5, 2013)
- Icons support: it's now possible to insert bitmaps in the template (Edward O'Callaghan, Alexander Polakov and Tomáš Janoušek).
- Initial support for reacting to mouse clicks (Alexander Polakov).
BottomPalignments, taking left and right paddings (thanks to Dmitry Malikov).
<freeratio>field for memory monitor (Peter Simons).
overrideRedirectconfiguration options, providing dock behaviour in tiling WMs (when set to True and False respectively). Cf. discussion at github #105.
-d(start as a dock) option, may address github #67 in some window managers.
- Partial (as reports go) fix for github #77.
- Safer volume plugin (Dmitry Malikov).
- Battery percentage capped at 100% (RJ Regenold).
Version 0.16 (Dec 3, 2012)
- New monitor
AutoMPD, which uses asynchronous events to display MPD status (thanks to Ben Boeckel).
- New monitor
BufferedPipeReaderdisplaying data from multiple pipes (thanks to Jochen Keil).
- New monitor
DynNetwork, which detects the active interface automatically, by Reto Hablützel
- New monitor,
Locks, displaying the status of lock keys, by Patrick Chilton.
- Extension for DBUS signal handling (Jochen Keil)
- Hide/Reveal: one can send signals to xmobar and make it (un)hide itself (Jochen again).
PipeReader's default text is now configurable, by Reto Hablützel.
- Dependencies updated to latest mtl and libmpd (thanks to Sergei Trofimovich).
- Dependencies on the deprecated dbus-core removed in favour of dbus 0.10 (thanks to Jochen Keil).
- MPris2 now includes genre and composer among its fields.
DiskIOnow can report overall activity in all partitions of a device which is not mounted itself (e.g., sda when sda1, sda3, etc. are the mounted partitions). Thanks to John Soros. See github #73.
DiskU, the disk usage monitor, works again correctly on Linux, instead of randomly crashing every now and then, and reporting wrong used size.
- When using antialiased fonts, we were causing a memory leak in the X server by repeatedly allocating colors that, apparently, the server doesn't know how to get rid of (even when told so!). We're caching them now and X server memory doesn't grow.
- Compilation errors and warnings with GHC 7.6 removed (thanks to Raghavendra D Prabhu for his reports in github #71).
Some users have reported problems with xmobar compiled with GHC 7.6 in ArchLinux: see github #78 and pointers therein. Please, send reports of any problems or successes in that regard so that we can fix any remaining issues. Thanks!
Version 0.15 (June 4, 2012)
Battmonitor no longer uses
-cto specify the charge file: it should figure things out by itself (cf. issue 69).
- New command line option,
-C, that allows adding commands to those specified in the configuration file (Ben Boeckel).
- Dependency on GHC's threaded runtime has been eliminated.
- New MPRIS (versions 1 and 2) monitor, by Artem Tarasov.
- New monitor option
-dto specify the number of decimal places to display for float numbers. Defaults to 0. See issue 58.
- New compilation option
--with_threaded, to use GHC's threaded runtime to compile xmobar. Disabled by default (cf. discussion in github #36).
- Stricter build dependencies versioning in cabal file.
- issue 56 vertical alignment of text improved.
- issue 64 display of
- issue 69 miscellaneous battery reporting issues.
- issue 67 compilation in DragonFly.
- DiskIO works also when device path in mtab are symbolic links to the real device file.
- Wireless monitor honours padding settings for ESSID names.
- CoreTemp monitor fixed for newer kernels (github #38).
Version 0.14 (Dec 10, 2011)
- New brightness monitor, courtesy of Martin Perner.
- New DateZone plugin, for configurable timezone and localized datetimes, also by Martin.
- New keyboard layout monitor (Kbd). Yes, by Martin.
- Rewrite of the event handling (issue 53, issue 57), you guessed it.
- Cpu monitor now also reports
iowaitfield (issue 55).
- Battery monitor: the full charge file is now settable in the
monitor arguments (olpc systems use
charge_full_design; see issue 62).
- issue 45 Fix for crashes with AC status changes in battery monitor.
- issue 48 The field of Wireless behaves like a percentage.
- issue 50/issue 61:
MPDmonitor now works with libmpd 0.6.
- issue 60 Fixes for crashes on power resume for battery monitor.
- Template sections without fields are now correctly displayed.
- Catch errors when reading battery status (Ben Boeckel).
- Compilation issues with ghc 7.x (Sergei Trofimovich).
- Fixes for CoreTemp monitor in new kernels (Norbert Zeh).
- Fix for pulseaudio problems in volume monitor (Martin Perner).
- Fix for parsing errors when a
Runentry ended in an array (Martin).
- Fixed compilation in OpenBSD (Ivo van der Sangen).
Version 0.13 (March 28, 2011)
Volumemonitor displaying ALSA soundcards information, by Thomas Tuegel.
Thermaland using linux's sysfs interface (you need this one if you're using a kernel version equal to or above 2.6.37). See issue 44.
- xmobar app new has WM_CLASS, WM_NAME and _NET_WM_PID xprops (issue 38).
- In the process of solving issue 14, we've broken those
configurations that rely on including alignment separators in the
input fed to
- The MPD plugin does not accept host and port options anymore: use the environment variables MPD_HOST and MPD_PORT instead.
- issue 14
StdinReaderand other plugins accepting external input don't get confused anymore when characters from
alignSepappear in their input.
- issue 27
BottomSizeplacement now respects its width argument.
- issue 28 Compilation in Mac OS X fixed.
- issue 30
- issue 36 Battery monitor now supports non-standard locations of
- issue 40 Battery monitor now supports the new power_now, that replaces current_now in linux kernels for v. 2.36 and above.
- issue 42 More accurate net monitor rates.
- DiskIO, Cpu and MultiCpu monitors are also more accurate now.
- Text is now correctly centered vertically.
FullBMborder spec fixed.
Version 0.12 (Dec 24, 2010)
Many thanks to Andrea Rossato, xmobar's author and maintainer so far, for creating xmobar in the first place, and for giving me the chance to become its maintainer. And a big thanks to Ben Boeckel, Petr Rockai and Norbert Zeh for their patches.
- Window borders: configuration options
borderColorallow drawing borders around xmobar's window.
- New monitor,
Uptime, showing the system uptime.
- New monitor argument (
-S) to enable displaying the
%symbol in percentages or other suffixes (e.g., units in Uptime and Network); the symbol is now never included by default.
- New 'run once' commands, by specifying a 0 refresh rate in
Run Com(issue 26).
- MPD monitor: updated to libmpd 1.5. New fields
ppos(playlist position) and
remaining(remaining time). New configuration options to specify MPD's host, user name and password.
- Battery monitor: new
timeleftfields (Petr Rockai), and specific arguments to control coloring and thresholds of the former.
- MultiCPU monitor: new
auto*fields that automatically detect all present CPUs (Ben Boeckel).
- CpuFreq monitor uses just one decimal digit for GHz values (Petr Rockai).
- Mail plugin expands paths starting with "~/" (Ben Boeckel). Ditto MBox.
- Weather monitor now skips not retrieved fields, instead of displaying a long error message.
- New compilation flag,
- Documentation and website updates.
- issue 23 Wireless monitor is now compatible with iwlib 29.
- issue 24 Swap monitor's used ratio display fixed.
- issue 25 Percentages only include
%if requested using
- issue 31 MPD monitor now respects
- Fixes in CPU frequency formatting, string alignment and colour boxes in monitors (Norbert Zeh).
- TopMem and TopProc now use the
-Hoptions correctly for memory template fields.
- MBox skips non-existent mbox paths instead of hanging.