OpenBSD Handbook

    Theme
    • Part I. Install & Configure
      • Introduction to OpenBSD
      • Installing OpenBSD
      • The X Window System
      • Networking on OpenBSD
      • System Configuration
      • OpenBSD Basics
      • Managing Software: Packages and Ports
    • Part II. Daily Operations
      • OpenBSD Desktop Environments
      • Multimedia
      • Printing
      • Linux Compatibility
      • Windows Compatibility
      • Games
    • Part III. System Administration
      • Virtualization
      • Storage and File Systems
      • Updating and Upgrading
      • Localization
      • The OpenBSD Boot Process
      • Security
    • Part IV. Networking & Daemons
      • Services
        • Database
          • MariaDB
          • PostgreSQL
          • Redis
          • memcached
        • Directory
          • YP (NIS)
          • LDAP
        • File
          • NFS
          • Samba
        • FTP Services
          • ftpd
          • ProFTPD
          • vsftpd
          • Pure-FTPd
          • TFTP
        • Mail
          • OpenSMTPD Mail Server
          • Dovecot IMAP and POP3 Server
          • Postfix
          • Exim
          • Rspamd
        • Name
          • Unbound DNS Resolver
          • NSD Authoritative DNS Server
          • BIND DNS Server
        • Networking
          • OpenBGPD
          • rad
          • DHCP on OpenBSD
          • slaacd
        • Web
          • Apache HTTP Server
          • nginx Web Server
          • OpenBSD httpd Web Server
          • relayd Reverse Proxy
        • Logging
          • syslogd
        • Monitoring
          • SNMP
        • Remote Access
          • Audit OpenSSH
          • OpenSSH Server
        • File Synchronization
          • rsync
        • Messaging
          • RabbitMQ Message Broker
        • Time
          • NTP Time Synchronization
      • PF
        • pfctl cheat sheet
        • PF Anchors
        • PF Filter Rules
        • PF Forwarding
        • PF Lists and Macros
        • PF Load Balancing
        • PF Logging
        • PF NAT
        • PF Options
        • PF Policies
        • PF Shortcuts
        • PF Tables
      • Advanced Networking
        • High Availability and State Replication
        • Multi-WAN and Policy-Based Routing
        • VPN and Cryptographic Tunneling
        • Classic and Lightweight Tunnels
        • IPv6 at Scale
        • QoS and Traffic Shaping
        • MPLS and Label Distribution
        • Network Services at Scale
        • Virtualization and Host Networking
        • Large-Scale L2 and L3 Design
        • Telemetry, Logging, and Flow Export
        • Hardening and Operational Safety
        • Reference Architectures
        • Troubleshooting Playbooks
      • Serial Communication
    • Part V. Miscellaneous
      • Virtualization Cheat Sheet
      • OpenBSD Cheatsheet
      • How-to Guides
        • Complete the First 30 Minutes After Installation
        • Check Hardware Compatibility Before Installing
        • Bootstrap Wi-Fi Firmware Without Ethernet
        • Set Up OpenBSD as a Laptop or Workstation
        • Configure Laptop Power Management
        • Run OpenBSD as a Virtual Machine Guest
        • Install OpenBSD on a VPS or Cloud Server
        • Install OpenBSD with Full-Disk Encryption
        • Troubleshoot Web Browsers on OpenBSD
        • Create an Administrator Account with doas and SSH Keys
        • Establish a Conservative Security Baseline
        • Manage OpenBSD with Ansible
        • Recover Access and Reset the Root Password
        • Collect OpenBSD Diagnostic Evidence
        • Configure Secure Remote Access with OpenSSH
        • Set Up WordPress on OpenBSD
        • Build Third-Party Software from Ports
        • Use FIDO Security Keys with OpenSSH
        • Build OpenBSD from Source
        • Configure Wi-Fi Roaming and Wired Failover
        • Dual-Boot OpenBSD on a UEFI System
        • Troubleshoot PF, NAT, and Routing
        • Automate OpenBSD Installation with Autoinstall and PXE
        • Route Multiple VLANs with PF
        • Configure a Road-Warrior WireGuard VPN
        • Troubleshoot Package Installation and Update Failures
        • Route IPv6 Networks without NAT
        • Schedule Recurring Maintenance
        • Plan a Docker Workload Migration to OpenBSD
        • Build a Mail Server with OpenSMTPD, Dovecot, and Rspamd
        • Build a Simple Router and Firewall
        • Monitor an OpenBSD System
        • Back Up and Restore an OpenBSD System
        • Configure softraid RAID1
        • Recover an OpenBSD System That Does Not Boot
        • Install Z shell (zsh)
      • OpenBSD for Linux Users
      • OpenBSD for FreeBSD Users
      • OpenBSD for macOS Users
    • OpenBSD FAQ
    • OpenBSD Architectures
      • OpenBSD Package Search

        davical-1.1.13p0

        Package search / Categories / Current snapshot
        โ† Back to search
        OpenBSD branch
        OpenBSD 8.0 releaseCurrent snapshot

        Current snapshot ยท amd64

        CalDAV/CardDav calendar/contacts server

        Project homepage: https://www.davical.org/

        Description

        DAViCal is a server for calendar/contacts sharing. It is an implementation of the CalDAV protocol which is designed for storing calendaring resources (in iCalendar format) on a remote shared server. It also provides CardDAV features for contact/vCard sharing.

        Package information

        Ports path
        productivity/davical
        Package architecture
        *
        Maintainer
        Landry Breuil <landry@openbsd.org>
        Categories
        productivity, net, lang/php
        Available flavors
        None listed

        Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.

        Direct dependencies

        Runtime

        • lang/php/8.4,-curl
        • lang/php/8.4,-pdo_pgsql
        • www/awl STEM->=0.65
        • devel/p5-YAML
        • databases/p5-DBD-Pg
        • lang/php/8.4 php->=8.4,<8.5

        Build

        • archivers/xz STEM->=5.4.0
        OpenBSD README

        This README contains unresolved ports variables; replace them before using its commands.

        +-----------------------------------------------------------------------
        | Running davical on OpenBSD
        +-----------------------------------------------------------------------
        
        Database Setup
        ==============
        DAViCal needs two PostgreSQL users, one for administrative access and
        one for daily use. Assuming you have an administrative account named
        `postgres', you can create the users and davical database like this:
        
        createuser -U postgres --pwprompt --no-superuser --no-createdb \
        	--no-createrole davical_dba
        createuser -U postgres --pwprompt --no-superuser --no-createdb \
        	--no-createrole davical_app
        createdb -U postgres -E UTF8 -T template0 -O davical_dba davical
        
        Let's fill the database using the newly created dba user:
        
        psql -U davical_dba -f ${TRUEPREFIX}/awl/dba/awl-tables.sql davical
        psql -U davical_dba -f ${TRUEPREFIX}/awl/dba/schema-management.sql davical
        psql -U davical_dba -f ${TINSTDIR}/dba/davical.sql davical
        
        Run the administrative script to set permissions for the application DB
        user on the database. This script should be used when upgrading DAViCal
        too, so that the DB schema is consistent.
        
        ${TINSTDIR}/dba/update-davical-database --dbname davical \
        	--appuser davical_app --nopatch --owner davical_dba \
        	--dbpass "$davical_dba_password"
        
        Finally, insert basic roles/users into the db:
        
        psql -U davical_dba -f ${TINSTDIR}/dba/base-data.sql davical
        
        Default temporary admin password is 'nimda', stored in database as
        '**nimda', you can change it to 'temppass' with
        
        psql -U davical_dba -c \
        "UPDATE usr SET password = '**temppass' WHERE user_no = 1;" davical
        
        This is only for initial setup, and it should be changed through the
        web interface (which will crypt the new password) once logged in.
        
        
        DAViCal Configuration
        =====================
        
        The DAViCal configuration resides in
        ${TINSTDIR}/config/config.php and is a regular PHP file which
        sets (or overrides) some specific variables. You should only need to
        set pg_connect value to configure database access.
        
        httpd(8) Configuration
        =====================
        
        With httpd(8), it is easiest to run php-fpm and use the following 
        for a distinct server block:
        
        ext_addr="*"
        server "default" {
            listen on $ext_addr port 80
            listen on $ext_addr tls port 443
            connection { max requests 500, timeout 3600 }
            location "/" { directory index index.php }
            location "/davical/*.php*" {
                    fastcgi socket "/run/php-fpm.sock"
                    root "/davical/htdocs"
            }
        }
        
        Apache Configuration
        ====================
        
        With Apache, AllowOverride settings are required on the ${TINSTDIR}
        directory. You can configure this as follows:
        
        # ln -s ../modules.sample/davical.conf \
                /var/www/conf/modules
        # /etc/rc.d/apache2 restart
        
        Then point your browser at:
            http://<hostname>/davical/
        and you should get a message telling you to configure DAViCal.
        
        Nginx Configuration
        ===================
        
        With Nginx, the simplest way is to run php-fpm, and use the following
        configuration for a distinct server block:
        
        server {
            server_name calendar.example.com;
            root ${TINSTDIR}/htdocs/;
        
            location / {
                index index.php;
            }
            location /images/ {
            }
            location ~ ^(.*\.php)(.*)$ {
                include fastcgi_params;
                fastcgi_pass unix:run/php-fpm.sock;
                fastcgi_split_path_info ^(.*\.php)(.*)$;
                fastcgi_param PATH_INFO $fastcgi_path_info;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            }
        }
        
        Client Setup
        ============
        
        More information is available at http://wiki.davical.org/w/CalDAV_Clients.
        

        Package guides

        • Installing and updating packages

        Package details as JSON

        Report a bug