Widgets Reference
This page documents every widget available in Tsumiki, its configuration options, defaults, and behavior.
Widgets are configured under [widgets.<name>] in config.toml and placed in the bar via layout sections.
System Information Widgets
Section titled “System Information Widgets”Displays CPU usage with multiple display modes.
[widgets.cpu]show_icon = trueicon = ""tooltip = trueround = truetemperature_unit = "celsius"show_unit = truesensor = "acpitz"mode = "graph" # "label" | "graph" | "circular"graph_length = 4mode: Display style —labelshows percentage text,graphshows a sparkline,circularshows a circular progress ring.graph_length: Number of data points for the sparkline graph.sensor: Thermal zone sensor path (e.g.acpitz,k10temp). Leave empty for auto-detect.
Memory
Section titled “Memory”Displays memory usage with multiple display modes.
[widgets.memory]show_icon = trueicon = ""tooltip = truemode = "label" # "label" | "graph" | "circular"graph_length = 4unit = "gb" # Display unit for memory valuesDisplays GPU usage (supports AMD via amdgpu and NVIDIA via nvidia-smi).
[widgets.gpu]show_icon = trueicon = ""tooltip = truemode = "circular" # "label" | "graph" | "circular"graph_length = 4Storage
Section titled “Storage”Displays disk usage for a given path.
[widgets.storage]path = "/"show_icon = trueicon = ""mode = "label" # "label" | "graph" | "circular"tooltip = truegraph_length = 4unit = "gb"Network Usage
Section titled “Network Usage”Monitors real-time network upload/download speeds.
[widgets.network_usage]tooltip = truelabel_format = "{upload} {download} "upload_threshold = 1024download_threshold = 1024kb_digits = 0mb_digits = 2interval = 2000 # Polling interval in millisecondsVariables available in label_format: {upload}, {download}.
Updates
Section titled “Updates”Checks for system package updates (Arch Linux, Flatpak, Snap, Homebrew).
[widgets.updates]show_icon = trueavailable_icon = ""no_updates_icon = ""os = "arch"hover_reveal = truereveal_duration = 500interval = 3600 # Refresh interval in secondstooltip = trueterminal = "kitty"pad_zero = falselabel = trueauto_hide = falseflatpak = truesnap = falsebrew = falseinterval: Polling interval in seconds (default: 3600 = 1 hour).os: Distribution for native package checking (supportsarch,fedora,ubuntu).flatpak/snap/brew: Enable checking for these package formats.
Hardware & Power Widgets
Section titled “Hardware & Power Widgets”Battery
Section titled “Battery”Shows battery level with customizable icons and notifications.
[widgets.battery]full_battery_level = 100hide_percent_when_full = truehide_when_missing = trueicons = ["", "", "", "", ""]tooltip = truelabel_format = "{icon} {percent}"
[widgets.battery.notifications]low_threshold = 10full_battery = falselow_battery = falsecharging = falseVariables available in label_format: {icon}, {percent}, {time_remaining}.
The notifications section controls which battery events trigger desktop notifications.
Volume
Section titled “Volume”Controls system audio output volume.
[widgets.volume]tooltip = truestep_size = 5Click to toggle mute, scroll to adjust volume.
Brightness
Section titled “Brightness”Controls screen and keyboard brightness.
[widgets.brightness]tooltip = truestep_size = 5Requires brightnessctl. Click to toggle, scroll to adjust.
Bluetooth
Section titled “Bluetooth”Manages Bluetooth connections and visibility.
[widgets.bluetooth]label = truetooltip = trueOpens a popover to manage paired devices and toggle Bluetooth.
Microphone
Section titled “Microphone”Shows microphone status and muting.
[widgets.microphone]label = falsetooltip = trueshow_icon = trueClick to toggle microphone mute.
Power Button
Section titled “Power Button”System power menu with shutdown, reboot, suspend, hibernate, lock, and logout.
[widgets.power]icon = ""tooltip = trueitems_per_row = 3icon_size = 100show_icon = truelabel = falseconfirm = true
[widgets.power.item_shortcuts]shutdown = "s"reboot = "r"hibernate = "h"suspend = "u"lock = "l"logout = "o"
[widgets.power.buttons]shutdown = "systemctl poweroff"reboot = "systemctl reboot"hibernate = "systemctl hibernate"suspend = "systemctl suspend"lock = "loginctl lock-session"logout = "loginctl terminate-user $USER"confirm: Shows a confirmation dialog before executing power actions.item_shortcuts: Keyboard shortcuts for power menu items.
Hypridle
Section titled “Hypridle”Toggle Hyprland’s idle management daemon.
[widgets.hypridle]enabled_icon = ""disabled_icon = ""label = truetooltip = trueHyprsunset
Section titled “Hyprsunset”Toggle blue-light filter (night mode) via Hyprsunset.
[widgets.hyprsunset]temperature = "2800k"enabled_icon = ""disabled_icon = ""label = truetooltip = trueHyprpicker
Section titled “Hyprpicker”Color picker that captures a color from the screen.
[widgets.hyprpicker]icon = ""tooltip = truelabel = falsequiet = falseshow_icon = trueThe selected color is copied to clipboard. In quiet mode, no notification is shown.
Privacy Indicator
Section titled “Privacy Indicator”Shows when applications are using the microphone, camera, or screen sharing.
[widgets.privacy_indicator]tooltip = truehide_when_inactive = truemodules = ["camera", "microphone", "screen"]Desktop & Workspace Widgets
Section titled “Desktop & Workspace Widgets”Workspaces
Section titled “Workspaces”Displays virtual desktops with click/scroll switching. See the full Workspaces documentation for details.
[widgets.workspaces]count = 10hide_unoccupied = trueignored = [-99]reverse_scroll = falsestyle = "numbered" # "numbered" | "pill" | "icon" | "default" | "underline" | "bubble"empty_scroll = falselabel_format = "{id}"icon_map = {}style: Choose fromnumbered,pill,icon,default,underline, orbubble.icon_map: Map workspace IDs to custom icons:{ "1": "", "2": "" }.label_format: Format string with{id}variable.
Window Title
Section titled “Window Title”Shows the title of the currently focused window.
[widgets.window_title]icon = truetruncation = truetruncation_size = 50tooltip = truemappings = truetitle_map = []fallback = "class" # "class" | "title"title_map: List of mapping rules to rename window titles.fallback: What to show when no title is available.
Window Count
Section titled “Window Count”Shows the number of windows in the current workspace.
[widgets.window_count]label_format = " [{count}]"hide_when_zero = truetooltip = trueVariables available in label_format: {count}.
Overview Button
Section titled “Overview Button”Button that opens the window overview/exposé.
[widgets.overview_button]icon = ""tooltip = truelabel = falseTaskbar
Section titled “Taskbar”Shows running applications as clickable icons similar to a traditional taskbar.
[widgets.taskbar]icon_size = 22ignored = []tooltip = trueDate, Time & Calendar
Section titled “Date, Time & Calendar”Date & Time Menu
Section titled “Date & Time Menu”Shows the current date/time with a calendar popover and event notifications.
[widgets.date_time]date_format = " %a %b %d,"calendar = trueclock_format = "12h" # "12h" | "24h"hover_reveal = falsereveal_duration = 500
[widgets.date_time.notification]enabled = truecount = truehide_count_on_zero = trueWorld Clock
Section titled “World Clock”Shows time in multiple timezones.
[widgets.world_clock]icon = ""use_24hr = trueshow_icon = truetimezones = ["America/New_York", "Asia/Tokyo"]Media & Audio Widgets
Section titled “Media & Audio Widgets”MPRIS Media Controls
Section titled “MPRIS Media Controls”Displays currently playing media with playback controls.
[widgets.mpris]truncation_size = 20tooltip = truelabel_format = "{title} - {artist}"hide_when_no_player = trueignore = []Variables available in label_format: {title}, {artist}, {album}, {name}.
Requires playerctl. Automatically hides when no media player is running.
Cava Audio Visualizer
Section titled “Cava Audio Visualizer”Real-time audio visualization powered by Cava.
[widgets.cava]bars = 10color = "#89b4fa"Requires Cava to be installed and configured.
System Utilities
Section titled “System Utilities”Screenshot
Section titled “Screenshot”Capture screenshots with annotation support.
[widgets.screenshot]path = "Pictures/Screenshots"icon = ""tooltip = trueannotation = truedelayed = falsedelayed_timeout = 5000label = falsecapture_sound = falseUses grimblast for captures and satty for annotations.
Screen Recording
Section titled “Screen Recording”Start/stop screen recording with optional audio.
[widgets.recorder]path = "Videos/Screencasting"tooltip = trueaudio = truedelayed = falsedelayed_timeout = 5000Uses wf-recorder for recording.
OCR (Optical Character Recognition)
Section titled “OCR (Optical Character Recognition)”Extract text from a screen region using Tesseract.
[widgets.ocr]icon = ""tooltip = truelabel = falseshow_icon = truequiet = falseRequires tesseract, slurp, and imagemagick.
Clipboard Manager
Section titled “Clipboard Manager”Clipboard history manager with image support.
[widgets.clipboard]icon = ""label = falsetooltip = trueitem_tooltip = falseshow_images = trueenable_pinning = trueUses cliphist for clipboard history.
USB Manager
Section titled “USB Manager”Manage USB drive mounting and ejection.
[widgets.usb_manager]icon = ""label = falsetooltip = trueauto_refresh = truerefresh_interval = 5Input & Language Widgets
Section titled “Input & Language Widgets”Keyboard Layout
Section titled “Keyboard Layout”Displays the current keyboard layout.
[widgets.keyboard]icon = ""label = truetooltip = trueshow_icon = falseLanguage
Section titled “Language”Shows the current input language.
[widgets.language]icon = ""tooltip = truetruncation_size = 2show_icon = falseSubmap
Section titled “Submap”Displays the active Hyprland keybind submap.
[widgets.submap]icon = ""label = truetooltip = trueshow_icon = falsehide_on_default = falseHides automatically when the active submap is the default.
UI & Application Widgets
Section titled “UI & Application Widgets”Launcher Button
Section titled “Launcher Button”Opens the application launcher popup.
[widgets.launcher_button]icon = "view-app-grid-symbolic"icon_size = 20tooltip = trueQuick Settings
Section titled “Quick Settings”A comprehensive quick settings panel with user info, controls, media, and shortcuts.
[widgets.quick_settings]hover_reveal = false
[widgets.quick_settings.user]avatar = "~/.face"name = "system"distro_icon = true
[widgets.quick_settings.controls]sliders = ["brightness", "volume"]
[widgets.quick_settings.media]enabled = trueignore = []truncation_size = 30show_album = trueshow_artist = trueshow_time = trueshow_time_tooltip = true
[widgets.quick_settings.shortcuts]enabled = true
[[widgets.quick_settings.shortcuts.items]]icon = ""label = "Terminal"command = "kitty"tooltip = "Open terminal"icon_size = 18System Tray
Section titled “System Tray”System tray for background applications (NetworkManager, Bluetooth, etc.).
[widgets.system_tray]icon_size = 16ignored = []hidden = []hide_when_empty = falseWallpaper Button
Section titled “Wallpaper Button”Opens the wallpaper selection popup.
[widgets.wallpaper]icon = ""label = falsetooltip = trueSettings Button
Section titled “Settings Button”Opens the in-app settings GUI.
[widgets.settings]icon = ""tooltip = truelabel = falseTheme Switcher
Section titled “Theme Switcher”Quickly switch between installed themes.
[widgets.theme_switcher]icon = ""notify = false # Show notification on theme changeCheatsheet
Section titled “Cheatsheet”Displays a searchable keybind cheatsheet for Hyprland.
[widgets.cheatsheet]label = truelabel_text = "Keys"tooltip = truetitle = "Hyprland Cheatsheet"columns = 3groups_per_page = 6max_entries_per_group = 8Emoji Picker
Section titled “Emoji Picker”Search and insert emoji characters.
[widgets.emoji_picker]icon = ""label = falsetooltip = trueper_row = 9per_column = 4Kanban Board
Section titled “Kanban Board”A simple Kanban task management board.
[widgets.kanban]icon = ""label = falsetooltip = truePomodoro Timer
Section titled “Pomodoro Timer”A Pomodoro productivity timer.
[widgets.pomodoro]icon = "🍅"label = truelabel_text = "Pomo"tooltip = trueGit Companion
Section titled “Git Companion”Displays GitHub repository information (issues, PRs).
[widgets.git_companion]icon = ""label = falselabel_text = "Git"tooltip = trueusername = "rubiin"repository = "rubiin/tsumiki"avatar_size = 44default_tab = "issues" # "issues" | "pull_requests"cache_ttl = 300Cloudflare WARP
Section titled “Cloudflare WARP”Manage Cloudflare WARP VPN connection — connect, disconnect, and view status.
[widgets.cloudflare_warp]label = falselabel_text = "WARP"tooltip = trueconnected_icon = ""disconnected_icon = ""- connected_icon / disconnected_icon: Nerd Font icons shown in the bar for each state.
- Click the widget to open a popover with a toggle button.
- Requires
warp-clifrom Cloudflare WARP Client for Linux. - The service polls
warp-cli statusevery 5 seconds to detect state changes.
DNS Switcher
Section titled “DNS Switcher”Quickly switch between popular DNS providers directly from the bar.
[widgets.dns_switcher]icon = ""label = falselabel_text = "DNS"tooltip = trueClick to open a popover with pre-configured providers:
| Provider | Primary DNS | Secondary DNS |
|---|---|---|
| Cloudflare | 1.1.1.1 |
1.0.0.1 |
8.8.8.8 |
8.8.4.4 |
|
| OpenDNS | 208.67.222.222 |
208.67.220.220 |
| AdGuard | 94.140.14.14 |
94.140.15.15 |
| Quad9 | 9.9.9.9 |
149.112.112.112 |
Includes a “Reset to Default (ISP)” button to restore automatic DNS.
- Uses
nmcli(NetworkManager) to manage DNS settings. - DNS changes require Polkit authentication (
pkexec). - The service polls
nmclievery 3 seconds to detect the current DNS server.
IP Monitor
Section titled “IP Monitor”Displays the current IP address.
[widgets.ip_monitor]icon = ""label = falselabel_text = "IP"tooltip = trueStopwatch
Section titled “Stopwatch”A simple stopwatch/timer.
[widgets.stopwatch]stopped_icon = ""running_icon = ""Click Counter
Section titled “Click Counter”A counter that increments on each click.
[widgets.click_counter]count = 0Breathe
Section titled “Breathe”A breathing exercise guide widget.
[widgets.breathe]icon = ""label = falsetooltip = trueWeather
Section titled “Weather”Displays current weather conditions for a location.
[widgets.weather]location = "kathmandu"label_format = "{temperature} {condition}"tooltip = trueexpanded = truetemperature_unit = "celsius" # "celsius" | "fahrenheit"wind_speed_unit = "kmh" # "kmh" | "mph" | "ms" | "beaufort"interval = 86400hover_reveal = truereveal_duration = 500provider = "open-meteo" # "open-meteo" | "wttr"Variables available in label_format: {temperature}, {condition}.
Layout & Grouping Widgets
Section titled “Layout & Grouping Widgets”Divider
Section titled “Divider”A visual separator between bar sections.
[widgets.divider]size = 2For advanced configuration, see Advanced Configuration for configuration and usage.