+-----------------------------------------------------------------------
| Running radicale on OpenBSD
+-----------------------------------------------------------------------

Authentication
==============
To enable simple passwords, edit /etc/radicale/config and change
"#type = denyall" to
"type = htpasswd".

By default calendars may only be accessed by their owner. To adjust
the rights for calendars please refer to the
/etc/radicale/rights file and the upstream documentation on
"Authentication and Rights".

For further authentication options, consult Radicale's documentation.
Previous users of Radicale with more complex authentication setup
should be aware that only none/htpasswd are provided as standard;
plugins are required for others.

Encryption
==========
To enable encryption with the internal web server, change "ssl = False"
to "ssl = True" in /etc/radicale/config, and install a certificate
and key in the files named in "certificate" and "key". (They need to be
readable by the _radicale user, so the common location in /etc/ssl/private
won't work). Alternatively run HTTP on localhost and proxy from alternative
web server software.

Upgrading from Radicale 2 to 3
==============================
There are many changes from Radicale 2.x to 3.x, see the following upgrade
checklist from CHANGELOG.md.  Refer to the documentation for more details.

    Config
        Some settings were removed
        The default of auth.htpasswd_encryption changed to md5
        The setting server.realm moved to auth.realm
        The setting logging.debug was replaced by logging.level
        The format of the rights.file configuration file changed:
            Permission r replaced by Rr
            Permission w replaced by Ww
            New permission i added as subset of r
            Replaced variable %(login)s by {user}
            Removed variable %(path)s
            { must be escaped as {{ and } as }} in regexes
    File system storage
        The storage format is compatible with Radicale 2.x.x
        Run radicale --verify-storage to check for errors
    Custom plugins:
        auth and web plugins require minor adjustments
        rights plugins must be adapted to the new permission model
        storage plugins require major changes

