#!/bin/sh : ${cups_admin_group='sysadmins'} : ${cups_server_admin="${cups_admin_group}@${email_domain}"} cups_user=cups cups_conf_dir=/usr/local/etc/cups cups_tls_dir=${cups_conf_dir}/ssl cups_tls_cert="${cups_tls_dir}/${fqdn}.crt" cups_tls_key="${cups_tls_dir}/${fqdn}.key" # Create dataset for persistent CUPS configuration. create_dataset -o "mountpoint=${cups_conf_dir}" "${state_dataset}/cups" zfs set com.sun:auto-snapshot:daily=true "${state_dataset}/cups" # Install required packages. pkg install -y cups cups-filters # Copy TLS certificate for CUPS. install_certificate -g "$cups_user" cups "$cups_tls_cert" install_certificate_key -g "$cups_user" cups "$cups_tls_key" # Generate CUPS pam configuration. install_file -m 0644 /etc/pam.d/cups # Copy CUPS configuration. install_template -o root -g "$cups_user" -m 0640 \ "${cups_conf_dir}/cupsd.conf" \ "${cups_conf_dir}/cups-files.conf" sysrc -v cupsd_enable=YES service cupsd restart