Pomobar is a pomodoro timer that is compatible with waybar. This project is a work in progress.
Pomobar is a client-server application. The server is responsible for keeping track of the time and the client is responsible for sending commands to the server. Connection is established via a unix socket. The server/client communication is done via raw bytes now.
- Clone the repository
git clone <this-repo>
- Build the project
make
- Run server in background
./pomobar-server &; disown
- Run client for connection test
./pomobar-client status
- If all is well, add the following to your waybar config
{
...
"modules-<left|center|right>": [..., "custom/pomobar", ...],
...
"custom/pomobar": {
"format" : "{}",
"interval" : 1,
"exec" : "/path/to/pomobar-client status",
"on-click" : "/path/to/pomobar-client pause",
"on-click-middle" : "/path/to/pomobar-client reset",
"return-type" : "json"
},
}
- Reload waybar
killall -q waybar
waybar &; disown
- Basic timer functionality
- Waybar integration
- Config file support
- Configurable timer
- Configurable waybar module
- Configurable work/break command/script/icon
- Optimizations
- Use JSON for server/client communication
- Use a more efficient way to keep track of time
- Code cleanup
- Documentation
- Error handling
- Add more features