f5ddcad45ce9a87b2e5d91d072eeafbcb43f6866
Deskmeter GNOME Integration
Display your current deskmeter task in the GNOME panel or in a standalone window.
Quick Start
Task Window (No logout required)
# Run the task window with auto port detection
python3 task_window.py
# Make it always-on-top and visible on all workspaces
wmctrl -r "Deskmeter Task" -b add,above,sticky
GNOME Extension (Requires logout)
Extension is already installed and enabled. Just log out and back in to activate it.
# Check status
gnome-extensions list --enabled | grep deskmeter
# View logs after login
journalctl --user -u org.gnome.Shell@wayland.service -f | grep deskmeter
Features
- ✅ Auto port detection - Finds dmweb on ports 10001 or 10000
- ✅ Workspace change detection - Updates when you switch workspaces
- ✅ Error handling - Won't crash GNOME Shell if something fails
- ✅ Minimal UI - Clean display without window decorations
Requirements
- GNOME Shell 49+ (Wayland or X11)
- Python 3 with GTK4 (
python3-gi) - dmweb running on port 10000 or 10001
- wmctrl (for workspace detection and window properties)
Documentation
See docs/ directory for detailed documentation:
- READY_TO_TEST.md - Complete testing guide (START HERE)
- TASK_WINDOW_README.md - Task window usage and configuration
- INSTALL_STATUS.md - Extension installation and troubleshooting
- PORT_DETECTION_README.md - How auto port detection works
Project Structure
dm-gnomeext/
├── task_window.py # Standalone GTK window app
├── run_task_window.sh # Helper script for window
├── gnome-extension/ # Extension source
│ └── deskmeter-indicator@local/
│ ├── extension.js
│ ├── metadata.json
│ └── stylesheet.css
├── docs/ # Documentation
└── README.md # This file
Quick Commands
# Test task window
python3 task_window.py
# Test API
curl http://localhost:10001/api/current_task
# Check extension status
gnome-extensions list --enabled | grep deskmeter
# Make window always-on-top
wmctrl -r "Deskmeter Task" -b add,above,sticky
Support
For troubleshooting and detailed information, see the docs/ directory.
Description
Languages
Python
64.1%
HTML
28%
JavaScript
5.6%
Shell
1.9%
Dockerfile
0.2%
Other
0.2%