A custom Wayland bar written in Rust + GTK4.
Note: This project is a work in progress (WIP).
- Bluetooth
- Dbusmenu (Potentially useful resource)
- Use custom widgets to reduce usage of
Rc<Mutex<...>> - Test with: Discord, blueman, heroic, nm-applet
- Use custom widgets to reduce usage of
- Audio (PipeWire)
- Network (Netlink)
- "
things.rs"
- Full Bluetooth control (to replace
blueman-manager)- Investigate where connection notifications originate (likely KDE, but may be Blueman or something else), and implement them.
- Don't forget to display battery levels somewhere (change icon color depending on battery level, and show precise level in tooltip)
- If possible, enable bluetooth when trying to connect device (is it possible to list unconnected devices when bluetooth is disabled ?) and disable bluetooth when last device is disconnected
- Full network control (to replace
nm-applet) - Bluetooth: deterministically sort items
- Workspaces: show icons of contained windows ? (i.e one small per window in the workspace)
- Restructure
tryfolas a workspace (use Varlink for IPC ?)tryfol-...: crates for modules inbackend/*that need to be shared between other cratestryfol-bar: the bar itselftryfol-daemon- SNI watcher
- Bluetooth notifications
- Auto-inhibit idle when media is playing (see
wayland-pipewire-idle-inhibit, which is what I currently use) - Sound + notifications for plugging/unplugging the power cable
- Battery notifications
- Playerctl replacement (so the "current player" is consistent across keybinds and the bar)
tryfol-idle-inhibitor: small executable to manually inhibit idling, used to prevent swayidle from triggering after resuming from hibernation (run before sleep and terminate on resume, though it might not solve the issue)
- Show USB devices battery if available (logitech mouse)
- Use a consistent method of displaying errors (either all with
Displayor all withDebug) - Network: add ping with router and with internet
- Network: if ping with the routeur exceed a thresold, disconnect and reconnect (in Daemon)
- The Bluetooth module frequently triggers panics, though these are caught by GTK. This should be resolved after the module is refactored.
- Errors from the mpris module due to players disappearing. Those are not severe in any way, but I might refactor the mpris module to fix them at some point.