Plugin: Google Calendar itinerary #81

Open
opened 2026-08-23 01:51:00 +01:00 by joshquinlan · 1 comment
Owner

A bar widget showing the next event and minutes to go, a pane with today and tomorrow as an itinerary (time, title, location, join link for video calls), notifications before events, donbox calendar today|next. Google Calendar API with OAuth device flow, tokens in the secret store (not secrets.env), refresh on a timer; read-only first.

A bar widget showing the next event and minutes to go, a pane with today and tomorrow as an itinerary (time, title, location, join link for video calls), notifications before events, `donbox calendar today|next`. Google Calendar API with OAuth device flow, tokens in the secret store (not secrets.env), refresh on a timer; read-only first.
joshquinlan added this to the 5 Plugins milestone 2026-08-23 01:51:00 +01:00
Author
Owner

Plan, pending two things only you can supply. Shape: plugins/calendar with lib/google.py (device-flow OAuth, token refresh, the token in the secret store through secret-tool, which is why this sits after #108), donbox calendar today|next|auth, a bar pill (next event and minutes to go, polled every minute from a cached JSON under the runtime dir), a pane from the same cache, notifications a settable number of minutes before each event through donbox notify. Blocked on: a Google Cloud OAuth client of the "TV and limited input devices" type (client id and secret; the Calendar API enabled on that project) and which account(s) to read. Leave the client id and secret in ~/.config/donbox/secrets.env under GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET and say so on this ticket, and the plugin can be built in one sitting.

Plan, pending two things only you can supply. Shape: plugins/calendar with lib/google.py (device-flow OAuth, token refresh, the token in the secret store through secret-tool, which is why this sits after #108), `donbox calendar today|next|auth`, a bar pill (next event and minutes to go, polled every minute from a cached JSON under the runtime dir), a pane from the same cache, notifications a settable number of minutes before each event through donbox notify. Blocked on: a Google Cloud OAuth client of the "TV and limited input devices" type (client id and secret; the Calendar API enabled on that project) and which account(s) to read. Leave the client id and secret in ~/.config/donbox/secrets.env under GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET and say so on this ticket, and the plugin can be built in one sitting.
Sign in to join this conversation.
No description provided.