NEDMWaybarScript/README.md

95 lines
2.2 KiB
Markdown

# NEDM Waybar Integration
A Python script that displays NEDM workspace information and focused window details in Waybar.
## What it does
- Shows current workspace number with a bullet indicator (●)
- Displays the name of the currently focused application (e.g., "foot", "firefox")
- Provides tooltip with detailed workspace and window information
- Automatically reconnects if NEDM restarts
- Updates in real-time as you switch workspaces or focus different windows
## Requirements
- NEDM (cagebreak) window manager with IPC enabled
- Python 3
- Waybar
## Installation
1. Place the script in your scripts directory:
```bash
cp waybar-nedm-workspaces.py ~/scripts/
chmod +x ~/scripts/waybar-nedm-workspaces.py
```
2. Add the custom module to your Waybar configuration.
## Waybar Configuration
### Add to waybar config.json
Add `"custom/nedm-workspaces"` to your modules list:
```json
{
"modules-left": ["custom/nedm-workspaces"],
"custom/nedm-workspaces": {
"exec": "python3 ~/scripts/waybar-nedm-workspaces.py",
"return-type": "json",
"restart-interval": 1,
"tooltip": true
}
}
```
### Add styling to style.css
```css
#custom-nedm-workspaces {
background-color: #2e3440;
color: #d8dee9;
padding: 0 10px;
margin: 0 5px;
border-radius: 5px;
}
#custom-nedm-workspaces.disconnected {
background-color: #bf616a;
color: #ffffff;
}
#custom-nedm-workspaces.error {
background-color: #d08770;
color: #ffffff;
}
```
## Output Format
The script displays information in the format: `WS: ●2 | foot`
- `WS:` - Workspace indicator
- `●2` - Current workspace number with bullet
- `foot` - Name of the focused application
## Security Note
This script uses process names from PIDs instead of window titles for security. It does NOT require NEDM to be run with the `-b` flag, which would expose window titles but compromise security.
## Troubleshooting
If the script shows "NEDM: Disconnected":
1. Ensure NEDM is running with IPC enabled
2. Check that the IPC socket exists in `/run/user/$(id -u)/`
3. Verify NEDM was started without disabling IPC
If it shows generic "View X" instead of process names:
- The process may have terminated
- The script will fall back to view IDs when process information is unavailable