A modern looking clock widget for KDE Plasma 6!
- Auto-scale — widget content automatically fits its size
- SDF rendering — maximum sharpness at any scale
- Seconds support — display seconds with
hh:mm:ss - Custom time format — use any Qt time format (
hh:mm,hh:mm:ss AP, etc.) - Custom day/date format — e.g.
ddddfor full name,dddfor abbreviated,dd MMM yyyy - Uppercase toggle — capitalize day and date names
- Bold font toggle — per-section bold setting for day, date, and time
- Custom locale — override system locale for date/time names
- Language presets — quick configuration with built-in locale presets
- Configurable spacing — adjust spacing between elements
- C++ timezone plugin — compiled Qt6/QML plugin for accurate timezone formatting (
formatDateTimeInZone)
- Static text — display any custom message (e.g. "Good Morning", "Today is")
- Dynamic format — interpret text as Qt date/time format for live updates (e.g.
HH:mm,dddd d MMMM) - Full styling — separate font, size, spacing, bold, and color settings
- Display any IANA timezone —
America/New_York,Asia/Tokyo,Europe/Paris, etc. - Timezone selector — preset list of 40+ major cities, or type a custom IANA ID
- Label support — add a short label before the timezone (e.g. "NYC", "Tokyo")
- Auto-derived format — timezone format mirrors the main time format (seconds always stripped)
- DST-aware — C++ Qt backend with direct
QDateTime::toTimeZone()conversion for accurate formatting
Four configurable color modes:
- Custom — each element has its own independent color
- Follow system theme — text inherits the Plasma theme text color (light/dark)
- Inverse system theme — inverted color for maximum contrast on any background
- Wallpaper-derived — automatically detects wallpaper brightness and picks white or black text for optimal contrast
- Real-time updates — uses
QFileSystemWatcher(C++) to detect wallpaper changes instantly - No polling — eliminates the old 5-second timer, reducing CPU usage
- Auto-adaptation — color mode switches to wallpaper-based colors when wallpaper changes
- Save/load themes — save your configuration as named themes
- Export/import — share themes as JSON files
- Per-section reset — restore individual sections to defaults
- JSON import/export — full configuration backup (dotfile support)
- Live preview — real-time preview with your actual desktop wallpaper as background, at 16:9 aspect ratio with proportional text scaling
- Wallpaper preview — the wallpaper image is rendered behind the preview text (C++
QQuickImageProvider), with a semi-transparent overlay for readability - Auto-scale simulation — when auto-scale is enabled, text size adapts to fit within the preview area
- Element reorder — numbered list (① ② ③ ④ ⑤) with KDE-style arrows to reorder day, date, time, custom, and timezone
- Organized UI — sections for Preview, Global, Day, Date, Time, Custom Text, Timezone, and Themes
- System diagnostics — displays Qt version, platform, screen resolution, locale
- Plugin status — shows whether TimeZone and Wallpaper C++ plugins are loaded
- Theme color detection — reports Plasma theme colors when available (shows "N/A" in standalone KCM context)
- Wallpaper info — current wallpaper path, detected brightness (dark/light), color scheme
- Font browser — lists up to 339 available system fonts
- Log viewer — full log history displayed inline, with copy button
- Async log fetch — fetch Plasma Shell logs via
journalctlasynchronously (non-blocking) - Export to file — save complete debug info to
/tmp/modernreclock_log_export.txt
- 13 language presets — locale presets for date/time formatting: English, French, German, Spanish, Italian, Dutch, Polish, Portuguese, Russian, Japanese, and more
- Translated UI — currently translated in English, French, German, and Spanish
- Contributing — translations welcome! See the Translations section
Install directly from the KDE Store in your Plasma desktop:
- Right-click your desktop or panel → "Add Widgets"
- Click "Get New Widgets..." → "Download New Plasma Widgets"
- Search for "Modern reClock"
- Click "Install"
sh -c "$(curl -fsSL https://raw.githubusercontent.com/YoannDev90/KDE-Modern-reClock/main/install-dist.sh)"- Download
com.github.yoanndev90.modernreclock-VERSION.plasmoidfrom the latest release - Install:
kpackagetool6 -t Plasma/Applet -i com.github.yoanndev90.modernreclock-VERSION.plasmoid
- Or use Plasma installer ("Add Widgets" > "Install from Local File")
Note: The
.plasmoidincludes the x86_64 C++ plugin. After install, if features like timezone or wallpaper detection are disabled, open the widget config and follow the instructions to copy the plugin to the QML directory.
C++ plugins: The install script will try to build all C++ plugins (timezone, wallpaper, and logger) from source. If cmake/KF6-dev are not installed, it will automatically download precompiled binaries for your architecture from the release.
- Download from the release:
com.github.yoanndev90.modernreclock-VERSION.plasmoidmodernreclock-plugins-VERSION-ARCH.zip(matching your architecture)
- Extract the zip, run
install-local.shfrom the extracted folder
git clone https://github.com/YoannDev90/KDE-Modern-reClock
cd KDE-Modern-reClock
./install-local.shUse --fr to restart Plasma automatically:
./install-local.sh --frThe widget ships three C++ Qt6/QML plugins compiled into a single shared library libmodernreclock_backend.so:
| Plugin | Namespace | Purpose |
|---|---|---|
| TimeZoneHelper | ModernRecClock.TimeZone |
IANA timezone formatting via QDateTime::toTimeZone() |
| WallpaperHelper | ModernRecClock.Wallpaper |
Desktop wallpaper path detection + brightness + QFileSystemWatcher |
| WallpaperConfig | Internal | Shared INI parsing for plasma-org.kde.plasma.desktop-appletsrc and kdeglobals |
| WallpaperImageProvider | image://modernreclock/wallpaper |
QQuickImageProvider serving the current wallpaper for the KCM preview |
| Logger | ModernRecClock.Log |
Structured logging (info/debug/warn), async journalctl fetch, file export |
| Arch | Status |
|---|---|
| x86_64 | ✅ Precompiled binary available |
| aarch64 | ✅ Precompiled binary available |
Other architectures: compile from source with cmake and kf6-coreaddons-dev.
Open the widget's configuration panel and navigate to the Debug tab. You can:
- View system info, plugin status, and wallpaper diagnostics
- Browse available system fonts
- Review the full log history for all widget components
- Copy debug info to clipboard for bug reports
- Export logs to
/tmp/modernreclock_log_export.txtfor sharing - Fetch recent Plasma Shell logs asynchronously (requires
journalctlaccess)
If you want to help translate this widget:
-
Go to the
translate/folder. -
If your language doesn't have a
.pofile yet, usetemplate.potto create one (e.g.,fr.po). -
Use a tool like Poedit to fill in the translations.
-
Run the
merge.shscript to update the template and sync your.pofile with new strings:cd translate ./merge.sh -
Run the
build.shscript to compile the translations:./build.sh
-
Submit a Pull Request with your new or updated
.pofile!
This project is licensed under the GNU General Public License v3.0.


