1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
# README for InfCloud for Stackrpms
## Usage
The rpm deploys infcloud to /usr/share/infcloud. The easiest way to use this on your web server is to set up a symlink in your web root directory:
sudo ln -s /usr/share/infcloud/radicale_infcloud/web /var/www/html/calendar
The config.js is now stored in /etc/infcloud/. After updating it, be sure to run `/usr/sbin/update-infcloud-cache`.
For a whole radicale+infcloud setup, an apache httpd VirtualHost entry WITHOUT TLS could resemble:
<VirtualHost *:80>
ServerName calendar.example.com
RewriteEngine On
RewriteRule ^/radicale$ /radicale/ [R,L]
<Location "/radicale/">
ProxyPreserveHost On
Order deny,allow
Deny from all
AuthType Basic
AuthName "LDAP protected"
AuthBasicProvider ldap
AuthLDAPGroupAttribute member
AuthLDAPSubGroupClass group
# If anonymous search is disabled, provide dn and pw.
#AuthLDAPBindDN uid=service-account,cn=users,cn=accounts,dc=ipa,dc=example,dc=com
#AuthLDAPBindPassword mypw
AuthLDAPGroupAttributeIsDN On
AuthLDAPURL "ldaps://dns1.ipa.example.com:636 dns2.ipa.example.com:636/cn=users,cn=accounts,dc=ipa,dc=example,dc=com?uid,memberof,gecos?sub?(objectClass=person)"
#?sub?(objectClass=*)
Require valid-user
Satisfy any
# My radical set up uses HTTP_X_REMOTE_USER as username for authentication
RequestHeader set X_REMOTE_USER "%{AUTHENTICATE_uid}e"
# This does not populate correctly. Probably the ldap memberOf attribute is derived and not real?
RequestHeader set X_GROUPS "%{AUTHENTICATE_memberOf}e"
# This populates correctly
RequestHeader set X_GECOS "%{AUTHENTICATE_gecos}e"
ProxyPass http://localhost:5232/ retry=20 connectiontimeout=300 timeout=300
ProxyPassReverse http://localhost:5232/
RequestHeader set X-Script-Name /radicale
</Location>
</VirtualHost>
Relevant config options for radicale (file `/etc/radicale/config`) include:
[server]
hosts = 127.0.0.1:5232
[auth]
type = http_x_remote_user
[web]
type = internal
### Personal usage
To accomplish autologin in your browser, use developer tools to run a few javascript snippets. Beware using your browser local storage for sensitve values!
localStorage.setItem('user','bgstack15');
localStorage.setItem('pass','SupersEnsit1veV4lue');
localStorage.setItem('locale','English (24h)');
## History
2022-05-19 Version 0.13.1-stackrpms1.0
* added feature "perUserAdditionalResources"
* added English (24h) localization option
* re-add settingsAccount which is useful after all
2022-05-21 Version 0.13.1-stackrpms1.2
* disabled upload button and stub functions entirely
* Thu May 26 2022 B. Stack <bgstack15@gmail.com> - 0.13.1-1stackrpms1.3
- added visible outlines for keyboard navigation
- enabled selectable and navigable input for login button
* Fri Aug 12 2022 B. Stack <bgstack15@gmail.com> - 0.13.3-1
- Add fully-working upload function
* Sun Aug 14 2022 B. Stack <bgstack15@gmail.com> - 0.13.4-1
- Add auto-login feature using manually-set localStorage values in browser
* Sat Jan 07 2023 B. Stack <bgstack15@gmail.com> - 0.13.5-1
- Add CTRL+Enter reaction on edit dialog, which presses save button
- Add resize handle on note field of calendar events regardless
- Document local storage functionality
* Thu Mar 09 2023 B. Stack <bgstack15@gmail.com> - 0.13.5.1-1
- Version bump to ensure my prod environment has all improvements
* Thu Apr 20 2023 B. Stack <bgstack15@gmail.com> - 0.13.5.2stackrpms-1
- Add help and about dialogs
* Fri Apr 21 2023 B. Stack <bgstack15@gmail.com> - 0.13.5.2stackrpms-2
- Rebuild on local equipment
* Fri Nov 10 2023 B. Stack <bgstack15@gmail.com> - 0.13.5.3stackrpms-1
- Add desktop notifications
* Wed Jul 17 2024 B. Stack <bgstack15@gmail.com> - 0.13.5.4stackrpms-1
- Fix globalVisibleCalDAVCollections getting broken
|