aboutsummaryrefslogtreecommitdiffstats
path: root/community/exim/APKBUILD
blob: 315c4a9ebee3b97a9f9a12f614f8a4f1c97c5ff6 (plain) (blame)
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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Contributor: Ash Berlin-Taylor <ash.berlin@gmail.com>
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Contributor: Ɓukasz Jendrysik <scadu@yandex.com>
# Contributor: Jesse Young <jlyo@jlyo.org>
# Maintainer: Jesse Young <jlyo@jlyo.org>
pkgname=exim
pkgver=4.95
pkgrel=0
pkgdesc="Message Transfer Agent"
url="https://www.exim.org/"
arch="all"
license="GPL-2.0-or-later"
options="!check suid"
pkgusers="$pkgname"
pkggroups="$pkgname mail"
depends="ca-certificates"
makedepends="bash tdb-dev gawk libidn-dev libspf2-dev linux-headers
	mariadb-connector-c-dev openssl1.1-compat-dev pcre-dev perl postgresql-dev sqlite-dev
	"
install="exim.pre-install"
subpackages="$pkgname-cdb $pkgname-dbmdb $pkgname-dnsdb $pkgname-doc
	$pkgname-mysql $pkgname-openrc $pkgname-postgresql
	$pkgname-scripts::noarch $pkgname-sqlite $pkgname-utils
	"
source="https://ftp.exim.org/pub/exim/exim4/exim-$pkgver.tar.xz
	bounce-charset.patch
	exim.Makefile
	exim.confd
	exim.initd
	exim.logrotate
	exim.gencert
	"

# secfixes:
#   4.94.2-r0:
#     - CVE-2021-27216
#     - CVE-2020-28007
#     - CVE-2020-28008
#     - CVE-2020-28009
#     - CVE-2020-28010
#     - CVE-2020-28011
#     - CVE-2020-28012
#     - CVE-2020-28013
#     - CVE-2020-28014
#     - CVE-2020-28015
#     - CVE-2020-28016
#     - CVE-2020-28017
#     - CVE-2020-28018
#     - CVE-2020-28019
#     - CVE-2020-28020
#     - CVE-2020-28021
#     - CVE-2020-28022
#     - CVE-2020-28023
#     - CVE-2020-28024
#     - CVE-2020-28025
#     - CVE-2020-28026
#   4.93-r1:
#     - CVE-2020-12783
#   4.92.2-r1:
#     - CVE-2019-16928
#   4.92.2-r0:
#     - CVE-2019-15846
#   4.92.1-r0:
#     - CVE-2019-13917
#   4.92-r0:
#     - CVE-2019-10149
#   4.89-r5:
#     - CVE-2017-1000369
#   4.89-r7:
#     - CVE-2017-16943
#   4.89.1-r0:
#     - CVE-2017-16944
#   4.90.1-r0:
#     - CVE-2018-6789

prepare() {
	default_prepare

	cp "$srcdir"/$pkgname.Makefile Local/Makefile
	sed -i \
		-e 's/-lnsl//g' \
		-e 's/^HAVE_ICONV.*$//' \
		OS/Makefile-Linux
}

build() {
	make makefile
	make
}

package() {
	install -m750 -D -g mail -d "$pkgdir"/etc/mail
	make DESTDIR="$pkgdir" INSTALL_ARG="-no_symlink -no_chown exim" install
	install -D -m644 doc/exim.8 "$pkgdir"/usr/share/man/man8/exim.8
	cd "$pkgdir"/usr/sbin
	mv exim-${pkgver%.*}* exim
	chmod u+s exim
	local i; for i in mailq rmail rsmtp runq sendmail newaliases; do
		ln -s exim $i
	done
	install -Dm644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
	install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
	install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
	# Fix clamav local socket path, Add variant to spamd address
	sed -i \
		-e 's~# av_scanner = clamd:/tmp/clamd~# av_scanner = clamd:/run/clamav/clamd.sock~' \
		-e '/# spamd_address = 127.0.0.1 783/a# spamd_address = 127.0.0.1 11333 variant=rspamd' \
		"$pkgdir"/etc/$pkgname/$pkgname.conf
	# Create subdirs for logs and extensions
	install -dm750 -o $pkgname -g mail "$pkgdir"/var/log/$pkgname
	mkdir -p "$pkgdir"/usr/lib/$pkgname
}

scripts() {
	pkgdesc="EXIM scripts"
	depends="$pkgname perl"
	cd "$builddir"
	make	DESTDIR="$subpkgdir" \
		INSTALL_ARG="exicyclog exim_checkaccess eximstats exiqgrep exigrep exinext exiqsumm exipick exiwhat convert4r3 convert4r4" \
		install
	rm -fr "${subpkgdir:?}"/etc
}

utils() {
	pkgdesc="EXIM utils"
	depends="$pkgname"
	cd "$builddir"
	make	DESTDIR="$subpkgdir" \
		INSTALL_ARG="exim_dbmbuild exim_dumpdb exim_tidydb exim_fixdb exim_lock" \
		install
	install -m755 "$srcdir"/exim.gencert "$subpkgdir"/usr/sbin/exim_gencert
	rm -fr "${subpkgdir:?}"/etc
}

_mv_ext() {
	pkgdesc="EXIM extension: $1"
	depends="$pkgname"
	install -D -m755 "$builddir"/build-Linux-*/lookups/$1.so "$subpkgdir"/usr/lib/$pkgname/$1.so
}

sqlite() { _mv_ext sqlite; }
mysql() { _mv_ext mysql; }
postgresql() { _mv_ext pgsql; }
cdb() { _mv_ext cdb; }
dbmdb() { _mv_ext dbmdb; }
dnsdb() { _mv_ext dnsdb; }

sha512sums="
93d09c20d99f27da5edbe3e6dc7d25aa4548faa2b67ca26f2cc0b4aeaf58398dd468e0263714fcf0df97531f05d16fcd3f1f0e9d0656ead7858a66b248a44a65  exim-4.95.tar.xz
691df92954f015711398350963ea321d143127bc731a985bcacc5364c71b6df84b6c21a2e8dc3cc2048fcd3dd02def3dc8015f4d84dd672f23d5a41348e72dc7  bounce-charset.patch
d0a8a009233ff8b5adaa803f190bd3dc177d817c12f373a05fac2535fd7fd6b4d455f9ebfeb812a218b36fca426f94e7975e3401c93e4883f42ef80432f16b6f  exim.Makefile
bb6f5ead067af19ace661cc92bcd428da97570aedd1f9dc5b61a34e7e3fb3e028be6c96d51df73353bdfcaf69a3ee053fb03d245f868d63ebf518aa96ec82d66  exim.confd
3769e74a54566362bcdf57c45fbf7d130d7a7529fbc40befce431eef0387df117c71a5b57779c507e30d5b125913b5f26c9d16b17995521a1d94997be6dc3e02  exim.initd
28e748693a6a72d9943fa9c342ff041fe650fa6977f468dee127e845e6c2a91872ce33fb6f5698838906bde3ed92de7a91cdb0349cedc40b806261867e8c06cb  exim.logrotate
abdaf749ed3947a75b997caa300bf9f27ef82760f1854aa4521a9ac0f322f1655b65a375bc7a709259daea88bf93cfab5289997fa8e376fac9a3477f09bab642  exim.gencert
"