annotate README.txt @ 137:4bf07e58baa8

Some fixes to documentation.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 06 Oct 2020 09:04:19 +0300
parents aa3478847735
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
79
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
1 Google Calendar MultiMerge
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
2 ==========================
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
3 Programmed and designed by Matti 'ccr' Hämäläinen <ccr@tnsp.org>
130
b33e3884182b Update copyright years.
Matti Hamalainen <ccr@tnsp.org>
parents: 117
diff changeset
4 (C) Copyright 2016-2017 Tecnic Software productions (TNSP)
79
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
5
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
6 For license information, see file "COPYING".
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
7
90
286ccecf9257 Add link to Mercurial repo.
Matti Hamalainen <ccr@tnsp.org>
parents: 79
diff changeset
8 Mercurial repository: http://tnsp.org/hg/gcmultimerge/
286ccecf9257 Add link to Mercurial repo.
Matti Hamalainen <ccr@tnsp.org>
parents: 79
diff changeset
9
286ccecf9257 Add link to Mercurial repo.
Matti Hamalainen <ccr@tnsp.org>
parents: 79
diff changeset
10
79
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
11 Introduction
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
12 ============
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
13
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
14 Google Calendar Multimerge (GCMM) is a simple Python utility for
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
15 creating a "merged" calendar from a number of "source" calendars.
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
16 Through Google Calendar API, events are copied from source calendars
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
17 to the target calendar and updated on each run. Deleted events will
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
18 be accordingly deleted from the target.
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
19
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
20 In practice, the target is always an amalgamate of the sources, if
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
21 any events are added or deleted from it manually, they will be deleted
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
22 or re-added accordingly from it on the next run of GCMM.
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
23
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
24 The reason for GCMM is that while an amalgamate view of all calendars
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
25 (shared or not) can be viewed through the main calendar site, the
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
26 amalgamate view can't be shared or viewed as an embedded element
0ccf3fd49181 Add license and some documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 69
diff changeset
27 directly.
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
28
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
29
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
30 Installation
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
31 ============
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
32
137
4bf07e58baa8 Some fixes to documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 136
diff changeset
33 In Debian 10.x there are packaged versions of Google
4bf07e58baa8 Some fixes to documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 136
diff changeset
34 API Python modules available:
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
35
137
4bf07e58baa8 Some fixes to documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 136
diff changeset
36 $ apt-get install python3-google-auth python3-google-auth-httplib2 python3-googleapi
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
37
136
aa3478847735 Update the instructions.
Matti Hamalainen <ccr@tnsp.org>
parents: 134
diff changeset
38 If you are on earlier version of Debian or some other distribution,
aa3478847735 Update the instructions.
Matti Hamalainen <ccr@tnsp.org>
parents: 134
diff changeset
39 you may have to use PIP to install the modules locally.
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
40
137
4bf07e58baa8 Some fixes to documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 136
diff changeset
41 $ pip3 install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
42
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
43 If the installation passes without errors, you are good to go.
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
44 At this point, you will need to enable the Calendar API from
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
45 Google's control panel. Refer to the following web page:
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
46
136
aa3478847735 Update the instructions.
Matti Hamalainen <ccr@tnsp.org>
parents: 134
diff changeset
47 https://developers.google.com/calendar/quickstart/python
12
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
48
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
49 The section "Step 1" has the instructions. We've already done "Step 2",
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
50 which is incomplete in the guide anyway.
a5f726b6782d Start writing some kind of documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 9
diff changeset
51
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
52
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
53 Configuration and usage
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
54 =======================
16
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
55
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
56 Edit example.cfg and run multimerge with config file as command line
117
2c94204a5dd2 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 94
diff changeset
57 parameter. At the very least, you will need to define the "dst_name"
2c94204a5dd2 Update documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 94
diff changeset
58 and "dst_regex" settings in the configuration. The settings are
91
ae3f20933758 Update documentation a bit.
Matti Hamalainen <ccr@tnsp.org>
parents: 90
diff changeset
59 described in the example configuration file.
16
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
60
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
61 $ ./multimerge.py example.cfg
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
62
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
63 On first run, you will need to authenticate Multimerge to allow
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
64 access to the target calendar. You copy & paste the generated URL
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
65 to browser, authenticate and copy & paste the given "key" to
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
66 the Multimerge's prompt and hit ENTER.
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
67
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
68 After first time authentication the program can be run from a
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
69 Cron task, if preferred.
9a4dd2eb7701 More documentation.
Matti Hamalainen <ccr@tnsp.org>
parents: 12
diff changeset
70