Command line utility to interact with CalDAV servers
Project description
caldavctl
Table of Contents
⚠️WARNING ⚠️
This software is alpha quality, use at your own risk.
Installation
To install:
pipx install caldavctl
Configuration
caldavctl is configured in $HOME/.config/caldavctl/config.toml:
[server.server_01_nickname]
username="your user"
password="your pass"
url="https://oneserver.org/cal"
[server.server_02_nickname]
username="your user"
password="your pass"
url="https://anotherserver.org/cal"
[default]
server="server_01_nickname"
calendar="Default"
timezone="Asia/Tokyo"
Make sure to make this file readable only by the user owner of the file:
$ chmod go-rwx $HOME/.config/caldavctl/config.toml
Usage
caldavctl uses sub commands to expose its functionality:
$ caldavctl --help
Usage: caldavctl [OPTIONS] COMMAND [ARGS]...
caldavctl - command line CalDAV client
Options:
-c, --config TEXT Configuration file
--name TEXT Server nickname
--username TEXT Username on the CalDAV server
--passwd TEXT Password on the CalDAV server
--url TEXT Calendar CalDAV url
--timezone TEXT Your time zone
--server TEXT Default server (use nickname)
--calendar TEXT Default calendar id
--help Show this message and exit.
Commands:
br Backup or restore a calendar
calendar Commands that deal with the calendars on the server
event Event management
ics iCalendar file operations
journal Journal management
todo Todo management
Notes:
- The options to the main command override the configuration file;
- By default the configuration file is
$HOME/.config/caldavctl/config.toml; - Currently the
journalsub-command is only a place holder;
To get help about a sub-command do:
$ caldavctl <sub-command> --help
For example:
$ caldavctl event --help
Usage: caldavctl event [OPTIONS] COMMAND [ARGS]...
Event management
Options:
--help Show this message and exit.
Commands:
create Create new event
delete Delete an event on the server
list List events from the server list.
This holds true for sub-sub-commands:
$ caldavctl todo list --help
Usage: caldavctl todo list [OPTIONS]
List todos from the default server and default calendar
Options:
-d, --description Show the event's description.
-a, --all Show all todos, including completed todos.
--help Show this message and exit.
The create event command
The create event command uses a simple key: value format to define the elements of an event. If the --edit option is used without specifying a file, an example file is opened on your $EDITOR:
# Mandatory
DTSTART: 2025-02-02 09:00
DTEND: 2025-02-02 09:45
# Recommended
SUMMARY:
# Optional
LOCATION:
CATEGORIES:
TIMEZONE:
PRIORITY: 5
ALARM: P0D
DESCRIPTION: [[ ]]
# NOTES:
#
# * Date and time:
# * The dates must be in iso format, for instance: 2024-12-29 13:45;
# * The timezone used is the one defined by default or the one defined in
# the "TIMEZONE" key;
# * Categories: the categories are a comma separated list;
# * Priority: 1 - highest priority, 9 - lowest priority
# * Description: The description can be multi line, just make sure it's
# delimited by [[ ]].
# * Alarms:
# * By default an alarm is defined the moment the event begins;
# * The alarms are defined using:
# ALARM: <trigger> [<description>]
# * The trigger is defined according to:
# https://datatracker.ietf.org/doc/html/rfc5545#autoid-38
# * For example, to trigger an alarm 30 minutes before the event start, use:
# ALARM: -PT30M
# * The alarm description is optional
The start and end dates are, by default the next day from 9 to 9:45.
License
caldavctl is distributed under the terms of the GPL-3.0-or-later license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file caldavctl-0.0.7.tar.gz.
File metadata
- Download URL: caldavctl-0.0.7.tar.gz
- Upload date:
- Size: 22.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdd4a896a28e3d5c74ba0e3f376eb412a52082cd5bdbb5c1343ec89e509abe0d
|
|
| MD5 |
5ecb0a1c821b6b20bd548ca5e6eb3b20
|
|
| BLAKE2b-256 |
80ff6ddd5d5ab7b2ccf01cfc616bdb4b75f4837ae3686ba39d8af5a83abefe1e
|
File details
Details for the file caldavctl-0.0.7-py3-none-any.whl.
File metadata
- Download URL: caldavctl-0.0.7-py3-none-any.whl
- Upload date:
- Size: 25.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a126e528d0048c5536e829695fee8feee4851be58db9184b10b7418e6b7b7b08
|
|
| MD5 |
26687a6353b4c63a223e116a3b88e5f5
|
|
| BLAKE2b-256 |
4ab3c8c893d3dfa089af8a09eba796a4d4ceb2e5c3b032e0ec10c222da267788
|