# echo "dmarc dns, name: _dmarc value: v=DMARC1; p=none; rua=mailto:mailauth-reports@$domain"
# # 2017-02 spf policies:
+# # host -t txt lists.fedoraproject.org
# # google ~all, hotmail -all, yahoo: ?all, fastmail ?all
# # i include fastmail\'s settings, per their instructions,
# # and follow their policy. In mail in a box, or similar instructions,
# most of these settings get translated into settings
# in /etc/exim4/update-exim4.conf.conf
+ # how /etc/exim4/update-exim4.conf.conf translates into actual exim settings is
+ # documented in man update-exim4.conf, which outputs to the config that
+ # exim actually reads. except the man page is not perfect, for example,
+ # it doesn't document that it sets
+ # DCconfig_${dc_eximconfig_configtype}" "1"
+ # which is a line from update-exim4.conf, which is a relatively short bash script.
# mailname setting sets /etc/mailname
debconf-set-selections <<EOF
rm -f /etc/exim4/update-exim4.conf.conf
dpkg-reconfigure -u -fnoninteractive exim4-config
fi
+
+ # i have the spool directory be common to distro multi-boot, so
+ # we need the uid to be the same. 608 cuz it's kind of in the middle
+ # of the free system uids.
+ IFS=:; read _ _ uid _ < <(getent passwd Debian-exim ); unset IFS
+ IFS=:; read _ _ gid _ < <(getent group Debian-exim ); unset IFS
+ if [[ ! $uid ]]; then
+ # from /var/lib/dpkg/info/exim4-base.postinst, plus uid and gid options
+ adduser --uid 608 --gid 608 --system --group --quiet --home /var/spool/exim4 \
+ --no-create-home --disabled-login --force-badname Debian-exim
+ elif [[ $uid != 608 ]]; then
+ systemctl stop exim4 ||:
+ usermod -u 608 Debian-exim
+ groupmod -g 608 Debian-exim
+ usermod -g 608 Debian-exim
+ find / /nocow -xdev -uid $uid -exec chown -h 608 {} +
+ find / /nocow -xdev -gid $gid -exec chgrp -h 608 {} +
+ fi
+
# light version of exim does not have sasl auth support.
apt-get -y install --purge --auto-remove exim4-daemon-heavy spamassassin
batch_max = 200
EOF
+ cat >/etc/exim4/conf.d/router/190_exim4-config_fsfsmarthost <<'EOF'
+# smarthost for fsf mail
+# ian: copied from /etc/exim4/conf.d/router/200_exim4-config_primary, and added senders = and
+# replaced DCsmarthost with mail.fsf.org
+fsfsmarthost:
+ debug_print = "R: smarthost for $local_part@$domain"
+ driver = manualroute
+ domains = ! +local_domains
+ senders = *@fsf.org
+ transport = remote_smtp_smarthost
+ route_list = * mail.fsf.org byname
+ host_find_failed = ignore
+ same_domain_copy_routing = yes
+ no_more
+EOF
+
+ # https://blog.dhampir.no/content/make-exim4-on-debian-respect-forward-and-etcaliases-when-using-a-smarthost
+ # i only need .forwards, so just doing that one.
+ cd /etc/exim4/conf.d/router
+ b=userforward_higher_priority
+ # replace the router name so it is unique
+ sed -r s/^\\S+:/$b:/ 600_exim4-config_userforward >175_$b
# begin setup passwd.client
f=/etc/exim4/passwd.client
done
# end setup passwd.client
- # https://blog.dhampir.no/content/make-exim4-on-debian-respect-forward-and-etcaliases-when-using-a-smarthost
- # i only need .forwards, so just doing that one.
- cd /etc/exim4/conf.d/router
- b=userforward_higher_priority
- # replace the router name so it is unique
- sed -r s/^\\S+:/$b:/ 600_exim4-config_userforward >175_$b
systemctl restart exim4
fi #### end if exim4
dir=/nocow/$type
sdir=/var/spool/$type
# we only do this if our system has $dir
-if [[ -e $dir && $(readlink -f $sdir) != $dir ]]; then
+if [[ -e /nocow && $(readlink -f $sdir) != $dir ]]; then
systemctl stop $type
if [[ ! -e $dir && -d $sdir ]]; then
mv $sdir $dir
if [[ $HOSTNAME == $MAIL_HOST ]]; then
systemctl restart radicale
systemctl enable radicale
+ if [[ -e /etc/logrotate.d/radicale.disabled ]]; then
+ mv /etc/logrotate.d/radicale{.disabled,}
+ fi
else
systemctl stop radicale
systemctl disable radicale
+ # weekly logrotate tries to restart radicale even if it's a disabled service in flidas.
+ if [[ -e /etc/logrotate.d/radicale ]]; then
+ mv /etc/logrotate.d/radicale{,.disabled}
+ fi
fi
fi
+exit 0
# if I wanted the from address to be renamed and sent to a different address,
# echo "sdx@localhost development@localhost" | sudo dd of=/etc/postfix/recipient_canonical