diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2010-06-16 11:43:47 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2010-06-16 11:43:47 +0000 |
commit | a587866e79bce8769a5fb346b4feb9c1ac9c1f09 (patch) | |
tree | 1daa7ff558536f582d4869aa80863520c41017fc | |
parent | 654fafea2b207191eb4e7d1a6bae88706df90bbc (diff) | |
download | alpine_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/APKBUILD | 28 | ||||
-rw-r--r-- | main/dovecot/dovecot.post-install | 31 |
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> |
3 | pkgname=dovecot | 3 | pkgname=dovecot |
4 | pkgver=1.2.11 | 4 | pkgver=1.2.11 |
5 | pkgrel=1 | 5 | pkgrel=2 |
6 | pkgdesc="IMAP and POP3 server" | 6 | pkgdesc="IMAP and POP3 server" |
7 | url="http://www.dovecot.org/" | 7 | url="http://www.dovecot.org/" |
8 | license="LGPL-2.1" | 8 | license="LGPL-2.1" |
9 | depends= | 9 | depends="openssl" |
10 | pkgusers="dovecot" | ||
11 | pkggroups="dovecot" | ||
10 | makedepends="libcap-dev zlib-dev openssl-dev bzip2-dev postgresql-dev | 12 | makedepends="libcap-dev zlib-dev openssl-dev bzip2-dev postgresql-dev |
11 | mysql-dev sqlite-dev" | 13 | mysql-dev sqlite-dev" |
12 | install="dovecot.pre-install" | 14 | install="dovecot.pre-install dovecot.post-install" |
13 | subpackages="$pkgname-doc $pkgname-dev $pkgname-pgsql $pkgname-mysql | 15 | subpackages="$pkgname-doc $pkgname-dev $pkgname-pgsql $pkgname-mysql |
14 | $pkgname-sqlite" | 16 | $pkgname-sqlite" |
15 | source="http://www.dovecot.org/releases/1.2/$pkgname-$pkgver.tar.gz | 17 | source="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() { | |||
36 | package() { | 39 | package() { |
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 | |||
8 | OPENSSL=${OPENSSL-openssl} | ||
9 | SSLDIR=${SSLDIR-/etc/ssl/dovecot} | ||
10 | OPENSSLCONFIG=${OPENSSLCONFIG-/etc/dovecot/dovecot-openssl.cnf} | ||
11 | |||
12 | CERTDIR=$SSLDIR | ||
13 | KEYDIR=$SSLDIR | ||
14 | |||
15 | CERTFILE=$CERTDIR/server.pem | ||
16 | KEYFILE=$KEYDIR/server.key | ||
17 | |||
18 | if [ -e "$CERTFILE" ]; then | ||
19 | echo "Keeiping existing $CERTFILE" | ||
20 | exit 0 | ||
21 | fi | ||
22 | |||
23 | if [ -e "$KEYFILE" ]; then | ||
24 | echo "Keeiping existing $KEYFILE" | ||
25 | exit 0 | ||
26 | fi | ||
27 | |||
28 | $OPENSSL req -new -x509 -nodes -config $OPENSSLCONFIG -out $CERTFILE -keyout $KEYFILE -days 365 || exit 2 | ||
29 | chmod 0600 $KEYFILE | ||
30 | echo | ||
31 | $OPENSSL x509 -subject -fingerprint -noout -in $CERTFILE || exit 2 | ||