summaryrefslogtreecommitdiff
path: root/courier-mta
diff options
context:
space:
mode:
Diffstat (limited to 'courier-mta')
m---------courier-mta0
-rw-r--r--courier-mta/PKGBUILD132
-rw-r--r--courier-mta/courier-courierfilter.service11
-rw-r--r--courier-mta/courier-esmtpd-msa.service13
-rw-r--r--courier-mta/courier-esmtpd-ssl.service13
-rw-r--r--courier-mta/courier-esmtpd.service13
-rw-r--r--courier-mta/courier-imapd-ssl.service13
-rw-r--r--courier-mta/courier-imapd.service13
-rw-r--r--courier-mta/courier-mkdhparams.service6
-rw-r--r--courier-mta/courier-mkdhparams.timer11
-rw-r--r--courier-mta/courier-mta.conf2
-rw-r--r--courier-mta/courier-mta.install35
-rw-r--r--courier-mta/courier-pop3d-ssl.service13
-rw-r--r--courier-mta/courier-pop3d.service13
-rw-r--r--courier-mta/courier.service12
-rw-r--r--courier-mta/webmaild.service13
16 files changed, 313 insertions, 0 deletions
diff --git a/courier-mta b/courier-mta
deleted file mode 160000
-Subproject dfac836d5adbd9c84ef031f0a881742492870e2
diff --git a/courier-mta/PKGBUILD b/courier-mta/PKGBUILD
new file mode 100644
index 00000000..39ceecac
--- /dev/null
+++ b/courier-mta/PKGBUILD
@@ -0,0 +1,132 @@
+# Maintainer: Erich Eckner <arch at eckner dot net>
+# Contributor: Neil Romig <neilromig@gmail.com>
+# Contributor: Bernd PrĂ¼nster <aur@berndpruenster.org>
+# Contributor: tobias <tobias@archlinux.org>
+# Contributor: Tobias Kieslich <tobias@justdreams.de>
+
+# ----------- NOTE TO ALL USERS ------------
+
+# Go read http://www.courier-mta.org/install.html b4 running or building courier
+
+# If upgrading, you must read the guidance at http://www.courier-mta.org/maildirmake.html on "Converting pre-unicode format maildirs"
+
+pkgname=courier-mta
+pkgver=1.0.3
+pkgrel=1
+pkgdesc="IMAP(s)/POP3(s) and SMTP Server with ML-manager, webmail and webconfig"
+arch=(i686 x86_64)
+license=('GPL2')
+url="https://courier-mta.org"
+depends=('courier-authlib>=0.68' 'courier-unicode>=2.1' 'gamin' 'gcc-libs' 'gdbm' 'pcre' 'mime-types' 'ca-certificates')
+optdepends=('libldap')
+makedepends=('pam' 'expect' 'gnupg' 'libldap' 'gamin')
+provides=('smtp-server' 'smtp-forwarder' 'imap-server' 'pop3-server' 'courier-imap' 'courier-maildrop')
+conflicts=('courier-imap' 'smtp-forwarder' 'smtp-server' 'imap-server' 'courier-maildrop' 'ucspi-tcp')
+options=(!libtool !staticlibs)
+# Specify some package files to backup that aren't managed by sysconftool during an upgrade
+backup=('etc/courier/aliases/system' 'etc/courier/smtpaccess/default' 'etc/courier/webadmin/password' 'etc/courier/imapd.cnf' 'etc/courier/esmtpd.cnf' 'etc/courier/pop3d.cnf' 'etc/courier/esmtpauthclient')
+install=courier-mta.install
+source=(https://downloads.sourceforge.net/project/courier/courier/${pkgver}/courier-${pkgver}.tar.bz2
+ courier-imapd.service
+ courier-imapd-ssl.service
+ courier-pop3d.service
+ courier-pop3d-ssl.service
+ courier-esmtpd.service
+ courier-esmtpd-ssl.service
+ courier-esmtpd-msa.service
+ courier.service
+ courier-mkdhparams.service
+ courier-mkdhparams.timer
+ webmaild.service
+ courier-courierfilter.service
+ courier-mta.conf)
+sha1sums=('0c475c9241b27d1725d5d2053d05e22188b5db76'
+ '9feaa269795a85c1464c104d9268fb266ad1a666'
+ '0344ac948b189cae73d86f4565e40847c44772c9'
+ '920bd35afc0bf6e6ba5cf7b309210be4d2c76e18'
+ '47c289e743d1d513b7181e04bc8cb222ba7d7119'
+ '0c57caa214c3e4da976162e08fd4f575f2976d94'
+ '6cb5d9a472ff374089b0046362db899ffa4379a2'
+ '86a07e4deddca5c1b3d17d2bd59074781a93711a'
+ '20e07d4995d6028ef0a99333b31cc53d202ee6e9'
+ 'feb094c689a0c37c68f3b0c7e2b88eb5d572209f'
+ '7c6e687d1cefe3139274b39c659351a503a3adb3'
+ 'ecd2a51d62c038cff16558e6377c09f94f201146'
+ '24d07f37ba5150b08f68dc73c0a5e53ae50ee9d5'
+ 'ba376789c8c5db6a709d2c4657b5bcf090417221')
+
+build() {
+ cd "${srcdir}/courier-${pkgver}"
+
+ LDFLAGS+=",-L /usr/lib/courier-authlib -lcourierauth"
+
+ ./configure --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc/courier \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var/spool/courier \
+ --enable-unicode \
+ --enable-workarounds-for-imap-client-bugs \
+ --enable-mimetypes=/etc/mime.types \
+ --with-piddir=/run/courier \
+ --with-trashquota \
+ --with-db=gdbm \
+ --with-random=/dev/urandom \
+ --without-ispell \
+ --with-mailuser=courier \
+ --with-mailgroup=courier \
+ --with-certdb=/etc/ssl/certs/ \
+ --with-notice=unicode
+ make
+}
+
+package() {
+ cd "${srcdir}/courier-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ # install the perftest-script for testings
+ install -Dm 755 courier/perftest1 "${pkgdir}/usr/lib/courier/perftest1"
+
+ # install sysconftool to perform the install-configure step after installation
+ install -Dm 755 sysconftool "${pkgdir}/usr/lib/courier/sysconftool"
+
+ # install pam files according to the layout used in Arch linux
+ for _pamfile in "${pkgdir}"/etc/courier/*.authpam; do
+ sed -i 's|/lib/security/pam_pwdb\.so|pam_unix.so|' "${_pamfile}"
+ install -Dm 644 "${_pamfile}" "${pkgdir}"/etc/pam.d/$(basename "${_pamfile}" .authpam | sed "s/d$//")
+ rm -f "${_pamfile}"
+ done
+
+ # Install systemd service files
+
+ install -Dm 644 "${srcdir}/courier-imapd.service" "${pkgdir}/usr/lib/systemd/system/courier-imapd.service"
+ install -Dm 644 "${srcdir}/courier-imapd-ssl.service" "${pkgdir}/usr/lib/systemd/system/courier-imapd-ssl.service"
+ install -Dm 644 "${srcdir}/courier-pop3d.service" "${pkgdir}/usr/lib/systemd/system/courier-pop3d.service"
+ install -Dm 644 "${srcdir}/courier-pop3d-ssl.service" "${pkgdir}/usr/lib/systemd/system/courier-pop3d-ssl.service"
+ install -Dm 644 "${srcdir}/courier-esmtpd.service" "${pkgdir}/usr/lib/systemd/system/courier-esmtpd.service"
+ install -Dm 644 "${srcdir}/courier-esmtpd-ssl.service" "${pkgdir}/usr/lib/systemd/system/courier-esmtpd-ssl.service"
+ install -Dm 644 "${srcdir}/courier-esmtpd-msa.service" "${pkgdir}/usr/lib/systemd/system/courier-esmtpd-msa.service"
+ install -Dm 644 "${srcdir}/courier.service" "${pkgdir}/usr/lib/systemd/system/courier.service"
+ install -Dm 644 "${srcdir}/courier-courierfilter.service" "${pkgdir}/usr/lib/systemd/system/courier-courierfilter.service"
+ install -Dm 644 "${srcdir}/webmaild.service" "${pkgdir}/usr/lib/systemd/system/webmaild.service"
+ install -Dm 644 "${srcdir}/courier-mkdhparams.service" "${pkgdir}/usr/lib/systemd/system/courier-mkdhparams.service"
+ install -Dm 644 "${srcdir}/courier-mkdhparams.timer" "${pkgdir}/usr/lib/systemd/system/courier-mkdhparams.timer"
+
+ # Install systemd configuration file which will set up empty /run/courier directory (and clean up after uninstall)
+
+ install -Dm 644 "$srcdir/courier-mta.conf" "$pkgdir/usr/lib/tmpfiles.d/courier-mta.conf"
+
+ # create password file for webadmin -> standard archwebadmin
+
+ echo archwebadmin > "${pkgdir}/etc/courier/webadmin/password"
+ chown courier:courier "${pkgdir}/etc/courier/webadmin/password"
+ chmod 400 "${pkgdir}/etc/courier/webadmin/password"
+
+ # install the imapd binary as /usr/lib/courier/courierimapd and modify usr/share scripts.
+ # courier-mta by default installs usr/bin/imapd as the binary, usr/share/imapd as script file and usr/sbin/imapd as link to /usr/share/imapd
+ # hence the binary gets overwritten by the link because Arch bin and sbin are same location
+ install -m 755 "${srcdir}/courier-${pkgver}/courier/imapd" "${pkgdir}/usr/lib/courier/courierimapd"
+ sed -i 's/\/usr\/bin\/imapd/\/usr\/lib\/courier\/courierimapd/' "${pkgdir}/usr/share/imapd" "${pkgdir}/usr/share/imapd-ssl"
+}
diff --git a/courier-mta/courier-courierfilter.service b/courier-mta/courier-courierfilter.service
new file mode 100644
index 00000000..44dda848
--- /dev/null
+++ b/courier-mta/courier-courierfilter.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Courier filter Daemon
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/courierfilter start
+ExecStop=/usr/sbin/courierfilter stop
+PIDFile=/run/courier/courierfilter.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-esmtpd-msa.service b/courier-mta/courier-esmtpd-msa.service
new file mode 100644
index 00000000..46206c3b
--- /dev/null
+++ b/courier-mta/courier-esmtpd-msa.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier ESMTP-MSA Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/esmtpd-msa start
+ExecStop=/usr/sbin/esmtpd-msa stop
+PIDFile=/run/courier/esmtpd-msa.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-esmtpd-ssl.service b/courier-mta/courier-esmtpd-ssl.service
new file mode 100644
index 00000000..6f43f237
--- /dev/null
+++ b/courier-mta/courier-esmtpd-ssl.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier ESMTP Daemon
+Requires=authdaemond.service
+After=authdaemond.service courier-courierfilter.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/esmtpd-ssl start
+ExecStop=/usr/sbin/esmtpd-ssl stop
+PIDFile=/run/courier/esmtpd-ssl.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-esmtpd.service b/courier-mta/courier-esmtpd.service
new file mode 100644
index 00000000..812a8cc3
--- /dev/null
+++ b/courier-mta/courier-esmtpd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier ESMTP Daemon
+Requires=authdaemond.service
+After=authdaemond.service courier-courierfilter.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/esmtpd start
+ExecStop=/usr/sbin/esmtpd stop
+PIDFile=/run/courier/esmtpd.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-imapd-ssl.service b/courier-mta/courier-imapd-ssl.service
new file mode 100644
index 00000000..f6f219c4
--- /dev/null
+++ b/courier-mta/courier-imapd-ssl.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier IMAP Daemon (SSL)
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/imapd-ssl start
+ExecStop=/usr/sbin/imapd-ssl stop
+PIDFile=/run/courier/imapd-ssl.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-imapd.service b/courier-mta/courier-imapd.service
new file mode 100644
index 00000000..d132b987
--- /dev/null
+++ b/courier-mta/courier-imapd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier IMAP Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/imapd start
+ExecStop=/usr/sbin/imapd stop
+PIDFile=/run/courier/imapd.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-mkdhparams.service b/courier-mta/courier-mkdhparams.service
new file mode 100644
index 00000000..1f5e72d2
--- /dev/null
+++ b/courier-mta/courier-mkdhparams.service
@@ -0,0 +1,6 @@
+[Unit]
+Description=Generate Diffie Hellman parameters for Courier MTA
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/mkdhparams
diff --git a/courier-mta/courier-mkdhparams.timer b/courier-mta/courier-mkdhparams.timer
new file mode 100644
index 00000000..c44ccb7c
--- /dev/null
+++ b/courier-mta/courier-mkdhparams.timer
@@ -0,0 +1,11 @@
+[Unit]
+Description=Generate Diffie Hellman parameters for Courier MTA
+
+[Timer]
+OnCalendar=monthly
+RandomizedDelaySec=3h
+Persistent=true
+
+[Install]
+WantedBy=timers.target
+
diff --git a/courier-mta/courier-mta.conf b/courier-mta/courier-mta.conf
new file mode 100644
index 00000000..d8f859a1
--- /dev/null
+++ b/courier-mta/courier-mta.conf
@@ -0,0 +1,2 @@
+D /run/courier 0755 courier courier
+R /run/courier
diff --git a/courier-mta/courier-mta.install b/courier-mta/courier-mta.install
new file mode 100644
index 00000000..3254de08
--- /dev/null
+++ b/courier-mta/courier-mta.install
@@ -0,0 +1,35 @@
+post_install() {
+ #set up the /var/run directory
+ systemd-tmpfiles --create /usr/lib/tmpfiles.d/courier-mta.conf
+
+ # perform all the tasks required of a standard Courier install
+ echo Performing install-configure...
+ /usr/lib/courier/sysconftool /etc/courier/*.dist > /etc/courier/install-configure-$1.log
+ echo "...output saved to /etc/courier/install-configure-$1.log"
+ echo "Don't forget to configure an account to receive postmaster mail"
+ makealiases
+ makesmtpaccess
+ /usr/bin/mkdhparams
+}
+
+pre_upgrade() {
+ # the file courier-imapd.conf is renamed to courier-mta.conf from version 0.77.0-2
+ [ -f /usr/lib/tmpfiles.d/courier-imapd.conf ] && rm -f /usr/lib/tmpfiles.d/courier-imapd.conf
+ [ "${1%%.*}" = "1" ] && [ "${2%%.*}" != "1" ] && echo "Please make sure you have read the guidance on pre-unicode maildir names."
+}
+
+post_upgrade() {
+ echo Performing install-configure...
+ /usr/lib/courier/sysconftool /etc/courier/*.dist > /etc/courier/install-configure-$1.log
+}
+
+pre_remove() {
+ # there may be many files not part of the original installation that would be useful to save
+ # so save the whole configuration directory rather than try to list all possibilities
+ # in backup().
+ mv -f /etc/courier /etc/courier-$1
+ echo "/etc/courier has been saved as /etc/courier-$1 - you may remove this folder if you wish."
+
+ # clean up temporary storage
+ rm -rf /run/courier /var/spool/courier
+}
diff --git a/courier-mta/courier-pop3d-ssl.service b/courier-mta/courier-pop3d-ssl.service
new file mode 100644
index 00000000..b1915304
--- /dev/null
+++ b/courier-mta/courier-pop3d-ssl.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier POP3 (SSL) Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/pop3d-ssl start
+ExecStop=/usr/sbin/pop3d-ssl stop
+PIDFile=/run/courier/pop3d-ssl.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier-pop3d.service b/courier-mta/courier-pop3d.service
new file mode 100644
index 00000000..28f0b9bf
--- /dev/null
+++ b/courier-mta/courier-pop3d.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier POP3 Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/pop3d start
+ExecStop=/usr/sbin/pop3d stop
+PIDFile=/run/courier/pop3d.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/courier.service b/courier-mta/courier.service
new file mode 100644
index 00000000..5df43a68
--- /dev/null
+++ b/courier-mta/courier.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Courier Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/courier start
+ExecStop=/usr/sbin/courier stop
+
+[Install]
+WantedBy=multi-user.target
diff --git a/courier-mta/webmaild.service b/courier-mta/webmaild.service
new file mode 100644
index 00000000..9412e4d9
--- /dev/null
+++ b/courier-mta/webmaild.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier Webmail Daemon
+Requires=authdaemond.service
+After=authdaemond.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/webmaild start
+ExecStop=/usr/sbin/webmaild stop
+PIDFile=/run/courier/webmaild.pid
+
+[Install]
+WantedBy=multi-user.target