mirror of
https://github.com/b4tman/sync_ics2gcal
synced 2026-06-23 20:06:25 +03:00
e059f33e1ca1a3ac25d1f4bd959dc685b35d81d3
Bumps the pypi-updates group with 11 updates: | Package | From | To | | --- | --- | --- | | [google-auth](https://github.com/googleapis/google-auth-library-python) | `2.50.0` | `2.53.0` | | [google-api-python-client](https://github.com/googleapis/google-api-python-client) | `2.195.0` | `2.197.0` | | [icalendar](https://github.com/collective/icalendar) | `7.0.3` | `7.1.2` | | [pytz](https://github.com/stub42/pytz) | `2026.1.post1` | `2026.2` | | [black](https://github.com/psf/black) | `26.3.1` | `26.5.1` | | [mypy](https://github.com/python/mypy) | `1.20.2` | `2.1.0` | | [types-python-dateutil](https://github.com/python/typeshed) | `2.9.0.20260408` | `2.9.0.20260518` | | [types-pytz](https://github.com/python/typeshed) | `2026.1.1.20260408` | `2026.2.0.20260518` | | [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20260408` | `6.0.12.20260518` | | [lxml](https://github.com/lxml/lxml) | `6.1.0` | `6.1.1` | | [myst-parser](https://github.com/executablebooks/MyST-Parser) | `5.0.0` | `5.1.0` | Updates `google-auth` from 2.50.0 to 2.53.0 - [Release notes](https://github.com/googleapis/google-auth-library-python/releases) - [Changelog](https://github.com/googleapis/google-auth-library-python/blob/main/CHANGELOG.md) - [Commits](https://github.com/googleapis/google-auth-library-python/commits) Updates `google-api-python-client` from 2.195.0 to 2.197.0 - [Release notes](https://github.com/googleapis/google-api-python-client/releases) - [Commits](https://github.com/googleapis/google-api-python-client/compare/v2.195.0...v2.197.0) Updates `icalendar` from 7.0.3 to 7.1.2 - [Release notes](https://github.com/collective/icalendar/releases) - [Changelog](https://github.com/collective/icalendar/blob/main/CHANGES.rst) - [Commits](https://github.com/collective/icalendar/compare/v7.0.3...v7.1.2) Updates `pytz` from 2026.1.post1 to 2026.2 - [Release notes](https://github.com/stub42/pytz/releases) - [Commits](https://github.com/stub42/pytz/compare/release_2026.1.post1...release_2026.2) Updates `black` from 26.3.1 to 26.5.1 - [Release notes](https://github.com/psf/black/releases) - [Changelog](https://github.com/psf/black/blob/main/CHANGES.md) - [Commits](https://github.com/psf/black/compare/26.3.1...26.5.1) Updates `mypy` from 1.20.2 to 2.1.0 - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.20.2...v2.1.0) Updates `types-python-dateutil` from 2.9.0.20260408 to 2.9.0.20260518 - [Commits](https://github.com/python/typeshed/commits) Updates `types-pytz` from 2026.1.1.20260408 to 2026.2.0.20260518 - [Commits](https://github.com/python/typeshed/commits) Updates `types-pyyaml` from 6.0.12.20260408 to 6.0.12.20260518 - [Commits](https://github.com/python/typeshed/commits) Updates `lxml` from 6.1.0 to 6.1.1 - [Release notes](https://github.com/lxml/lxml/releases) - [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt) - [Commits](https://github.com/lxml/lxml/compare/lxml-6.1.0...lxml-6.1.1) Updates `myst-parser` from 5.0.0 to 5.1.0 - [Release notes](https://github.com/executablebooks/MyST-Parser/releases) - [Changelog](https://github.com/executablebooks/MyST-Parser/blob/master/CHANGELOG.md) - [Commits](https://github.com/executablebooks/MyST-Parser/compare/v5.0.0...v5.1.0) --- updated-dependencies: - dependency-name: google-auth dependency-version: 2.53.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: google-api-python-client dependency-version: 2.197.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: icalendar dependency-version: 7.1.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: pytz dependency-version: '2026.2' dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: black dependency-version: 26.5.1 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: mypy dependency-version: 2.1.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: pypi-updates - dependency-name: types-python-dateutil dependency-version: 2.9.0.20260518 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pypi-updates - dependency-name: types-pytz dependency-version: 2026.2.0.20260518 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pypi-updates - dependency-name: types-pyyaml dependency-version: 6.0.12.20260518 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pypi-updates - dependency-name: lxml dependency-version: 6.1.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pypi-updates - dependency-name: myst-parser dependency-version: 5.1.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pypi-updates ... Signed-off-by: dependabot[bot] <support@github.com>
sync_ics2gcal
Python scripts for sync .ics file with Google calendar
Installation
To install from PyPI with pip, run:
pip install sync-ics2gcal
Or download source code and install using poetry:
# install poetry
pip install poetry
# install project and deps to virtualenv
poetry install
# run
poetry run sync-ics2gcal
Configuration
Create application in Google API Console
- Create a new project: console.developers.google.com/project
- Choose the new project from the top right project dropdown (only if another project is selected)
- In the project Dashboard, choose "Library"
- Find and Enable "Google Calendar API"
- In the project Dashboard, choose "Credentials"
- In the "Service Accounts" group, click to "Manage service accounts"
- Click "Create service account"
- Choose service account name and ID
- Go back to "Service Accounts" group in "Credentials"
- Edit service account and click "Create key", choose JSON and download key file.
Create working directory
For example: /home/user/myfolder.
- Save service account key in file
service-account.json. - Download sample config and save to file
config.yml. For example:
wget https://raw.githubusercontent.com/b4tman/sync_ics2gcal/develop/sample-config.yml -O config.yml
- (Optional) Place source
.icsfile,my-calendar.icsfor example.
Configuration parameters
start_from- start date:- full format datetime,
2018-04-03T13:23:25.000001Zfor example - or just
now
- full format datetime,
- (Optional)
service_account- service account filename, remove it from config to use default credentials - (Optional)
logging- config to setup logging google_id- target google calendar id,my-calendar@group.calendar.google.comfor examplesource- source.icsfilename,my-calendar.icsfor example
Usage
Manage calendars
manage-ics2gcal GROUP | COMMAND
GROUPS:
- property - get/set properties (see CalendarList resource), subcommands:
- get - get calendar property
- set - set calendar property
COMMANDS:
- list - list calendars
- create - create calendar
- add_owner - add owner to calendar
- remove - remove calendar
- rename - rename calendar
Use -h for more info.
Sync calendar
just type:
sync-ics2gcal
How it works
Documentation is available at sync-ics2gcal.readthedocs.io.
Languages
Python
100%
