|apt |Displays APT package update information (<toupgrade>/<security>)<br>Requires the following debian packages:<br> * update-notifier-common<br><br> |
|arch-update |Check updates to Arch Linux.<br> |
|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<br> |
|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_all |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> * batter.showremaining : If set to true (default) shows the remaining time until the batteries are completely discharged<br> |
|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)<br><br> |
|brightness |Displays the brightness of a display<br><br>Parameters:<br>* brightness.step: The amount of increase/decrease on scroll in % (defaults to 2)<br> * brightness.device_path: The device path (defaults to /sys/class/backlight/intel_backlight), can contain wildcards (in this case, the first matching path will be used)<br><br> |
|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<br> |
|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> * 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> |
|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}%")<br> |
|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<br> |
|datetime |Displays the current date and time.<br><br>Parameters:<br>* datetime.format: strftime()-compatible formatting string<br> * date.format : alias for datetime.format<br>* time.format : alias for datetime.format<br> * datetime.locale: locale to use rather than the system default<br>* date.locale : alias for datetime.locale<br> * time.locale : alias for datetime.locale<br> |
|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<br> |
|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<br><br> |
|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<br> |
|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}%)")<br> * (deprecated) disk.showUsed: Show used space (defaults to yes)<br>* (deprecated) disk.showSize: Show total size (defaults to yes)<br> * (deprecated) disk.showPercent: Show usage percentage (defaults to yes)<br> |
|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)<br><br> |
|docker_ps |Displays the number of docker containers running<br><br>Requires the following python packages:<br> * docker<br><br> |
|dunst |Toggle dunst notifications. |
|error |Draws an error widget.<br> |
|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.<br> |
|git |Print the branch and git status for the<br>currently focused window.<br><br>Requires:<br>* xcwd<br> * Python module 'pygit2'<br> |
|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.<br> |
|gpmdp |Displays information about the current song in Google Play music player.<br><br>Requires the following executable:<br> * gpmdp-remote<br> |
|hddtemp |Fetch hard drive temeperature data from a hddtemp daemon<br>that runs on localhost and default port (7634)<br> |
|hostname |Displays the system hostname. |
|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<br> |
|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")<br> |
|kernel |Shows Linux kernel version information |
|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.<br> |
|layout |Displays and changes the current keyboard layout<br><br>Requires the following executable:<br> * setxkbmap<br> |
|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)<br> |
|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}"<br> |
|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<br> |
|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> |
|network_traffic |Displays network traffic<br> * No extra configuration needed<br> |
|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}")<br> |
|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/)<br> |
|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<br> |
|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<br> |
|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)<br> |
|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.interval: Time in seconds between two RTT checks (defaults to 60)<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)<br> |
|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!"'<br> |
|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<br><br> |
|progress |<br>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<br> |
|publicip |Displays public IP address<br><br>Requires the following python packages:<br>* requests<br><br>Parameters:<br> * publicip.region: us-central (default), us-east, us-west, uk, de, pl, nl<br> * publicip.service: web address that returns plaintext ip address (ex. "http://l2.io/ip")<br> |
|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><br>Requires the following executable:<br> * pulseaudio<br>* pactl<br> * pavucontrol<br> |
|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 "geoclue2" (default), "ipinfo" (requires the requests package), or "manual"<br>* redshift.lat : latitude if location is set to "manual"<br> * redshift.lon : longitude if location is set to "manual"<br> |
|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<br> |
|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<br> |
|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)<br> |
|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> |
|shell | Execute command in shell and print result<br><br>Few command examples:<br> 'ping 1.1.1.1 -c 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<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)<br> |
|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)<br> |
|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%%"<br> |
|spacer |Draws a widget with configurable text content.<br><br>Parameters:<br> * spacer.text: Widget contents (defaults to empty string)<br> |
|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<br> |
|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)<br> |
|sun |Displays sunrise and sunset times<br><br>Parameters:<br>* cpu.lat : Latitude of your location<br> * cpu.lon : Longitude of your location<br> |
|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')<br> |
|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)<br> |
|test |Test module<br> |
|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<br> |
|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)<br> |
|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> |
|twmn |Toggle twmn notifications. |
|uptime |Displays the system uptime. |
|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)<br> |
|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> * 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><br> |
|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 from http://ipinfo.io<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<br> |
|xkcd |Opens a random xkcd comic in the browser. |
|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<br> |
|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!<br> |