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

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for icalstatus-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dfe185aa6feb3b42af00ca236a0139ea71063cc43bda9ea2f27c4abf447a22f3
MD5 e387330fb78a9766189bc45211fc2880
BLAKE2b-256 870b74a21452c19a62c4cc565f81c667692ffddf3a79a8636b982410c17273de

See more details on using hashes here.

Supported by

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