aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-06-16 11:43:47 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-06-16 11:43:47 +0000
commita587866e79bce8769a5fb346b4feb9c1ac9c1f09 (patch)
tree1daa7ff558536f582d4869aa80863520c41017fc
parent654fafea2b207191eb4e7d1a6bae88706df90bbc (diff)
downloadalpine_aports-a587866e79bce8769a5fb346b4feb9c1ac9c1f09.tar.bz2
alpine_aports-a587866e79bce8769a5fb346b4feb9c1ac9c1f09.tar.xz
alpine_aports-a587866e79bce8769a5fb346b4feb9c1ac9c1f09.zip
main/dovecot: set localstatedir
fixes #359 also create a default config that works out of the box. (cherry picked from commit 21efade36950aecb8d5e3a63e4050db86913dbe5) Conflicts: main/dovecot/APKBUILD
-rw-r--r--main/dovecot/APKBUILD28
-rw-r--r--main/dovecot/dovecot.post-install31
2 files changed, 55 insertions, 4 deletions
diff --git a/main/dovecot/APKBUILD b/main/dovecot/APKBUILD
index 449012806b..500fc20963 100644
--- a/main/dovecot/APKBUILD
+++ b/main/dovecot/APKBUILD
@@ -2,14 +2,16 @@
2# Maintainer: Natanael Copa <ncopa@alpinelinux.org> 2# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
3pkgname=dovecot 3pkgname=dovecot
4pkgver=1.2.11 4pkgver=1.2.11
5pkgrel=1 5pkgrel=2
6pkgdesc="IMAP and POP3 server" 6pkgdesc="IMAP and POP3 server"
7url="http://www.dovecot.org/" 7url="http://www.dovecot.org/"
8license="LGPL-2.1" 8license="LGPL-2.1"
9depends= 9depends="openssl"
10pkgusers="dovecot"
11pkggroups="dovecot"
10makedepends="libcap-dev zlib-dev openssl-dev bzip2-dev postgresql-dev 12makedepends="libcap-dev zlib-dev openssl-dev bzip2-dev postgresql-dev
11 mysql-dev sqlite-dev" 13 mysql-dev sqlite-dev"
12install="dovecot.pre-install" 14install="dovecot.pre-install dovecot.post-install"
13subpackages="$pkgname-doc $pkgname-dev $pkgname-pgsql $pkgname-mysql 15subpackages="$pkgname-doc $pkgname-dev $pkgname-pgsql $pkgname-mysql
14 $pkgname-sqlite" 16 $pkgname-sqlite"
15source="http://www.dovecot.org/releases/1.2/$pkgname-$pkgver.tar.gz 17source="http://www.dovecot.org/releases/1.2/$pkgname-$pkgver.tar.gz
@@ -20,6 +22,7 @@ build() {
20 cd "$srcdir/$pkgname-$pkgver" 22 cd "$srcdir/$pkgname-$pkgver"
21 23
22 ./configure --prefix=/usr \ 24 ./configure --prefix=/usr \
25 --localstatedir=/var \
23 --sysconfdir=/etc/dovecot \ 26 --sysconfdir=/etc/dovecot \
24 --mandir=/usr/share/man \ 27 --mandir=/usr/share/man \
25 --infodir=/usr/share/info \ 28 --infodir=/usr/share/info \
@@ -36,8 +39,25 @@ build() {
36package() { 39package() {
37 cd "$srcdir/$pkgname-$pkgver" 40 cd "$srcdir/$pkgname-$pkgver"
38 make DESTDIR="$pkgdir" install 41 make DESTDIR="$pkgdir" install
39 install -d "$pkgdir"/var/run/dovecot 42 install -d "$pkgdir"/var/run/dovecot \
43 "$pkgdir"/etc/ssl/dovecot
40 install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname 44 install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
45 install doc/dovecot-openssl.cnf "$pkgdir"/etc/dovecot/
46 mv "$pkgdir"/etc/dovecot/dovecot-example.conf \
47 "$pkgdir"/etc/dovecot/dovecot.conf || return 1
48
49 # fix ssl dirs in defautl config and set defautl passdb to passwd
50 sed -i -e 's,^#ssl_cert_file =.*,ssl_cert_file = /etc/ssl/dovecot/server.pem,' \
51 -e 's,^#ssl_key_file =.*,ssl_key_file = /etc/ssl/dovecot/server.key,' \
52 -e '/passdb pam {/,/^$/{
53 s/passdb pam/\#passdb pam/
54 s/}/\#}/
55 }' \
56 -e '/\#passdb passwd {/,/^$/{
57 s/\#passdb passwd/passdb passwd/
58 s/\#\}/\}/
59 }' \
60 "$pkgdir"/etc/dovecot/dovecot.conf
41} 61}
42 62
43_mv() { 63_mv() {
diff --git a/main/dovecot/dovecot.post-install b/main/dovecot/dovecot.post-install
new file mode 100644
index 0000000000..a7cccddfd8
--- /dev/null
+++ b/main/dovecot/dovecot.post-install
@@ -0,0 +1,31 @@
1#!/bin/sh
2
3# based on doc/mkcert.sh
4
5# Generates a self-signed certificate.
6# Edit dovecot-openssl.cnf before running this.
7
8OPENSSL=${OPENSSL-openssl}
9SSLDIR=${SSLDIR-/etc/ssl/dovecot}
10OPENSSLCONFIG=${OPENSSLCONFIG-/etc/dovecot/dovecot-openssl.cnf}
11
12CERTDIR=$SSLDIR
13KEYDIR=$SSLDIR
14
15CERTFILE=$CERTDIR/server.pem
16KEYFILE=$KEYDIR/server.key
17
18if [ -e "$CERTFILE" ]; then
19 echo "Keeiping existing $CERTFILE"
20 exit 0
21fi
22
23if [ -e "$KEYFILE" ]; then
24 echo "Keeiping existing $KEYFILE"
25 exit 0
26fi
27
28$OPENSSL req -new -x509 -nodes -config $OPENSSLCONFIG -out $CERTFILE -keyout $KEYFILE -days 365 || exit 2
29chmod 0600 $KEYFILE
30echo
31$OPENSSL x509 -subject -fingerprint -noout -in $CERTFILE || exit 2