100% vibe coded. All code, the landing page and this README were AI-generated. Use at your own risk. Report bugs.
KDE Plasma 6 tray widget for Framework Laptops: fan control, power management, battery and sensor telemetry.
Not a fork. Independent frontend for the REST API of ozturkkl/framework-control by Kemal Ozturk.
- Fan control: auto, manual duty, drag-and-drop curve editor, hysteresis, rate limiting, per-fan overrides (Framework 16), calibration wizard
- Sensors: live temperature graphs, sensor selection, configurable time window
- Power: AC/battery profiles, EPP, governor, frequency limits, TDP and thermal controls (capability-driven)
- Battery: charge/discharge wattage, health, cycles, charge limit (25–100%), rate limit with SoC threshold
- Tray: temperature/RPM/SoC overlay, tooltip with live stats
- Offline detection: setup guide when the backend is missing or stopped
- Framework Laptop 13 or 16 (AMD/Intel)
- KDE Plasma 6 (Wayland or X11)
- Linux with systemd
- framework-control backend
Installs backend and widget:
curl -fsSL https://raw.githubusercontent.com/shrippen/FrameWidge/main/install.sh | bashThen add FrameWidge via the Plasma widget picker.
-
Backend:
curl -fsSL https://raw.githubusercontent.com/ozturkkl/framework-control/main/install-linux.sh | sudo bash -
Plasmoid:
git clone https://github.com/shrippen/FrameWidge.git cd FrameWidge kpackagetool6 -t Plasma/Applet -i package/ -
App icon (optional; the Configure dialog falls back to a generic icon without it):
mkdir -p ~/.local/share/icons/hicolor/scalable/apps cp package/contents/icons/hicolor/scalable/apps/framewidge.svg ~/.local/share/icons/hicolor/scalable/apps/
cd FrameWidge && git pull
kpackagetool6 -t Plasma/Applet -u package/# Plasmoid
kpackagetool6 -t Plasma/Applet -r org.kde.plasma.framewidge
# Backend (optional)
curl -fsSL https://raw.githubusercontent.com/ozturkkl/framework-control/main/uninstall-linux.sh | sudo bashRight-click the widget → Configure.
| Setting | Default | Description |
|---|---|---|
| Service port | 30912 |
framework-control port (AUR default) |
| Poll interval | 2000 ms |
Health check and data polling interval |
| Tray display | temp |
Compact icon content: temp, rpm, soc, icon |
┌──────────────────┐ HTTP (127.0.0.1) ┌─────────────────────────┐
│ Plasma Widget │ ──────────────────────────── │ framework-control │
│ (QML) │ GET/POST /api/* │ service (Rust/systemd) │
│ │ │ → framework_tool CLI │
└──────────────────┘ └─────────────────────────┘
Pure QML, no compilation. Talks to http://127.0.0.1:<port>/api/ via XMLHttpRequest.
MIT, see LICENSE. Based on framework-control by Kemal Ozturk (MIT).