Skip to main content

Show your nextmeeting in your poly/waybar with gcalcli

Project description

nextmeeting - Show your calendar next meeting in your waybar or polybar

What is it?

nextmeeting is a simple CLI leveraging gcalcli to show the next meetings.

It has a few features compared to just gcalcli :

  • bar integration (i.e: waybar/polybar and probably others)
  • smart date in English (not just the date, tomorrow or others)
  • show the time to go for current meeting
  • change colors if there is 5 minutes to go to the meeting
  • hyperlink in default view to click on terminal
  • notification via notify-send 5 minutes before meeting
  • title ellipsis
  • Exclude next day meetings.

Screenshot

192647099-ccfa2002-0db3-4738-a54b-176a03474483

How to use it?

You need to install gcalcli and setup the google Oauth integration with google calendar.

By default you can start nextmeeting and it will show the list of meetings you have with "human date".

There is a few options to customize things, see nextmeeting --help for more options.

Waybar

A more interesting use of nextmeeting is the integration with waybar, to output nicely on your desktop, for example my configuration look like this:

    "custom/agenda": {
        "format": "{}",
        "exec": "nextmeeting --max-title-length 30 --waybar",
        "on-click": "nextmeeting --open-meet-url",
        "on-click-right": "kitty -- /bin/bash -c \"batz;echo;cal -3;echo;nextmeeting;read;\";",
        "interval": 59,
        "return-type": "json",
        "tooltip": "true"
    },

This will show how long i have until the next meeting. If I click on the item it will open the meet URL attached to the event. If I hit via a right click it will launch a kitty terminal to show the time zones with batz and my next meeting. I can click on the title in the terminal and it will open the meet URL.

Styling

You can style some of the waybar item with the following CSS:

#custom-agenda {
  color: #696969;
}

If you enable the option "--notify-min-before-events it will output a class soon if the events is coming soon, you can style it with:

#custom-agenda.soon {
  color: #eb4d4b;
}

Installation

Use pip with:

pip install -U nextmeeting

or Checkout the source of this repo and use poetry :

poetry run nextmeeting

If you don't want to use poetry you can install the depndences packages from PyPi or from your operating system package manager if available:

And the you can run the nextmeeting script:

python3 ./nextmeeting/cli.py

alternatively you can even just copy the ./nextmeeting/cli.py script to your path and run it to make it more convenient.

AUR

yay -S nextmeeting

Related

Copyright

Apache-2.0

Authors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nextmeeting-1.5.3.tar.gz (10.6 kB view details)

Uploaded Source

File details

Details for the file nextmeeting-1.5.3.tar.gz.

File metadata

  • Download URL: nextmeeting-1.5.3.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.9.0.dev0 CPython/3.12.5 Linux/6.10.7-arch1-1

File hashes

Hashes for nextmeeting-1.5.3.tar.gz
Algorithm Hash digest
SHA256 c34b8f2602eaecd891f580b628f597b0b2cebef15eb5c29df12d64ae2a2028c7
MD5 8cc38f5b390240a9b8187fbfc5d41714
BLAKE2b-256 044675438128268b57f259909dd8b0953c15f2863f89cc0c8a0ef1c7c2b4be22

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page