[Unit] Description=Postorius WSGI Service After=risotto.target [Service] Type=notify User=postorius Group=postorius WorkingDirectory=/usr/share/postorius RuntimeDirectory=postorius StateDirectory=postorius PrivateTmp=yes PrivateUsers=yes ProtectHostname=yes ProtectKernelModules=yes ProtectKernelLogs=yes LockPersonality=yes RestrictRealtime=yes PrivateMounts=yes Environment="MAILMAN_WEB_CONFIG=/usr/share/postorius/m_postorius/settings.py" ExecStartPre=/usr/share/postorius/manage.py migrate ExecStartPre=/usr/share/postorius/manage.py shell -c 'from django.contrib.sites.models import Site; site=Site.objects.first(); site.name="%%{revprox_client_external_domainnames[0]}"; site.domain="%%{revprox_client_external_domainnames[0]}"; site.save()' ExecStartPre=/usr/share/postorius/manage.py shell -c 'from allauth.socialaccount.models import SocialApp; SocialApp.objects.create() if SocialApp.objects.count() == 0 else print("social app already exists"); a=SocialApp.objects.first(); a.name = "%%domain_name_eth0"; a.provider = "risotto"; a.client_id = "%%oauth2_client_id"; a.secret = "%%oauth2_client_secret"; a.sites.set([1]); a.save()' ExecStartPre=-/usr/share/postorius/manage.py createsuperuser --username "%%mailman_mail_owner" --email "%%mailman_mail_owner" --noinput ExecStart=/usr/bin/gunicorn --config /etc/postorius/gunicorn_config.py m_postorius.wsgi ExecReload=/bin/kill -s HUP $MAINPID KillMode=mixed TimeoutStopSec=5 [Install] WantedBy=multi-user.target