|__pulseaudio |Displays volume and mute status and controls for PulseAudio devices. Use wheel up and down to change volume, left click mutes, right click opens pavucontrol.<br/><br/>Aliases: pasink (use this to control output instead of input), pasource<br/><br/>Parameters:<br/>* pulseaudio.autostart: If set to 'true' (default is 'false'), automatically starts the pulseaudio daemon if it is not running<br /> * pulseaudio.percent_change: How much to change volume by when scrolling on the module (default is 2%)<br/>* pulseaudio.limit: Upper limit for setting the volume (default is 0%, which means 'no limit')<br /> Note: If the left and right channels have different volumes, the limit might not be reached exactly.<br /> * pulseaudio.showbars: 1 for showing volume bars, requires --markup=pango;<br/> 0 for not showing volume bars (default)<br/><br/>Requires the following executable:<br/>* pulseaudio<br /> * pactl<br/> * pavucontrol |
|battery |Displays battery status, remaining percentage and charging information.<br/><br/>Parameters:<br/>* battery.device : Comma-separated list of battery devices to read information from (defaults to auto for auto-detection)<br /> * battery.warning : Warning threshold in % of remaining charge (defaults to 20)<br/>* battery.critical : Critical threshold in % of remaining charge (defaults to 10)<br /> * battery.showdevice : If set to 'true', add the device name to the widget (defaults to False)<br/>* battery.decorate : If set to 'false', hides additional icons (charging, etc.) (defaults to True)<br /> * battery.showpowerconsumption: If set to 'true', show current power consumption (defaults to False)<br/> * battery.compact-devices : If set to 'true', compacts multiple batteries into a single entry (default to False)<p/>![battery](../screenshots/battery.png) |
|battery-upower |Displays battery status, remaining percentage and charging information.<br/><br/>Parameters:<br/>* battery-upower.warning : Warning threshold in % of remaining charge (defaults to 20)<br /> * battery-upower.critical : Critical threshold in % of remaining charge (defaults to 10)<br/> * battery-upower.showremaining : If set to true (default) shows the remaining time until the batteries are completely discharged |
|bluetooth |Displays bluetooth status (Bluez). Left mouse click launches manager app,<br/>right click toggles bluetooth. Needs dbus-send to toggle bluetooth state.<br/><br/>Parameters:<br/>* bluetooth.device : the device to read state from (default is hci0)<br /> * bluetooth.manager : application to launch on click (blueman-manager)<br/>* bluetooth.dbus_destination : dbus destination (defaults to org.blueman.Mechanism)<br /> * bluetooth.dbus_destination_path : dbus destination path (defaults to /)<br/> * bluetooth.right_click_popup : use popup menu when right-clicked (defaults to True)<p/>![bluetooth](../screenshots/bluetooth.png) |
|bluetooth2 |Displays bluetooth status. Left mouse click launches manager app,<br/>right click toggles bluetooth. Needs dbus-send to toggle bluetooth state and<br/>python-dbus to count the number of connections<br/><br/>Parameters:<br/> * bluetooth.manager : application to launch on click (blueman-manager) |
|brightness |Displays the brightness of a display<br/><br/>Parameters:<br/> * brightness.step: The amount of increase/decrease on scroll in % (defaults to 2)<p/>![brightness](../screenshots/brightness.png) |
|caffeine |Enable/disable automatic screen locking.<br/><br/>Requires the following executables:<br/>* xdg-screensaver<br /> * xdotool<br/>* xprop (as dependency for xdotool)<br /> * notify-send<p/>![caffeine](../screenshots/caffeine.png) |
|cmus |Displays information about the current song in cmus.<br/><br/>Requires the following executable:<br/>* cmus-remote<br /><br />Parameters:<br /> * cmus.format: Format string for the song information. Tag values can be put in curly brackets (i.e. {artist})<br/> Additional tags:<br/>* {file} - full song file name<br /> * {file1} - song file name without path prefix<br/> if {file} = '/foo/bar.baz', then {file1} = 'bar.baz'<br/>* {file2} - song file name without path prefix and extension suffix<br /> if {file} = '/foo/bar.baz', then {file2} = 'bar'<br /> * cmus.layout: Space-separated list of widgets to add. Possible widgets are the buttons/toggles cmus.prev, cmus.next, cmus.shuffle and cmus.repeat, and the main display with play/pause function cmus.main.<br/>* cmus.server: The address of the cmus server, either a UNIX socket or host[:port]. Connects to the local instance by default.<br /> * cmus.passwd: The password to use for the TCP/IP connection.<p/>![cmus](../screenshots/cmus.png) |
|cpu |Displays CPU utilization across all CPUs.<br/><br/>Parameters:<br/>* cpu.warning : Warning threshold in % of CPU usage (defaults to 70%)<br /> * cpu.critical: Critical threshold in % of CPU usage (defaults to 80%)<br/> * cpu.format : Format string (defaults to '{:.01f}%')<p/>![cpu](../screenshots/cpu.png) |
|cpu2 |Multiwidget CPU module<br/><br/>Can display any combination of:<br/><br/>* max CPU frequency<br /> * total CPU load in percents (integer value)<br/>* per-core CPU load as graph - either mono or colored<br /> * CPU temperature (in Celsius degrees)<br/>* CPU fan speed<br /><br />Requirements:<br /><br /> * the psutil Python module for the first three items from the list above<br/>* sensors executable for the rest<br /><br />Parameters:<br /> * cpu2.layout: Space-separated list of widgets to add.<br/> Possible widgets are:<br/>* cpu2.maxfreq<br /> * cpu2.cpuload<br/>* cpu2.coresload<br /> * cpu2.temp<br/>* cpu2.fanspeed<br /> * cpu2.colored: 1 for colored per core load graph, 0 for mono (default)<br/> if this is set to 1, use --markup=pango<br/>* cpu2.temp_pattern: pattern to look for in the output of 'sensors -u';<br /> required if cpu2.temp widged is used<br /> * cpu2.fan_pattern: pattern to look for in the output of 'sensors -u';<br/> required if cpu2.fanspeed widged is used<br/><br/>Note: if you are getting 'n/a' for CPU temperature / fan speed, then you're<br/>lacking the aforementioned pattern settings or they have wrong values. |
|currency |Displays currency exchange rates. Currently, displays currency between GBP and USD/EUR only.<br/><br/>Requires the following python packages:<br/>* requests<br /><br />Parameters:<br /> * currency.interval: Interval in minutes between updates, default is 1.<br/>* currency.source: Source currency (ex. 'GBP', 'EUR'). Defaults to 'auto', which infers the local one from IP address.<br /> * currency.destination: Comma-separated list of destination currencies (defaults to 'USD,EUR')<br/>* currency.sourceformat: String format for source formatting; Defaults to '{}: {}' and has two variables,<br /> the base symbol and the rate list<br /> * currency.destinationdelimiter: Delimiter used for separating individual rates (defaults to '|')<br/><br/>Note: source and destination names right now must correspond to the names used by the API of https://markets.ft.com<p/>![currency](../screenshots/currency.png) |
|date |Displays the current date and time.<br/><br/>Parameters:<br/>* date.format: strftime()-compatible formatting string<br /> * date.locale: locale to use rather than the system default<p/>![date](../screenshots/date.png) |
|datetime |Displays the current date and time.<br/><br/>Parameters:<br/>* datetime.format: strftime()-compatible formatting string<br /> * datetime.locale: locale to use rather than the system default<p/>![datetime](../screenshots/datetime.png) |
|datetimetz |Displays the current date and time with timezone options.<br/><br/>Parameters:<br/>* datetimetz.format : strftime()-compatible formatting string<br /> * datetimetz.timezone : IANA timezone name<br/>* datetz.format : alias for datetimetz.format<br /> * timetz.format : alias for datetimetz.format<br/>* timetz.timezone : alias for datetimetz.timezone<br /> * datetimetz.locale : locale to use rather than the system default<br/>* datetz.locale : alias for datetimetz.locale<br /> * timetz.locale : alias for datetimetz.locale<br/> * timetz.timezone : alias for datetimetz.timezone |
|datetz |Displays the current date and time.<br/><br/>Parameters:<br/>* date.format: strftime()-compatible formatting string<br /> * date.locale: locale to use rather than the system default |
|deadbeef |Displays the current song being played in DeaDBeeF and provides<br/>some media control bindings.<br/>Left click toggles pause, scroll up skips the current song, scroll<br/>down returns to the previous song.<br/><br/>Requires the following library:<br/>* subprocess<br />Parameters:<br /> * deadbeef.format: Format string (defaults to '{artist} - {title}')<br/> Available values are: {artist}, {title}, {album}, {length},<br/> {trackno}, {year}, {comment},<br/> {copyright}, {time}<br/> This is deprecated, but much simpler.<br/>* deadbeef.tf_format: A foobar2000 title formatting-style format string.<br /> These can be much more sophisticated than the standard<br /> format strings. This is off by default, but specifying<br /> any tf_format will enable it. If both deadbeef.format<br /> and deadbeef.tf_format are specified, deadbeef.tf_format<br /> takes priority.<br /> * deadbeef.tf_format_if_stopped: Controls whether or not the tf_format format<br/> string should be displayed even if no song is paused or<br/> playing. This could be useful if you want to implement<br/> your own stop strings with the built in logic. Any non-<br/> null value will enable this (by default the module will<br/> hide itself when the player is stopped).<br/>* deadbeef.previous: Change binding for previous song (default is left click)<br /> * deadbeef.next: Change binding for next song (default is right click)<br/> * deadbeef.pause: Change binding for toggling pause (default is middle click)<br/> Available options for deadbeef.previous, deadbeef.next and deadbeef.pause are:<br/> LEFT_CLICK, RIGHT_CLICK, MIDDLE_CLICK, SCROLL_UP, SCROLL_DOWN |
|deezer |Displays the current song being played<br/>Requires the following library:<br/>* python-dbus<br />Parameters:<br /> * deezer.format: Format string (defaults to '{artist} - {title}')<br/> Available values are: {album}, {title}, {artist}, {trackNumber}, {playbackStatus}<br/>* deezer.previous: Change binding for previous song (default is left click)<br /> * deezer.next: Change binding for next song (default is right click)<br/> * deezer.pause: Change binding for toggling pause (default is middle click)<br/> Available options for deezer.previous, deezer.next and deezer.pause are:<br/> LEFT_CLICK, RIGHT_CLICK, MIDDLE_CLICK, SCROLL_UP, SCROLL_DOWN |
|disk |Shows free diskspace, total diskspace and the percentage of free disk space.<br/><br/>Parameters:<br/>* disk.warning: Warning threshold in % of disk space (defaults to 80%)<br /> * disk.critical: Critical threshold in % of disk space (defaults ot 90%)<br/>* disk.path: Path to calculate disk usage from (defaults to /)<br /> * disk.open: Which application / file manager to launch (default xdg-open)<br/> * disk.format: Format string, tags {path}, {used}, {left}, {size} and {percent} (defaults to '{path} {used}/{size} ({percent:05.02f}%)')<p/>![disk](../screenshots/disk.png) |
|dnf |Displays DNF package update information (\<security\>/\<bugfixes\>/\<enhancements\>/\<other\>)<br/><br/>Requires the following executable:<br/>* dnf<br /><br />Parameters:<br /> * dnf.interval: Time in minutes between two consecutive update checks (defaults to 30 minutes)<p/>![dnf](../screenshots/dnf.png) |
|getcrypto |Displays the price of a cryptocurrency.<br/><br/>Requires the following python packages:<br/>* requests<br /><br />Parameters:<br /> * getcrypto.interval: Interval in seconds for updating the price, default is 120, less than that will probably get your IP banned.<br/>* getcrypto.getbtc: 0 for not getting price of BTC, 1 for getting it (default).<br /> * getcrypto.geteth: 0 for not getting price of ETH, 1 for getting it (default).<br/>* getcrypto.getltc: 0 for not getting price of LTC, 1 for getting it (default).<br /> * getcrypto.getcur: Set the currency to display the price in, usd is the default.<p/>![getcrypto](../screenshots/getcrypto.png) |
|git |Print the branch and git status for the<br/>currently focused window.<br/><br/>Requires:<br/>* xcwd<br /> * Python module 'pygit2'<p/>![git](../screenshots/git.png) |
|github |Displays the unread GitHub notifications for a GitHub user<br/><br/>Requires the following library:<br/>* requests<br /><br />Parameters:<br /> * github.token: GitHub user access token, the token needs to have the 'notifications' scope.<br/> * github.interval: Interval in minutes between updates, default is 5.<p/>![github](../screenshots/github.png) |
|http_status |Display HTTP status code<br/><br/>Parameters:<br/>* http__status.label: Prefix label (optional)<br /> * http__status.target: Target to retrieve the HTTP status from<br/> * http__status.expect: Expected HTTP status<p/>![http_status](../screenshots/http_status.png) |
|indicator |Displays the indicator status, for numlock, scrolllock and capslock <br/><br/>Parameters:<br/>* indicator.include: Comma-separated list of interface prefixes to include (defaults to 'numlock,capslock')<br /> * indicator.signalstype: If you want the signali type color to be 'critical' or 'warning' (defaults to 'warning')<p/>![indicator](../screenshots/indicator.png) |
|kernel |Shows Linux kernel version information<p/>![kernel](../screenshots/kernel.png) |
|layout |Displays and changes the current keyboard layout<br/><br/>Requires the following executable:<br/> * setxkbmap<p/>![layout](../screenshots/layout.png) |
|layout-xkb |Displays the current keyboard layout using libX11<br/><br/>Requires the following library:<br/>* libX11.so.6<br />and python module:<br /> * xkbgroup<br/><br/>Parameters:<br/>* layout-xkb.showname: Boolean that indicate whether the full name should be displayed. Defaults to false (only the symbol will be displayed)<br /> * layout-xkb.show_variant: Boolean that indecates whether the variant name should be displayed. Defaults to true. |
|layout-xkbswitch |Displays and changes the current keyboard layout<br/><br/>Requires the following executable:<br/> * xkb-switch |
|libvirtvms |Displays count of running libvirt VMs.<br/>Required the following python packages:<br/> * libvirt |
|load |Displays system load.<br/><br/>Parameters:<br/>* load.warning : Warning threshold for the one-minute load average (defaults to 70% of the number of CPUs)<br /> * load.critical: Critical threshold for the one-minute load average (defaults to 80% of the number of CPUs)<p/>![load](../screenshots/load.png) |
|memory |Displays available RAM, total amount of RAM and percentage available.<br/><br/>Parameters:<br/>* memory.warning : Warning threshold in % of memory used (defaults to 80%)<br /> * memory.critical: Critical threshold in % of memory used (defaults to 90%)<br/>* memory.format: Format string (defaults to '{used}/{total} ({percent:05.02f}%)')<br /> * memory.usedonly: Only show the amount of RAM in use (defaults to False). Same as memory.format='{used}'<p/>![memory](../screenshots/memory.png) |
|mocp |Displays information about the current song in mocp. Left click toggles play/pause. Right click toggles shuffle.<br/><br/>Requires the following executable:<br/>* mocp<br /><br />Parameters:<br /> * mocp.format: Format string for the song information. Replace string sequences with the actual information:<br/> %state State<br/> %file File<br/> %title Title, includes track, artist, song title and album<br/> %artist Artist<br/> %song SongTitle<br/> %album Album<br/> %tt TotalTime<br/> %tl TimeLeft<br/> %ts TotalSec<br/> %ct CurrentTime<br/> %cs CurrentSec<br/> %b Bitrate<br/> %r Sample rate |
|mpd |Displays information about the current song in mpd.<br/><br/>Requires the following executable:<br/>* mpc<br /><br />Parameters:<br /> * mpd.format: Format string for the song information.<br/> Supported tags (see `man mpc` for additional information)<br/>* {name}<br /> * {artist}<br/>* {album}<br /> * {albumartist}<br/>* {comment}<br /> * {composer}<br/>* {date}<br /> * {originaldate}<br/>* {disc}<br /> * {genre}<br/>* {performer}<br /> * {title}<br/>* {track}<br /> * {time}<br/>* {file}<br /> * {id}<br/>* {prio}<br /> * {mtime}<br/>* {mdate}<br /> Additional tags:<br /> * {position} - position of currently playing song<br/> not to be confused with %position% mpc tag<br/>* {duration} - duration of currently playing song<br /> * {file1} - song file name without path prefix<br/> if {file} = '/foo/bar.baz', then {file1} = 'bar.baz'<br/>* {file2} - song file name without path prefix and extension suffix<br /> if {file} = '/foo/bar.baz', then {file2} = 'bar'<br /> * mpd.host: MPD host to connect to. (mpc behaviour by default)<br/> * mpd.layout: Space-separated list of widgets to add. Possible widgets are the buttons/toggles mpd.prev, mpd.next, mpd.shuffle and mpd.repeat, and the main display with play/pause function mpd.main.<p/>![mpd](../screenshots/mpd.png) |
|nic |Displays the name, IP address(es) and status of each available network interface.<br/><br/>Requires the following python module:<br/>* netifaces<br /><br />Parameters:<br /> * nic.exclude: Comma-separated list of interface prefixes to exclude (defaults to 'lo,virbr,docker,vboxnet,veth,br')<br/>* nic.include: Comma-separated list of interfaces to include<br /> * nic.states: Comma-separated list of states to show (prefix with '^' to invert - i.e. ^down -\> show all devices that are not in state down)<br/> * nic.format: Format string (defaults to '{intf} {state} {ip} {ssid}')<p/>![nic](../screenshots/nic.png) |
|notmuch_count |Displays the result of a notmuch count query<br/> default : unread emails which path do not contained 'Trash' (notmuch count 'tag:unread AND NOT path:/.*Trash.*/')<br/><br/>Parameters:<br/> * notmuch_count.query: notmuch count query to show result <br/><br/>Errors:<br/> if the notmuch query failed, the shown value is -1<br/><br/>Dependencies:<br/> notmuch (https://notmuchmail.org/) |
|nvidiagpu |Displays GPU name, temperature and memory usage.<br/><br/>Parameters:<br/> * nvidiagpu.format: Format string (defaults to '{name}: {temp}°C %{usedmem}/{totalmem} MiB')<br/> Available values are: {name} {temp} {mem_used} {mem_total} {fanspeed} {clock_gpu} {clock_mem}<br/><br/>Requires nvidia-smi |
|octoprint |Displays the Octorpint status and the printer's bed/tools temperature in the status bar.<br/><br/> Left click opens a popup which shows the bed & tools temperatures and additionally a livestream of the webcam (if enabled).<br/><br/>Parameters:<br/>* octoprint.address : Octoprint address (e.q: http://192.168.1.3)<br /> * octoprint.apitoken : Octorpint API Token (can be obtained from the Octoprint Webinterface)<br/> * octoprint.webcam : Set to True if a webcam is connected (default: False) |
|pacman |Displays update information per repository for pacman.<br/><br/>Parameters:<br/>* pacman.sum: If you prefere displaying updates with a single digit (defaults to 'False')<br /><br />Requires the following executables:<br /> * fakeroot<br/> * pacman<p/>![pacman](../screenshots/pacman.png) |
|pihole |Displays the pi-hole status (up/down) together with the number of ads that were blocked today<br/>Parameters:<br/>* pihole.address : pi-hole address (e.q: http://192.168.1.3)<br /> * pihole.pwhash : pi-hole webinterface password hash (can be obtained from the /etc/pihole/SetupVars.conf file) |
|ping |Periodically checks the RTT of a configurable host using ICMP echos<br/><br/>Requires the following executable:<br/>* ping<br /><br />Parameters:<br /> * ping.address : IP address to check<br/>* ping.timeout : Timeout for waiting for a reply (defaults to 5.0)<br /> * ping.probes : Number of probes to send (defaults to 5)<br/>* ping.warning : Threshold for warning state, in seconds (defaults to 1.0)<br /> * ping.critical: Threshold for critical state, in seconds (defaults to 2.0)<p/>![ping](../screenshots/ping.png) |
|pomodoro |Display and run a Pomodoro timer.<br/>Left click to start timer, left click again to pause.<br/>Right click will cancel the timer.<br/><br/>Parameters:<br/>* pomodoro.work: The work duration of timer in minutes (defaults to 25)<br /> * pomodoro.break: The break duration of timer in minutes (defaults to 5)<br/>* pomodoro.format: Timer display format with '%m' and '%s' for minutes and seconds (defaults to '%m:%s')<br /> Examples: '%m min %s sec', '%mm', '', 'timer'<br /> * pomodoro.notify: Notification command to run when timer ends/starts (defaults to nothing)<br/> Example: 'notify-send 'Time up!''. If you want to chain multiple commands,<br/> please use an external wrapper script and invoke that. The module itself does<br/> not support command chaining (see https://github.com/tobi-wan-kenobi/bumblebee-status/issues/532<br/> for a detailled explanation) |
|prime |Displays and changes the current selected prime video card<br/><br/>Left click will call 'sudo prime-select nvidia'<br/>Right click will call 'sudo prime-select nvidia'<br/><br/>Running these commands without a password requires editing your sudoers file<br/>(always use visudo, it's very easy to make a mistake and get locked out of your computer!)<br/><br/>sudo visudo -f /etc/sudoers.d/prime<br/><br/>Then put a line like this in there:<br/><br/> user ALL=(ALL) NOPASSWD: /usr/bin/prime-select<br/><br/>If you can't figure out the sudoers thing, then don't worry, it's still really useful.<br/><br/>Parameters:<br/>* prime.nvidiastring: String to use when nvidia is selected (defaults to 'intel')<br /> * prime.intelstring: String to use when intel is selected (defaults to 'intel')<br/><br/>Requires the following executable:<br/> * prime-select |
|progress |Show progress for cp, mv, dd, ...<br/><br/>Parameters:<br/>* progress.placeholder: Text to display while no process is running (defaults to 'n/a')<br /> * progress.barwidth: Width of the progressbar if it is used (defaults to 8)<br/>* progress.format: Format string (defaults to '{bar} {cmd} {arg}')<br /> Available values are: {bar} {pid} {cmd} {arg} {percentage} {quantity} {speed} {time}<br /> * progress.barfilledchar: Character used to draw the filled part of the bar (defaults to '#'), notice that it can be a string<br/>* progress.baremptychar: Character used to draw the empty part of the bar (defaults to '-'), notice that it can be a string<br /><br />Requires the following executable:<br /> * progress |
|redshift |Displays the current color temperature of redshift<br/><br/>Requires the following executable:<br/>* redshift<br /><br />Parameters:<br /> * redshift.location : location provider, either of 'auto' (default), 'geoclue2',<br/> 'ipinfo' or 'manual'<br/> 'auto' uses whatever redshift is configured to do<br/>* redshift.lat : latitude if location is set to 'manual'<br /> * redshift.lon : longitude if location is set to 'manual'<p/>![redshift](../screenshots/redshift.png) |
|rotation |Shows a widget for each connected screen and allows the user to loop through different orientations.<br/><br/>Requires the following executable:<br/> * xrandr |
|rss |RSS news ticker<br/><br/>Fetches rss news items and shows these as a news ticker.<br/>Left-clicking will open the full story in a browser.<br/>New stories are highlighted.<br/><br/>Parameters:<br/>* rss.feeds : Space-separated list of RSS URLs<br /> * rss.length : Maximum length of the module, default is 60 |
|sensors |Displays sensor temperature<br/><br/>Parameters:<br/>* sensors.path: path to temperature file (default /sys/class/thermal/thermal_zone0/temp).<br /> * sensors.json: if set to 'true', interpret sensors.path as JSON 'path' in the output<br/> of 'sensors -j' (i.e. \<key1\>/\<key2\>/.../\<value\>), for example, path could<br/> be: 'coretemp-isa-00000/Core 0/temp1_input' (defaults to 'false')<br/>* sensors.match: (fallback) Line to match against output of 'sensors -u' (default: temp1_input)<br /> * sensors.match_pattern: (fallback) Line to match against before temperature is read (no default)<br/>* sensors.match_number: (fallback) which of the matches you want (default -1: last match).<br /> * sensors.show_freq: whether to show CPU frequency. (default: true)<p/>![sensors](../screenshots/sensors.png) |
|sensors2 |Displays sensor temperature and CPU frequency<br/><br/>Parameters:<br/><br/>* sensors2.chip: 'sensors -u' compatible filter for chip to display (default to empty - show all chips)<br /> * sensors2.showcpu: Enable or disable CPU frequency display (default: true)<br/>* sensors2.showtemp: Enable or disable temperature display (default: true)<br /> * sensors2.showfan: Enable or disable fan display (default: true)<br/>* sensors2.showother: Enable or display 'other' sensor readings (default: false)<br /> * sensors2.showname: Enable or disable show of sensor name (default: false)<br/>* sensors2.chip_include: Comma-separated list of chip to include (defaults to '' will include all by default, example: 'coretemp,bat')<br /> * sensors2.chip_exclude:Comma separated list of chip to exclude (defaults to '' will exlude none by default)<br/>* sensors2.field_include: Comma separated list of chip to include (defaults to '' will include all by default, example: 'temp,fan')<br /> * sensors2.field_exclude: Comma separated list of chip to exclude (defaults to '' will exclude none by default)<br/>* sensors2.chip_field_exclude: Comma separated list of chip field to exclude (defaults to '' will exclude none by default, example: 'coretemp-isa-0000.temp1,coretemp-isa-0000.fan1')<br /> * sensors2.chip_field_include: Comma-separated list of adaper field to include (defaults to '' will include all by default)<p/>![sensors2](../screenshots/sensors2.png) |
|shell |Execute command in shell and print result<br/><br/>Few command examples:<br/> 'ping -c 1 1.1.1.1 | grep -Po '(?\<=time=)\d+(\.\d+)? ms''<br/> 'echo 'BTC=$(curl -s rate.sx/1BTC | grep -Po '^\d+')USD''<br/> 'curl -s https://wttr.in/London?format=%l+%t+%h+%w'<br/> 'pip3 freeze | wc -l'<br/> 'any_custom_script.sh | grep arguments'<br/><br/>Parameters:<br/>* shell.command: Command to execute<br /> Use single parentheses if evaluating anything inside (sh-style)<br /> For example shell.command='echo $(date +'%H:%M:%S')'<br /> But NOT shell.command='echo $(date +'%H:%M:%S')'<br /> Second one will be evaluated only once at startup<br /> * shell.interval: Update interval in seconds<br/> (defaults to 1s == every bumblebee-status update)<br/> * shell.async: Run update in async mode. Won't run next thread if<br/> previous one didn't finished yet. Useful for long<br/> running scripts to avoid bumblebee-status freezes<br/> (defaults to False) |
|shortcut |Shows a widget per user-defined shortcut and allows to define the behaviour<br/>when clicking on it.<br/><br/>For more than one shortcut, the commands and labels are strings separated by<br/>a demiliter (; semicolon by default).<br/><br/>For example in order to create two shortcuts labeled A and B with commands<br/>cmdA and cmdB you could do:<br/><br/> ./bumblebee-status -m shortcut -p shortcut.cmd='ls;ps' shortcut.label='A;B'<br/><br/>Parameters:<br/>* shortcut.cmds : List of commands to execute<br /> * shortcut.labels: List of widgets' labels (text)<br/> * shortcut.delim : Commands and labels delimiter (; semicolon by default)<p/>![shortcut](../screenshots/shortcut.png) |
|smartstatus |Displays HDD smart status of different drives or all drives<br/><br/>Parameters:<br/>* smartstatus.display: how to display (defaults to 'combined', other choices: 'seperate' or 'singles')<br /> * smartstauts.drives: in the case of singles which drives to display, separated comma list value, multiple accepted (defaults to 'sda', example:'sda,sdc') |
|spaceapi |Displays the state of a Space API endpoint<br/>Space API is an API for hackspaces based on JSON. See spaceapi.io for<br/>an example.<br/><br/>Requires the following libraries:<br/>* requests<br /> * regex<br/><br/>Parameters:<br/>* spaceapi.url: String representation of the api endpoint<br /> * spaceapi.format: Format string for the output<br/><br/>Format Strings:<br/>* Format strings are indicated by double %%<br /> * They represent a leaf in the JSON tree, layers seperated by '.'<br/>* Boolean values can be overwritten by appending '%true%false'<br /> in the format string<br /> * Example: to reference 'open' in '{'state':{'open': true}}'<br/> you would write '%%state.open%%', if you also want<br/> to say 'Open/Closed' depending on the boolean you<br/> would write '%%state.open%Open%Closed%%' |
|spacer |Draws a widget with configurable text content.<br/><br/>Parameters:<br/> * spacer.text: Widget contents (defaults to empty string)<p/>![spacer](../screenshots/spacer.png) |
|spotify |Displays the current song being played<br/>Requires the following library:<br/>* python-dbus<br />Parameters:<br /> * spotify.format: Format string (defaults to '{artist} - {title}')<br/> Available values are: {album}, {title}, {artist}, {trackNumber}, {playbackStatus}<br/>* spotify.previous: Change binding for previous song (default is left click)<br /> * spotify.next: Change binding for next song (default is right click)<br/> * spotify.pause: Change binding for toggling pause (default is middle click)<br/> Available options for spotify.previous, spotify.next and spotify.pause are:<br/> LEFT_CLICK, RIGHT_CLICK, MIDDLE_CLICK, SCROLL_UP, SCROLL_DOWN<p/>![spotify](../screenshots/spotify.png) |
|stock |Display a stock quote from worldtradingdata.com<br/><br/>Requires the following python packages:<br/>* requests<br /><br />Parameters:<br /> * stock.symbols : Comma-separated list of symbols to fetch<br/> * stock.change : Should we fetch change in stock value (defaults to True)<p/>![stock](../screenshots/stock.png) |
|sun |Displays sunrise and sunset times<br/><br/>Requires the following python packages:<br/>* requests<br /> * suntime<br/><br/>Parameters:<br/>* cpu.lat : Latitude of your location<br /> * cpu.lon : Longitude of your location |
|system |system module<br/><br/>adds the possibility to<br/>* shutdown<br /> * reboot<br/>the system.<br/><br/>Per default a confirmation dialog is shown before the actual action is performed.<br/><br/>Parameters:<br/>* system.confirm: show confirmation dialog before performing any action (default: true) <br /> * system.reboot: specify a reboot command (defaults to 'reboot')<br/>* system.shutdown: specify a shutdown command (defaults to 'shutdown -h now')<br /> * system.logout: specify a logout command (defaults to 'i3exit logout')<br/>* system.switch_user: specify a command for switching the user (defaults to 'i3exit switch_user')<br /> * system.lock: specify a command for locking the screen (defaults to 'i3exit lock')<br/>* system.suspend: specify a command for suspending (defaults to 'i3exit suspend')<br /> * system.hibernate: specify a command for hibernating (defaults to 'i3exit hibernate') |
|taskwarrior |Displays the number of pending tasks in TaskWarrior.<br/><br/>Requires the following library:<br/>* taskw<br /><br />Parameters:<br /> * taskwarrior.taskrc : path to the taskrc file (defaults to ~/.taskrc)<p/>![taskwarrior](../screenshots/taskwarrior.png) |
|time |Displays the current date and time.<br/><br/>Parameters:<br/>* time.format: strftime()-compatible formatting string<br /> * time.locale: locale to use rather than the system default<p/>![time](../screenshots/time.png) |
|timetz |Displays the current date and time.<br/><br/>Parameters:<br/>* time.format: strftime()-compatible formatting string<br /> * time.locale: locale to use rather than the system default |
|title |Displays focused i3 window title.<br/><br/>Requirements:<br/>* i3ipc<br /><br />Parameters:<br /> * title.max : Maximum character length for title before truncating. Defaults to 64.<br/>* title.placeholder : Placeholder text to be placed if title was truncated. Defaults to '...'.<br /> * title.scroll : Boolean flag for scrolling title. Defaults to False<p/>![title](../screenshots/title.png) |
|todo |Displays the number of todo items from a text file<br/><br/>Parameters:<br/> * todo.file: File to read TODOs from (defaults to ~/Documents/todo.txt)<p/>![todo](../screenshots/todo.png) |
|traffic |Displays network IO for interfaces.<br/><br/>Parameters:<br/>* traffic.exclude: Comma-separated list of interface prefixes to exclude (defaults to 'lo,virbr,docker,vboxnet,veth')<br /> * traffic.states: Comma-separated list of states to show (prefix with '^' to invert - i.e. ^down -\> show all devices that are not in state down)<br/>* traffic.showname: If set to False, hide network interface name (defaults to True)<br /> * traffic.format: Format string for download/upload speeds.<br/> Defaults to '{:.2f}'<br/> * traffic.graphlen: Graph lenth in seconds. Positive even integer. Each<br/> char shows 2 seconds. If set, enables up/down traffic<br/> graphs<p/>![traffic](../screenshots/traffic.png) |
|uptime |Displays the system uptime.<p/>![uptime](../screenshots/uptime.png) |
|vault |Copy passwords from a password store into the clipboard (currently supports only 'pass')<br/><br/>Many thanks to [@bbernhard](https://github.com/bbernhard) for the idea!<br/><br/>Parameters:<br/>* vault.duration: Duration until password is cleared from clipboard (defaults to 30)<br /> * vault.location: Location of the password store (defaults to ~/.password-store)<br/>* vault.offx: x-axis offset of popup menu (defaults to 0)<br /> * vault.offy: y-axis offset of popup menu (defaults to 0)<p/>![vault](../screenshots/vault.png) |
|vpn |Displays the VPN profile that is currently in use.<br/><br/>Left click opens a popup menu that lists all available VPN profiles and allows to establish<br/>a VPN connection using that profile.<br/><br/>Prerequisites:<br/>* tk python library (usually python-tk or python3-tk, depending on your distribution)<br /> * nmcli needs to be installed and configured properly.<br/> To quickly test, whether nmcli is working correctly, type 'nmcli -g NAME,TYPE,DEVICE con' which<br/> lists all the connection profiles that are configured. Make sure that your VPN profile is in that list!<br/><br/> e.g: to import a openvpn profile via nmcli:<br/> sudo nmcli connection import type openvpn file \</path/to/your/openvpn/profile.ovpn\> |
|watson |Displays the status of watson (time-tracking tool)<br/><br/>Requires the following executable:<br/> * watson |
|weather |Displays the temperature on the current location based on the ip<br/><br/>Requires the following python packages:<br/>* requests<br /><br />Parameters:<br /> * weather.location: Set location, defaults to 'auto' for getting location automatically from a web service<br/> If set to a comma-separated list, left-click and right-click can be used to rotate the locations.<br/> Locations should be city names or city ids.<br/>* weather.unit: metric (default), kelvin, imperial<br /> * weather.showcity: If set to true, show location information, otherwise hide it (defaults to true)<br/>* weather.showminmax: If set to true, show the minimum and maximum temperature, otherwise hide it (defaults to false)<br /> * weather.apikey: API key from http://api.openweathermap.org<p/>![weather](../screenshots/weather.png) |
|xrandr |Shows a widget for each connected screen and allows the user to enable/disable screens.<br/><br/>Parameters:<br/>* xrandr.overwrite_i3config: If set to 'true', this module assembles a new i3 config<br /> every time a screen is enabled or disabled by taking the file '~/.config/i3/config.template'<br /> and appending a file '~/.config/i3/config.\<screen name\>' for every screen.<br /> * xrandr.autoupdate: If set to 'false', does *not* invoke xrandr automatically. Instead, the<br/> module will only refresh when displays are enabled or disabled (defaults to true)<br/><br/>Requires the following python module:<br/>* (optional) i3 - if present, the need for updating the widget list is auto-detected<br /><br />Requires the following executable:<br /> * xrandr<p/>![xrandr](../screenshots/xrandr.png) |
|yubikey |Shows yubikey information<br/><br/>Requires: https://github.com/Yubico/python-yubico<br/><br/>The output indicates that a YubiKey is not connected or it displays<br/>the corresponding serial number. |
|zpool |Displays info about zpools present on the system<br/><br/>Parameters:<br/>* zpool.list: Comma-separated list of zpools to display info for. If empty, info for all zpools<br /> is displayed. (Default: '')<br /> * zpool.format: Format string, tags {name}, {used}, {left}, {size}, {percentfree}, {percentuse},<br/> {status}, {shortstatus}, {fragpercent}, {deduppercent} are supported.<br/> (Default: '{name} {used}/{size} ({percentfree}%)')<br/>* zpool.showio: Show also widgets detailing current read and write I/O (Default: true)<br /> * zpool.ioformat: Format string for I/O widget, tags {ops} (operations per seconds) and {band}<br/> (bandwidth) are supported. (Default: '{band}')<br/>* zpool.warnfree: Warn if free space is below this percentage (Default: 10)<br /> * zpool.sudo: Use sudo when calling the `zpool` binary. (Default: false)<br/><br/>Option `zpool.sudo` is intended for Linux users using zfsonlinux older than 0.7.0: In pre-0.7.0<br/>releases of zfsonlinux regular users couldn't invoke even informative commands such as<br/>`zpool list`. If this option is true, command `zpool list` is invoked with sudo. If this option<br/>is used, the following (or ekvivalent) must be added to the `sudoers(5)`:<br/><br/>```<br/>\<username/ALL\> ALL = (root) NOPASSWD: /usr/bin/zpool list<br/>```<br/><br/>Be aware of security implications of doing this!<p/>![zpool](../screenshots/zpool.png) |