86 lines
2.4 KiB
Markdown
86 lines
2.4 KiB
Markdown
# Deskmeter GNOME Integration
|
|
|
|
Display your current deskmeter task in the GNOME panel or in a standalone window.
|
|
|
|
## Quick Start
|
|
|
|
### Task Window (No logout required)
|
|
|
|
```bash
|
|
# 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.
|
|
|
|
```bash
|
|
# 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/](docs/) directory for detailed documentation:
|
|
|
|
- **[READY_TO_TEST.md](docs/READY_TO_TEST.md)** - Complete testing guide (START HERE)
|
|
- **[TASK_WINDOW_README.md](docs/TASK_WINDOW_README.md)** - Task window usage and configuration
|
|
- **[INSTALL_STATUS.md](docs/INSTALL_STATUS.md)** - Extension installation and troubleshooting
|
|
- **[PORT_DETECTION_README.md](docs/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
|
|
|
|
```bash
|
|
# 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/](docs/) directory.
|