aboutsummaryrefslogtreecommitdiffstats
path: root/community/roundcubemail/APKBUILD
blob: 7a53cb8fbc98496c142781ff949b45699009998f (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
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=roundcubemail
pkgver=1.3.6
pkgrel=1
pkgdesc="A PHP web-based mail client"
url="http://www.roundcube.net"
arch="noarch"
license="GPL-3.0-or-later"
_php=php7
depends="$_php
	$_php-dom
	$_php-exif
	$_php-iconv
	$_php-intl
	$_php-json
	$_php-mbstring
	$_php-openssl
	$_php-pdo
	$_php-pear-auth_sasl
	$_php-pear-mail_mime
	$_php-pear-net_idna2
	$_php-pear-net_smtp
	$_php-pear-net_socket
	$_php-session
	$_php-sockets
	$_php-xml
	$_php-zip
	ca-certificates
	"
pkgusers="roundcube"
pkggroups="$pkgusers"
options="!check"  # no tests provided
install="$pkgname.pre-install $pkgname.post-install $pkgname.post-upgrade
	$pkgname-openrc.post-install"
subpackages="$pkgname-installer $pkgname-openrc $pkgname-doc"
source="https://github.com/roundcube/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.gz
	fix-dirs.patch
	config-session_key.patch
	fpm-pool.conf
	$pkgname.confd
	$pkgname.logrotate
	"
builddir="$srcdir/$pkgname-$pkgver"

# secfixes:
#   1.3.6-r0:
#     - CVE-2018-9846
#   1.2.7-r0:
#     - CVE-2017-16651
#   1.2.5-r0:
#     - CVE-2017-8114

_destdir="usr/share/webapps/roundcube"

prepare() {
	cd "$builddir"
	default_prepare

	# fix permissions
	find . -type f -print | xargs chmod a-x
	# remove .htaccess
	find . -name \.htaccess -print | xargs rm -f

	# cleanup
	sed -i 's/\r//' SQL/mssql.initial.sql
	rm -rf logs temp
}

package() {
	mkdir -p "$pkgdir/$_destdir"
	cd "$pkgdir"

	cp -rp "$builddir"/* ./$_destdir/

	# Install config in /etc/roundcube so config files are not overwritten
	# on upgrades.
	mkdir -p ./etc/
	mv ./$_destdir/config ./etc/roundcube

	local file; for file in CHANGELOG INSTALL README.md UPGRADING; do
		_mv ./$_destdir/$file ./usr/share/doc/roundcube/
	done
	_mv ./$_destdir/LICENSE ./usr/share/licenses/roundcube/

	install -m 644 -D "$srcdir"/$pkgname.logrotate ./etc/logrotate.d/$pkgname

	install -d -m 750 -o roundcube -g roundcube ./var/log/roundcube
}

installer() {
	pkgdesc="Roundcubemail installer script"
	depends="$pkgname=$pkgver-r$pkgrel"

	_mv "$pkgdir"/$_destdir/installer "$subpkgdir"/$_destdir/
}

openrc() {
	pkgdesc="OpenRC init script that runs Roundcube with php-fpm"
	depends="$pkgname=$pkgver-r$pkgrel $_php-fpm"

	local confdir="$subpkgdir/etc/$_php/php-fpm.d"
	local fpm_name="php-fpm${_php#php}"

	install -m 644 -D "$srcdir"/fpm-pool.conf "$confdir"/roundcube.conf
	install -m 644 -D "$srcdir"/$pkgname.confd "$subpkgdir"/etc/conf.d/roundcube

	mkdir -p "$subpkgdir"/etc/init.d
	ln -s $fpm_name "$subpkgdir"/etc/init.d/roundcube

	install -m 700 -o roundcube -g roundcube -d "$subpkgdir"/var/tmp/roundcube
}

_mv() {
	local dest; for dest; do true; done  # get last argument
	mkdir -p "$dest"
	mv $@
}

sha512sums="c5e1e80034392ea4fcf780750ad2b7db43422a746462015865cbdb027e9e47b2bae7b191da19b65a7b9303c195bdfd0aa5b5a0382c09dd97d117671271cdc122  roundcubemail-1.3.6.tar.gz
d205ba8442870b26f93fb287e7fe2bd1a452ea534823869b7ef299e2dca52d64c8a3fdc9a44bd3bc731c1e400efcf745c1866974e3b908e4e54d05b47b835f3e  fix-dirs.patch
7c4b88da4d2baa53d247dcb7b130d564954a04611c13f2770f45924fafab2a0e98f8dd078cabc87f3eddd0ab03f3ca48a48f27a462676354af22566cb19d220b  config-session_key.patch
c88d609e94c212215a24f54d2a2cb800d4a382b1044e0c875416bdda6a4e6c0cb896675918e8d24f3ed9e1b677d526d61f3ee1564cb870f674dac687696e8ba4  fpm-pool.conf
acaa76bfbba6117172a02ad11e39f9b55838895104e75180b057f647156c04fd2e44ac695a333f2332691d19bac5ef8afaca1f89ad409800b19f78afbb40aecb  roundcubemail.confd
2e923d556d46bd7dc9360c3190fa1c5864bd0385fadaf73dacee5780cdad94ce09bc8462ccc05c3ca70bc7890aa1f1b3314a3cc831eab9d5b06c5a463483ccf7  roundcubemail.logrotate"