Control Center
The Control Center is a single-card anchored Quickshell menu for launching applications, panel settings, system health, quick actions, appearance settings, power management, and keybind discovery.
Open: Super + F1, or run dwm-controlcenter from a
terminal.
The popup opens from the panel logo. Applications, Power, Settings, System Health, Keybinds, and System Info are available directly from the main menu. Bar Widgets, Quick Actions, Appearance, and Power Settings replace the menu contents in the same card and provide a Back control. Press Esc or click outside the card to close it from any page.
The main menu also has a Window layout row of three buttons, Tile, Floating and Monocle, for people who do not know the layout keybindings. The button for the current layout is highlighted and follows the keyboard, so pressing Super + T or Super + F moves the highlight. Layouts are per tag, and the row acts on the tag and monitor that currently have focus. The buttons are disabled when dwm does not report its layout (an older dwm build).
The Utilities section opens the unified Settings application directly, where
each section shows the current state and changes what it can. It can also be
opened with dwm-settings open.
The Utilities section also shows the installed lyona version, and — only when a newer release is available on the configured channel — an Update available row naming it. Both open Settings -> System. There is no update action in Control Center itself: applying an update is a multi-minute privileged operation that restarts Quickshell, and does not belong behind a one-click row next to the volume slider. See Settings and Updating and Rollback.
Network Popover
The panel network indicator opens a Quickshell network popover. It shows active NetworkManager connections, scans visible Wi-Fi networks, and connects to open or WPA personal networks directly. Successful Wi-Fi connections are saved as NetworkManager profiles, so they reconnect normally in later sessions.
Hidden SSIDs and enterprise Wi-Fi are handled through the optional
nm-connection-editor fallback when it is installed.
Bluetooth Popover
The panel Bluetooth indicator opens a compact device manager. It can power the
adapter on or off, scan for devices, pair and trust a new device, connect a
paired device, and disconnect a connected device through bluetoothctl.
Panel Widgets
The Bar Widgets page can show or hide the workspace, volume, Bluetooth,
network, power, calendar and weather widgets. Those choices are stored in the
project-owned ~/.config/lyona/panel-widgets.conf state and apply to every
monitor and future Quickshell session. Settings Appearance exposes the same
shared controls and can restore the defaults: everything on except the weather.
Calendar
Click the panel clock to open a month calendar.
- Keys: the arrows move a day or a week, Page Up and Page Down a month, and Home returns to today.
- Closing: Escape or a click outside closes it.
- Off: with the Calendar switch off, the clock does nothing when clicked.
- IPC:
quickshell ipc --path ~/.config/quickshell/shell.qml call calendar toggleopens it from a hotkey too.
Weather
The weather is off until you turn its Bar Widgets switch on and set a location in Settings, Appearance, Weather.
- What is sent: the shell then asks Open-Meteo for the current temperature, at most every 30 minutes, and only while the widget is on. No account or key is needed. The location you typed is sent to Open-Meteo and nothing else is; your position is never guessed from your IP address.
- Units: they follow your locale (Fahrenheit in the US and a few other regions) unless you choose Celsius or Fahrenheit there.
- When it fails: the panel shows “Unavailable” and tries again later.
- The helper: the panel uses
lyona-weather, which keeps its settings in~/.config/lyona/weather.confand its cache in~/.cache/lyona/weather/, both private to you.
The redesigned panel retains the active-window title, status segments, and system tray, and shows all nine dwm tags (workspaces). Hovering icon-only panel controls displays a text tooltip.
The panel, popovers, and control-center cards use fully opaque colors. Their
palette follows the active theme in themes.toml and updates when that file is
changed.
Modules
System Health
System Health opens as a separate dashboard filling the current monitor below
the panel, which stays visible. It starts two read-only scans: session checks run immediately, and a
privileged scan completes current-boot journal, kernel, system-service, and
drive checks. It always asks: the running polkit agent requests graphical
authorization for the root-owned ${PREFIX}/libexec/lyona/dwm-system-health-root,
under its own action (com.lyona.system-health.manage, “Authentication is
required to read system logs and repair system services”). That helper accepts
only the privileged scan and the listed service repairs. Cancelling the prompt
leaves a partial report and marks its coverage as incomplete.
The dashboard groups checks into:
- Boot and kernel errors from
journalctl, withdmesgas a fallback - Failed user and system services, one service per row
- Memory, pressure, load, swap, filesystem space, and inode use
- Local routing, resolver, and NetworkManager state
- X11, D-Bus, dwm, Quickshell, Picom, audio, and managed configuration
- Required commands, libraries, terminals, and package-database consistency
- Available battery, thermal, and SMART drive-health data
Use Issues Only to hide passing checks. Expand any card to see bounded evidence; the dashboard counts the complete matching log set even when only a sample is displayed. It does not contact an external service to test Internet connectivity and does not scan previous boots.
Boot-journal and kernel-error cards with matching entries include Copy and
Export. Copy sends the card’s readable bounded evidence to the X11
clipboard with xclip. Export saves the same content in the user’s home
directory as a private timestamped file, such as
boot2026-07-09-143000.txt or kernel-errors2026-07-09-143000.txt. Existing
files are never overwritten.
Repair buttons always require confirmation. Each failed service row offers
Start, Stop, Restart, Disable, and Enable. User units are managed with
systemctl --user; system units request administrator authorization through
polkit. An action is accepted only while that exact service remains failed.
The dashboard can also restart known desktop/audio components, launch the
interactive dependency installer, restart NetworkManager or Bluetooth, and
repair the detected time-synchronization provider.
Installing the health helper in a root-owned system path remains recommended:
make
sudo make install-system
A checkout’s copy of a helper is never elevated, and a cached sudo session
is never used: without the root-owned installed helper, the privileged scan and
the system repairs are unavailable and the dashboard says so.
Quick Actions
| Action | Description |
|---|---|
| Restart Picom | Restart the compositor through dwm-settings-picom, which picks the backend for this GPU |
| Restart Quickshell | Reload the managed Quickshell shell |
| Reload Wallpaper | A random wallpaper from ~/Pictures/backgrounds/ |
| Restart NetworkManager | The System Health repair: polkit asks for authorization, then NetworkManager restarts |
| Dependency Check | Opens check-deps.sh in a terminal |
| Self-Heal | Runs the script named in ~/.config/lyona/self-heal.path (or dwm-self-heal on PATH) in a terminal; shown only when one is set up |
| Install Missing Deps | In a terminal: install.sh from a checkout, or the required and desktop packages through pacman from an install |
| Wallpaper Folder | Open ~/Pictures/backgrounds/ in the file manager |
| GTK Settings | Launch nwg-look for GTK theming; shown only when nwg-look is installed |
While an action runs, the status line names it (“Running Restart Picom…”), then says “done”, “opened in a terminal” for the ones that work in a terminal, or why it failed.
Appearance
The Appearance page lists every theme in ~/.config/lyona/themes.toml, the
active one marked. Choose one to apply it at once. The wallpaper and GTK
actions are in Quick Actions above.
Power Settings
The Power Settings card retains the existing persisted screen-DPMS and auto-lock controls. Each feature can be enabled or disabled and assigned a 5-minute, 10-minute, 15-minute, 30-minute, or 1-hour timeout.
Both are on by default. After 10 minutes idle the screen turns off, and the
desktop locks 5 seconds later; moving the mouse in those 5 seconds cancels without
a password. Turning either off, or picking another timeout, is saved in
~/.config/lyona/power.conf and wins over the default. A choice you saved before
this default changed is kept. The lock uses light-locker, which locks through
LightDM (Lyona’s display manager). In a startx session the screen still turns off,
but the automatic lock needs LightDM.
Below them, the Power Settings card lists the batteries of wireless mice, keyboards, headsets and other peripherals that report one, each with its level (“40%”, or a word such as “Low” for a device that reports only that) and whether it is charging. With none, nothing extra is shown. A peripheral that drops below 15% sends one notification, not repeated until it has been charged.
The full Settings Power page also shows battery, external-power, profile, suspend, and lid capabilities, and a Devices section with the same peripheral batteries. Its Lock, Log Out, Suspend, Reboot, and Shutdown buttons use the same shared root QML action model and confirmation policy as the panel Power menu. Denied or failed actions remain attributed to the surface that requested them.
Defaults and Startup Applications
Settings -> Defaults manages browser, terminal, file-manager, and selected MIME handlers through versioned XDG records. Restore Previous is offered only while the recovery image still matches the state written by the last action.
File-type choices include installed handlers such as sxiv and Feh even when
their desktop entries use NoDisplay=true to stay out of launcher menus.
Disabled entries and handlers whose executables are missing remain excluded, and
the browser, file-manager and terminal roles still hide menu-hidden entries.
The same page lists effective XDG autostart entries and their vendor or user origin. Enable, disable, and reset create or update user overrides for the next login; vendor desktop files are never edited. Changes to the locker, compositor, or polkit agent require explicit confirmation.
Keybind Viewer
Displays all bindings from hotkeys.toml in a Quickshell list. Same
as pressing Super + /.
Running from Terminal
dwm-controlcenter
The script is a compatibility wrapper around the Quickshell IPC target. For a
key binding, prefer lyona-shell controlcenter toggle (or open), which the
default bindings use and which follows the IPC when it changes:
quickshell ipc --path "${XDG_CONFIG_HOME:-$HOME/.config}/quickshell/shell.qml" call controlcenter toggle
Open or refresh System Health directly through its IPC target:
quickshell ipc --path "${XDG_CONFIG_HOME:-$HOME/.config}/quickshell/shell.qml" call systemhealth open
quickshell ipc --path "${XDG_CONFIG_HOME:-$HOME/.config}/quickshell/shell.qml" call systemhealth refresh
The diagnostic helper can also produce its structured snapshot in a terminal:
dwm-system-health scan-user