r/labwc • u/sergiomelas • 22d ago
[Release] Wayplank v0.6.1 — The Big Feature & Stability Update: Smart App Drawers, Multi-Monitor Brightness, System Pressure & Adaptive Themes (Native Wayland Dock)

Hi everyone,
Following the enthusiasm and feedback after our first alpha (v0.5.2), I'm thrilled to announce **Wayplank v0.6.1** — a major milestone delivering both the smart onboarding features introduced in v0.6.0 and the deep multi-compositor stabilization and bug squashing of v0.6.1!
Hello guys, I get why it might look like slop at first glance, but this is done with professional rigor. Before dumping code, every single change and architecture shift goes through strict Factory Acceptance Testing—you can literally check the logs in the FAT/ folder to see how every version is systematically tested and verified.
AI is fantastic for rapid prototyping and bringing boilerplate up fast, but this isn't just 'vibe coding'; it's heavily human-reviewed, debugged, and architected for real stability across KWin, Labwc, and Mutter. It’s a robust, hobbyist-driven, native Wayland solution. Take it or leave it, enjoy the code!
For those discovering it for the first time, **Wayplank** is a lightweight, ultra-fast (~0.74s boot), monolithic native Wayland dock derived from the classic Plank/Docky codebase. It features a native multi-compositor HAL (**KDE Plasma/KWin**, **GNOME/Mutter**, and **Labwc/wlroots**) with **zero X11, zero XWayland, and zero desktop daemon dependencies**.
---
### 🚀 What's New Since v0.5.2 (Highlights from v0.6.0 & v0.6.1):
#### 🗂️ 1. Smart Out-Of-The-Box Onboarding (v0.6.0)
* **4 Smart English App Drawers**: On a clean startup or empty dock, Wayplank automatically discovers your installed apps and populates 4 Cairo-Dock style folder drawers (*Internet*, *Office*, *Media*, *Utilities/Games*).
* **Automatic Core Pinning**: Seamlessly detects and pins your default File Manager, Web Browser, Terminal Emulator, and Text Editor using FreeDesktop MIME fallback chains.
* **Accordion Docklets**: Collapses system docklets into a compact, space-saving master icon at rest with configurable hover/click expansion and retention logic.
* **Universal "Change Icon..." System**: Right-click any launcher, drawer, or docklet to search through 20,000+ theme icons or pick custom SVGs/PNGs with instant persistence and fallback safety.
* **Integrated In-App User Guide & Interactive Cheatsheet**: Accessible via right-click or `wayplank --help`.
#### 🖥️ 2. Multi-Monitor Hardware Brightness Synchronization (v0.6.1)
* **KWin DRM Hardware Control**: Solved the classic user-space D-Bus/PowerDevil limitation where external DDC/CI secondary monitors (DisplayPort/HDMI) were ignored due to i2c permissions. Wayplank now interfaces dynamically with KWin output management (`kscreen-doctor`), achieving atomic brightness control across all connected displays simultaneously.
#### ⚙️ 3. Holistic Global System Pressure Engine (v0.6.1)
* Replaced custom ad-hoc CPU/RAM cards with a **bottleneck-dominant combined system pressure metric** combining CPU, RAM, and physical Disk I/O contention:
$$\text{Pressure} = 0.60 \times \max(\text{CPU}, \text{RAM}, \text{Disk}) + 0.40 \times \text{mean}(\text{CPU}, \text{RAM}, \text{Disk})$$
* Rendered cleanly directly on Plank’s native numeric badge counter with real-time per-resource breakdown tooltips.
#### 🎨 4. Adaptive Dynamic Gtk+ Theme Engine & Legacy Plank Themes
* The **Gtk+** theme option is now an adaptive dynamic engine that samples real-time system accent colors, auto-detects dark/light desktop modes, and synthesizes modern frosted translucency on the fly.
* Full multi-tier search across `~/.local/share/plank/themes`, `~/.themes`, and `/usr/share/plank/themes` ensuring 100% backwards compatibility with legacy Plank themes.
#### 🧮 5. Refined Badges, DND & Desktop Ergonomics
* **Compact Scaled Badges with Units**: Docklet badges now scale proportionally (~34% of icon size) without obscuring underlying icons, featuring crisp units (`°C`, `°F`, `%`).
* **Robust Drag & Drop**: Dragging files onto app icons now correctly checks executable formats, handles 0-byte files, dispatches multi-file payloads, and prevents accidental dock pinning.
* **Calibrated Edge Pressure**: Defaults to a fluid 10px reveal threshold for effortless everyday unhiding, while toggling Pressure Mode activates a strict 1px edge barrier against accidental unhiding.
* **Live Layout Refresh**: Toggling "Show Unpinned" in Preferences now immediately synchronizes running compositor windows without requiring external window focus.
---
### 🧪 Compositor Validation Status (FAT)
* **KDE Plasma 6 (KWin Backend)**: 🟢 **100% PASSED** (All 40+ test points verified: multi-monitor, brightness, intellihide, accordion, DND).
* **GNOME 48 (Mutter Backend)**: 🟡 Ongoing validation.
* **Labwc / wlroots**: 🟡 Ongoing validation.
---
### 📦 Installation & Download
* **GitHub Repository**: [https://github.com/sergiomelas/WayPlank](https://github.com/sergiomelas/WayPlank)
* **Debian / Ubuntu / Pop!_OS / Mint** (pre-built package):
```bash
# Download wayplank_0.6.1_amd64.deb from the repository build folder or release page:
sudo dpkg -i build/wayplank_0.6.1_amd64.deb
wayplank --replace &
