Skip to main content

icalstatus

Project description

ICAL Status - Status bar for ICS Calenders

Changelog

0.0.6

  • Require python 3.11+ and upgrade dependencies

Installation

pip install icalstatus

Status

To run, one of:

  • icalstatus
  • icalwaybar
  • icalexecutor

Configuration

For the status you must specify you calendar URL either on the commandline or in the configuration file ~/.config/icalstatus/config:

E.g, for OWA:

[DEFAULT]
calendar-url=https://(HOST)/owa/calendar/(...)/calendar.ics

All options can be specified in the same configuration file and the other available options are:

usage: ICAL Status [-h] [--calendar-url CALENDAR_URL] [--timezone TIMEZONE] [--no-verify] [--proxy PROXY] [--all] [--humanize-after HUMANIZE_AFTER]
                   [--alert-sec-before ALERT_SEC_BEFORE]

options:
  -h, --help            show this help message and exit
  --calendar-url CALENDAR_URL
                        URI for ICS Calendar
  --timezone TIMEZONE   Timezone (default=CET)
  --no-verify           Ignore SSL verification errors
  --proxy PROXY         Proxy for ICS url
  --all                 Include events that are not today
  --humanize-after-sec HUMANIZE_AFTER
                        Humanize meeting date if less than this many seconds
                        until meeting
  --alert-sec-before ALERT_SEC_BEFORE
                        Alert meeting at specified seconds before start.
                        This will switch class for output on waybar.

Options:

all

By default, only todays events will be shown (and output will be empty if no more event the same day). Specify --all to show all events.

humanize-after-sec

Meeting time will be show in "human format" if it less than this many seconds until the meeting. E.g. if the time is 11:30 and you have specified --humanize-after-sec 3600 the output will be

<Meeting> in 30 minutes

If you at 11:30 specified --humanize-after it will show

<Meeting> @12:00

alert-sec-before

This option is only relevant for icalwaybar. If is is less than this many seconds to the meeting, it will use class: alert, otherwize class: normal. Examples (when running the command at 11:50):

icalwaybar --alert-sec-before 900
{"text": "<Meeting> in 10 minutes", "class": "alert"}
icalwaybar --alert-sec-before 300
{"text": "<Meeting> in 10 minutes", "class": "normal"}

Output specific formatting

icalexecutor

If the meeting is within --alert-sec-before, <executor.css.red> will be added to the output.

This means that you can specify the CSS class red according to https://raujonas.github.io/executor/docs/configuration/custom-css/:

.red {
    color: red;
}

.e.g in ~/.config/executor@raujonas.github.io/custom.css.

Parse

A tool to parse ics files and output summary to stdout is included:

  • icalparse

Credits

Original code/idea from Geir Skjøtskift (https://github.com/geirskjo).

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

icalstatus-0.0.11-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file icalstatus-0.0.11-py3-none-any.whl.

File metadata

File hashes

Hashes for icalstatus-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 8681a8f0ee291c9994c35dd61b6f747802eb4bdf30edcba91b133f0a4a92af4f
MD5 46c59d49edd01b6422da92e86b8facb0
BLAKE2b-256 b0514ed1b18e1034b33e4c61a07b6389fba4c11a1d5da612b4663cacbe02454e

See more details on using hashes here.

Supported by

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