#!/bin/bash set -e do_pre_regen() { pending_dir=$1 cd /usr/share/yunohost/templates/postfix postfix_dir="${pending_dir}/etc/postfix" mkdir -p "$postfix_dir" # install plain conf files cp plain/* "$postfix_dir" # prepare main.cf conf file main_domain=$(cat /etc/yunohost/current_host) cat main.cf \ | sed "s/{{ main_domain }}/${main_domain}/g" \ > "${postfix_dir}/main.cf" # adapt it for IPv4-only hosts if [ ! -f /proc/net/if_inet6 ]; then sed -i \ 's/ \[::ffff:127.0.0.0\]\/104 \[::1\]\/128//g' \ "${postfix_dir}/main.cf" sed -i \ 's/inet_interfaces = all/&\ninet_protocols = ipv4/' \ "${postfix_dir}/main.cf" fi } do_post_regen() { regen_conf_files=$1 [[ -z "$regen_conf_files" ]] \ || sudo service postfix restart } FORCE=${2:-0} DRY_RUN=${3:-0} case "$1" in pre) do_pre_regen $4 ;; post) do_post_regen $4 ;; *) echo "hook called with unknown argument \`$1'" >&2 exit 1 ;; esac exit 0