blob: 1b11953721c7489a9395bd1e30b434ea1ecf48f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dovecot
pkgver=2.1.16
pkgrel=0
pkgdesc="IMAP and POP3 server"
url="http://www.dovecot.org/"
arch="all"
license="LGPL-2.1"
depends="openssl logrotate"
pkgusers="dovecot dovenull"
pkggroups="dovecot dovenull"
makedepends="libcap-dev zlib-dev openssl-dev bzip2-dev postgresql-dev
mysql-dev sqlite-dev heimdal-dev openldap-dev"
install="dovecot.pre-install dovecot.post-install"
subpackages="$pkgname-sample-config:config $pkgname-doc $pkgname-dev
$pkgname-pgsql $pkgname-mysql $pkgname-sqlite $pkgname-gssapi
$pkgname-ldap"
patches="
hide-dl-errors.patch
"
source="http://www.dovecot.org/releases/${pkgver%.*}/$pkgname-$pkgver.tar.gz
$patches
dovecot.logrotate
dovecot.initd
dovecot-sample-config.post-install
"
prepare() {
cd "$srcdir"/$pkgname-$pkgver
for i in $patches; do
msg $i
patch -p1 -i "$srcdir"/$i || return 1
done
}
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr \
--localstatedir=/var \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-gssapi=plugin \
--with-ldap=plugin \
--with-sql=plugin \
--with-mysql \
--with-sqlite \
--with-pgsql \
--with-ssl=openssl || return 1
make || return 1
}
package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install || return 1
rm "$pkgdir"/usr/lib/dovecot/*.la \
"$pkgdir"/usr/lib/dovecot/*/*.la || return 1
install -d "$pkgdir"/var/run/dovecot \
"$pkgdir"/etc/ssl/dovecot
install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
install -D "$srcdir"/dovecot.logrotate "$pkgdir"/etc/logrotate.d/dovecot
# default config
install doc/dovecot-openssl.cnf "$pkgdir"/etc/dovecot/
cp "$pkgdir"/usr/share/doc/dovecot/example-config/dovecot.conf \
"$pkgdir"/etc/dovecot/dovecot.conf || return 1
mkdir -p "$pkgdir"/etc/dovecot/conf.d
# fix ssl dirs in default config and set defautl passdb to passwd
sed -i -e 's,^ssl_cert =.*,ssl_cert = </etc/ssl/dovecot/server.pem,' \
-e 's,^ssl_key =.*,ssl_key = </etc/ssl/dovecot/server.key,' \
"$pkgdir"/usr/share/doc/dovecot/example-config/conf.d/10-ssl.conf\
|| return 1
# install ssl config by default
cp "$pkgdir"/usr/share/doc/dovecot/example-config/conf.d/10-ssl.conf\
"$pkgdir"/etc/dovecot/conf.d/ || return 1
}
_mv() {
local i
while [ $# -gt 0 ]; do
local dir=${1%/*}
mkdir -p "$subpkgdir"/$dir
mv "$pkgdir/$1" "$subpkgdir/$dir/"
shift
done
}
pgsql() {
pkgdesc="postgresql driver for dovecot"
_mv $(cd "$pkgdir" && find usr -name '*pgsql.so')
}
mysql() {
pkgdesc="mysql driver for dovecot"
_mv $(cd "$pkgdir" && find usr -name '*mysql.so')
}
sqlite() {
pkgdesc="sqlite driver for dovecot"
_mv $(cd "$pkgdir" && find usr -name '*sqlite.so')
}
gssapi() {
pkgdesc="GSSAPI auth plugin for dovecot"
_mv $(cd "$pkgdir" && find usr -name '*gssapi.so')
}
ldap() {
pkgdesc="LDAP plugin for dovecot"
_mv $(cd "$pkgdir" && find usr -name '*ldap.so')
}
config() {
pkgdesc="Sample configuration files for dovecot"
install="dovecot-sample-config.post-install"
_mv usr/share/doc/dovecot/example-config
mkdir -p "$subpkgdir"/etc/dovecot/conf.d
}
md5sums="72abf618cfa678194f9338f6c0aeb47d dovecot-2.1.16.tar.gz
49f7a03284cc657857fe2ae22b8c82a0 hide-dl-errors.patch
aec5cc797ab2acf72ce3b6bb1030345f dovecot.logrotate
59f210c712284a82e3a65b4126ddd99c dovecot.initd
95cf57ecc835882228bbbb019ce3abf8 dovecot-sample-config.post-install"
sha256sums="a61d5fa774615849f6e754232c41a7a87dd0de619f1089627c3682180fa9b447 dovecot-2.1.16.tar.gz
d6accdd6e271647c01ab8fa0a9491ee822486484961e2d5c252bf70e816d2bfa hide-dl-errors.patch
3ac8a0b2b078f84e598266c047937f4e63265ff646866a944d9b4f03b6fe4896 dovecot.logrotate
47fc6193dc843c1422771c4914f2d2c2246130cb8fbb85041b5bd86896e79f2f dovecot.initd
7dab0591eca7fe1473ae7b39ed9ae0d7d51617ffea01252ace5c3aa68150693f dovecot-sample-config.post-install"
sha512sums="634600ae99db8d29766aa05d21df06f4f5e9c2bb3b8378e6a92fcdc0eb3e2ae2e8383c7d516623d774dc13bae72a47a79587ec5b527c7bb47fdb5da704c4047b dovecot-2.1.16.tar.gz
1e9a1f2990019236546c7be581a4d6d0b430110d27a00bc3298f5c154ef9a4aadefa193d02a017912f826d771058fd5c6ef6cb454e14f0d15749fa8f3a68c64a hide-dl-errors.patch
cd7c0feb5ad620175692be2f9ca821fbccd970647c5bf5b597dc02d48ab128cc2f7aa7657804e984197e590c8804ac7f7491fa40c6efb03f5209e127fa00583f dovecot.logrotate
30ccbedee68567548d530b48852df7695c889f70733833968aac6d94593636a55c404b9b7331e994ccf4ae165ea1e1813802ef378b5e0c241fb8b819b88af574 dovecot.initd
c5665334b0664ae29f52c022a8ffc2e520cfc506e399d2e614464dd5770caade794eeaf3406fe8ded1d927b06672d0597e2fe53d32fbfaf9f4cf025bce792a5b dovecot-sample-config.post-install"
|