Commit 2060bfd6 authored by Joanne Hugé's avatar Joanne Hugé

WIP: deltachat connects

parent b2b1a909
......@@ -13,7 +13,7 @@ extends =
[postfix]
recipe = slapos.recipe.cmmi
shared = true
shared = false
url = http://cdn.postfix.johnriley.me/mirrors/postfix-release/official/postfix-3.7.3.tar.gz
md5sum = bbb2168f85530fe4eaa65408a48e731b
location = @@LOCATION@@
......
......@@ -19,7 +19,7 @@ md5sum = 5ded78c210ad723606f808165fe10be6
[template-default]
_update_hash_filename_ = instance-default.cfg.in
md5sum = ec7f74baca8268d169e77447fa0f93b0
md5sum = 1e87d360ed90b40530a7c28e50949e0d
[dovecot.jinja2.conf]
_update_hash_filename_ = dovecot.jinja2.conf
......@@ -30,19 +30,19 @@ md5sum = 190b3130b1b60bf4ca7a58ccf1ab3e9b
[postfix_main.jinja2.cf]
_update_hash_filename_ = postfix_main.jinja2.cf
md5sum = f0074c518821be72d4d331aa558e254e
md5sum = 7f41fc15c0242bf7f9344673e068d8dc
[postfix_master.jinja2.cf]
_update_hash_filename_ = postfix_master.jinja2.cf
md5sum = 7752a8b4af5c18dc404e0a862af89272
[postfix_alias.jinja2]
_update_hash_filename_ = postfix_alias.jinja2
md5sum = 170fcb64781e966fa1a9718b5a925535
md5sum = b6941dd8632208c592ba3a531df63034
[postfix_mailname.jinja2]
_update_hash_filename_ = postfix_mailname.jinja2
md5sum = e7eb11cb4485b0d46f968f612643c1b0
[postfix_vmailbox.jinja2]
_update_hash_filename_ = postfix_vmailbox.jinja2
md5sum = 8c720937c1cbf74371ee41c5e5577369
md5sum = dcff25a0b3b46414cbbd88b43fa808eb
[postfix_virtual.jinja2]
_update_hash_filename_ = postfix_virtual.jinja2
md5sum = 5b51b6cb273f8aeedf49f7d46c19f0dd
md5sum = 0ce1aff8574a14359c4c17f02d88dec8
[buildout]
parts =
directory
dovecot-conf
dovecot-service
postfix-conf-main
postfix-conf-master
postfix-service
postfix-symlinks-libexec
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline= true
{% set part_list = [] -%}
{% macro section(name) %}{% do part_list.append(name) %}{{ name }}{% endmacro -%}
[directory]
recipe = slapos.cookbook:mkdirectory
......@@ -102,6 +92,15 @@ init =
except:
options['ipv4'] = "0.0.0.0"
[typed-paths]
# Postfix-friendly rendering of file paths, prefixed with database type.
aliases = hash:${postfix-alias:output}
[{{ section('postalias-db') }}]
recipe = plone.recipe.command
stop-on-error = true
command = '${wrapper-postalias:wrapper-path}' '${typed-paths:aliases}'
update-command = ${:command}
[postfix-conf-main]
<= config-base
......@@ -174,7 +173,7 @@ recipe = slapos.recipe.template
output = ${directory:bin}/${:_buildout_section_name_}
inline =
#!/bin/sh
${directory:usr-postfix}/libexec/postfix/master -d -v -w -c ${directory:etc-postfix}
${directory:usr-postfix}/libexec/postfix/master -c ${directory:etc-postfix}
[postfix-service]
recipe = slapos.cookbook:wrapper
......@@ -187,3 +186,76 @@ environment =
hash-files =
${postfix-conf-main:output}
${postfix-wrapper:output}
[base-wrapper]
recipe = slapos.cookbook:wrapper
environment =
MAIL_CONFIG=${directory:etc-postfix}
[base-bin-wrapper]
< = base-wrapper
command-line = ${:path}/${:basename}
wrapper-path = ${directory:bin}/${:basename}
[base-bin-bin-wrapper]
< = base-bin-wrapper
path = {{ postfix_location }}/usr/bin
[base-sbin-bin-wrapper]
< = base-bin-wrapper
path = {{ postfix_location }}/usr/sbin
{% for extend, basename_list in (
(
'base-bin-bin-wrapper',
(
'mailq',
'newaliases',
),
),
(
'base-sbin-bin-wrapper',
(
'postalias',
'postcat',
'postconf',
'postdrop',
'postfix',
'postkick',
'postlock',
'postlog',
'postmap',
'postmulti',
'postqueue',
'postsuper',
'sendmail',
),
),
) %}
{% for basename in basename_list -%}
[{{ section('wrapper-' ~ basename) }}]
< = {{ extend }}
basename = {{ basename }}
{% endfor %}
{% endfor %}
[{{ section('service-postfix-master') }}]
< = base-wrapper
command-line = ${directory:usr}/libexec/postfix/master -c ${directory:etc-postfix}
wrapper-path = ${directory:run}/postfix-master
[buildout]
parts =
directory
dovecot-conf
dovecot-service
postfix-conf-main
postfix-conf-master
postfix-service
postfix-symlinks-libexec
{{ part_list | join('\n ') }}
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline= true
# http://www.postfix.org/STANDARD_CONFIGURATION_README.html
# http://www.postfix.org/postconf.5.html
queue_directory = {{ queue_directory }}
command_directory = {{ bin_directory }}
daemon_directory = {{ usr_directory }}/libexec/postfix
data_directory = {{ data_directory }}
mail_owner = {{ mail_owner }}
alias_maps = hash:{{ alias_file }}
alias_database = hash:{{ alias_file }}
mail_spool_directory = {{ spool_directory }}
sendmail_path = {{ bin_directory }}/sendmail
newaliases_path = {{ bin_directory }}/newaliases
mailq_path = {{ bin_directory }}/mailq
manpage_directory = {{ postfix_location }}/usr/local/man
sample_directory = {{ postfix_location }}/etc/postfix
mail_owner = {{ mail_owner }}
setgid_group = {{ setgid_group }}
html_directory = no
manpage_directory = {{ postfix_location }}/usr/local/man
sample_directory = {{ postfix_location }}/etc/postfix
readme_directory = no
inet_interfaces = {{ ip_address }}
smtp_bind_address = 0.0.0.0
smtp_bind_address6 = ::
compatibility_level = 3.6
smtputf8_enable = no
# Compared to default:
# - remove X-related variables, irrelevant for slapos, to be concise
# - add SASL_CONF_PATH to have per-partition cyrus-sasl configuration
import_environment =
MAIL_CONFIG MAIL_DEBUG MAIL_LOGTAG TZ LANG=C
SASL_CONF_PATH
allow_min_user = yes
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2
home_mailbox = Maildir/
smtpd_tls_security_level = none
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
myhostname = mydomain.local
alias_maps = hash:{{ alias_file }}
alias_database = hash:{{ alias_file }}
myorigin = {{ mailname_file }}
#mydestination = ors64, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 {{ netaddr.IPNetwork(ip_address + '/24') }}
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = {{ ip_address }}
default_transport = error
relay_transport = error
inet_protocols = all
# Reject as many bogus cases as soon as possible, so errors are visible to ERP5
# developper rather than relying on bounces.
smtpd_recipient_restrictions =
reject_non_fqdn_recipient
reject_unknown_recipient_domain
permit_sasl_authenticated
reject
# Do not allow mynetworks to send mails, only authenticated clients.
smtpd_relay_restrictions =
permit_sasl_authenticated
defer_unauth_destination
# We do not pass mail address in command lines, so accept those starting with
# a dash.
allow_min_user = yes
virtual_mailbox_domains = mydomain.local
virtual_mailbox_base = {{ vhosts_directory }}
virtual_mailbox_maps = hash:{{ vmailbox_file }}
virtual_minimum_uid = 100
virtual_uid_maps = static:1001
virtual_gid_maps = static:1022
virtual_alias_maps = hash:{{ virtual_file }}
virtual_transport = lmtp:unix:private/dovecot-lmtp
# Disable local delivery
local_transport = error
maillog_file = {{ directory['log'] }}/postfix.log
maillog_file = {{ log_directory }}/postfix.log
maillog_file_compressor = {{ xz_utils_location }}/bin/xz
maillog_file_prefixes = {{ log_directory }}
postmaster@ors.local slapuser15@ors.local
postmaster@ors.local ors@ors.local
slapuser15@ors.local ors.local/slapuser15
ors@ors.local ors.local/ors
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment