summaryrefslogtreecommitdiff
path: root/extra/imap/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'extra/imap/PKGBUILD')
-rw-r--r--extra/imap/PKGBUILD85
1 files changed, 85 insertions, 0 deletions
diff --git a/extra/imap/PKGBUILD b/extra/imap/PKGBUILD
new file mode 100644
index 000000000..2aed4adbb
--- /dev/null
+++ b/extra/imap/PKGBUILD
@@ -0,0 +1,85 @@
+# $Id: PKGBUILD 75284 2010-04-01 07:07:12Z pierre $
+# Maintainer: judd <jvinet@zeroflux.org>
+pkgname=imap
+pkgver=2007e
+pkgrel=2
+pkgdesc="An IMAP/POP server"
+arch=('i686' 'x86_64')
+license=('APACHE')
+url="http://www.washington.edu/imap"
+depends=('openssl' 'pam')
+provides=('imap-server' 'pop3-server')
+conflicts=('courier-mta' 'courier-imap')
+source=("ftp://ftp.cac.washington.edu/imap/${pkgname}-${pkgver}.tar.gz"
+ 'imap' 'ipop2' 'ipop3')
+backup=(etc/xinetd.d/{imap,ipop2,ipop3} etc/ssl/certs/{imapd,ipop3d}.pem)
+md5sums=('7903800dc2604000016de070e0c55840'
+ 'e77dedb80c2fec9bf2ef784ed5f976fb'
+ 'cc3eba6453242aa0b1bc8881160b2136'
+ '0a5e27183a9b7e8ec5f6703125371e0a')
+
+
+build() {
+ # fix Makefile
+ cd $srcdir/$pkgname-$pkgver/src/osdep/unix
+ cp Makefile Makefile.orig
+ sed \
+ -e "s:-g -fno-omit-frame-pointer -O6:\${CFLAGS}:" \
+ -e "s:SSLDIR=/usr/local/ssl:SSLDIR=/usr:" \
+ -e "s:SSLCERTS=\$(SSLDIR)/certs:SSLCERTS=/etc/ssl/certs:" \
+ < Makefile.orig > Makefile
+
+ cd $srcdir/$pkgname-$pkgver
+ # NOTE: if you wish to enforce SSL, use SSLTYPE=unix.nopwd
+
+ if [ "$CARCH" == "x86_64" ]; then
+ yes "y" | make lnp SPECIALAUTHENTICATORS=ssl SSLTYPE=unix EXTRACFLAGS="${CFLAGS} -fPIC" || return 1
+ else yes "y" | make lnp SPECIALAUTHENTICATORS=ssl SSLTYPE=unix || return 1
+ fi
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ mkdir -p $pkgdir/usr/sbin
+ install -D -m755 imapd/imapd $pkgdir/usr/sbin/imapd
+ install -D -m755 ipopd/ipop2d $pkgdir/usr/sbin/ipop2d
+ install -D -m755 ipopd/ipop3d $pkgdir/usr/sbin/ipop3d
+ for i in c-client mail imap4r1 rfc822 linkage misc smtp nntp \
+ osdep env_unix env fs ftl nl tcp sslio utf8 utf8aux; do
+ install -D -m644 c-client/${i}.h $pkgdir/usr/include/imap/${i}.h
+ done
+ install -D -m644 c-client/c-client.a $pkgdir/usr/lib/c-client.a
+ ln -sf c-client.a $pkgdir/usr/lib/libc-client.a
+
+ # create ssl certs for secure imap
+ for i in imapd ipop3d; do
+ umask 077
+ PEM1=`/usr/bin/mktemp /tmp/openssl.XXXXXX`
+ PEM2=`/usr/bin/mktemp /tmp/openssl.XXXXXX`
+ /usr/bin/openssl req -newkey rsa:1024 -keyout $$PEM1 \
+ -nodes -x509 -days 365 -out $$PEM2 << EOF
+--
+SomeState
+SomeCity
+SomeOrganization
+SomeOrganizationalUnit
+localhost.localdomain
+root@localhost.localdomain
+EOF
+
+ cat $$PEM1 > ${i}.pem
+ echo "" >> ${i}.pem
+ cat $$PEM2 >> ${i}.pem
+ rm $$PEM1 $$PEM2
+ umask 022
+ done
+
+ # install 'em
+ install -D -m600 imapd.pem $pkgdir/etc/ssl/certs/imapd.pem
+ install -D -m600 ipop3d.pem $pkgdir/etc/ssl/certs/ipop3d.pem
+
+ # install xinetd.d configs
+ install -D -m644 ../imap $pkgdir/etc/xinetd.d/imap
+ install -D -m644 ../ipop2 $pkgdir/etc/xinetd.d/ipop2
+ install -D -m644 ../ipop3 $pkgdir/etc/xinetd.d/ipop3
+}