aboutsummaryrefslogtreecommitdiffstats
path: root/community/nextcloud/APKBUILD
blob: 68be1f60d348abcd81d2b679e055e25d64065cba (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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=nextcloud
pkgver=11.0.3
pkgrel=0
pkgdesc="A safe home for all your data"
url="http://nextcloud.com"
arch="noarch"
license="AGPL"
_php=php7
depends="$_php ${_php}-ctype ${_php}-curl ${_php}-dom ${_php}-gd ${_php}-iconv
	${_php}-json ${_php}-openssl ${_php}-xml ${_php}-xmlreader
	${_php}-zlib ${_php}-zip
	"
depends_dev=
makedepends="$depends_dev"
install=
options="!check"
subpackages="$pkgname-doc $pkgname-activity $pkgname-firstrunwizard $pkgname-gallery
	$pkgname-mysql $pkgname-notifications $pkgname-pdfviewer $pkgname-pgsql
	$pkgname-sqlite $pkgname-templateeditor $pkgname-texteditor
	$pkgname-videoplayer"

source="https://download.nextcloud.com/server/releases/$pkgname-$pkgver.zip
	nextcloud10-dont-chmod-config.patch
	"
pkggroups="www-data"

builddir="$srcdir"/$pkgname

_ncbasedir="/var/lib/$pkgname"
_ncdatadir="$_ncbasedir/data"
_ncwwwdir="/usr/share/webapps/$pkgname"
_ncappsdir="$_ncbasedir/apps"
_ncconfdir="/etc/$pkgname"


prepare() {
	cd "$builddir"
        for i in $source; do
                case $i in
                *.patch) msg "Applying patch $i"; patch -p1 -i "$srcdir"/$i || return 1;;
                esac
        done
}

build() {
	cd "$builddir"
	return 0
}

package() {
	cd "$builddir"
	for dir in ${_ncconfdir} ${_ncdatadir} ${_ncwwwdir}; do
		mkdir -p "$pkgdir"$dir || return 1
	done
	rm -rf config data
	mv * "$pkgdir"${_ncwwwdir} || return 1
	chmod +x "$pkgdir"${_ncwwwdir}/occ || return 1
	ln -s $_ncconfdir "$pkgdir"${_ncwwwdir}/config || return 1
	install -m664 .htaccess "$pkgdir"${_ncwwwdir}/.htaccess || return 1
	install -m664 .user.ini "$pkgdir"${_ncwwwdir}/.user.ini || return 1
	install -m664 ../../${pkgname}-config.php "$pkgdir"/etc/$pkgname/config.php || return 1
	mv "$pkgdir"$_ncwwwdir/apps "$pkgdir"$_ncbasedir || return 1
	ln -s $_ncappsdir "$pkgdir"$_ncwwwdir/apps || return 1
	install -m775 -g www-data -d "$pkgdir"/var/log/nextcloud
	for dir in ${_ncconfdir} ${_ncdatadir} ${_ncappsdir}; do
		chown -R :www-data "$pkgdir"$dir || return 1
		chmod -R 770 "$pkgdir"$dir || return 1
	done
}

doc() {
	pkgdesc="Nextcloud documentation"
	depends="nextcloud"
	mkdir -p "$subpkgdir"/usr/share/doc/nextcloud/core
	mv "$pkgdir"/usr/share/webapps/nextcloud/core/doc \
	 "$subpkgdir"/usr/share/doc/nextcloud/core
}

pgsql() {
	pkgdesc="Nextcloud PostgreSQL support"
	depends="nextcloud ${_php}-pgsql ${_php}-pdo_pgsql ${_php}-pear-mdb2-driver-pgsql"
	mkdir -p "$subpkgdir"${_ncwwwdir}
}

sqlite() {
	pkgdesc="Nextcloud SQLite support"
	depends="nextcloud ${_php}-sqlite3 ${_php}-pdo_sqlite"
	mkdir -p "$subpkgdir"${_ncwwwdir}
}

mysql() {
	pkgdesc="Nextcloud MySQL support"
	depends="nextcloud ${_php}-mysql ${_php}-pdo_mysql ${_php}-pear-mdb2-driver-mysql"
	mkdir -p "$subpkgdir"${_ncwwwdir}
}

_mv_app() {
	mkdir -p "$subpkgdir"${_ncappsdir} || return 1
	if [ "$1" = "pkg" ]; then
		mv "$pkgdir"${_ncappsdir}/$2 "$subpkgdir"${_ncappsdir} || return 1
	elif [ "$1" = "src" ]; then
		local appname="${subpkgname#$pkgname-}"
		mv "$srcdir"/$2 "$subpkgdir"${_ncappsdir}/$appname || return 1
	fi
	chown -R :www-data "$subpkgdir"${_ncappsdir} || return 1
	chmod 770 "$subpkgdir"${_ncappsdir} || return 1
}

activity() {
	pkgdesc="Nextcloud Activity app"
	depends="$pkgname"
	_mv_app pkg activity
}

firstrunwizard() {
	pkgdesc="Nextcloud Firstrunwizard app"
	depends="$pkgname"
	_mv_app pkg firstrunwizard
}

gallery() {
	pkgdesc="Nextcloud integrated gallery application"
	depends="nextcloud"
	_mv_app pkg gallery
}

notifications() {
	pkgdesc="Nextcloud Email notification support"
	depends="$pkgname"
	_mv_app pkg notifications
}


templateeditor() {
        pkgdesc="Nextcloud Email template editor app"
	depends="$pkgname"
	_mv_app pkg templateeditor
}

pdfviewer() {
        pkgdesc="Nextcloud integrated PDF viewer"
	depends="nextcloud"
	_mv_app pkg files_pdfviewer
}

texteditor() {
	pkgdesc="Nextcloud integrated text editor"
	depends="nextcloud"
	_mv_app pkg files_texteditor
}

videoplayer() {
	pkgdesc="Nextcloud integrated video viewer"
	depends="nextcloud"
	provides="$pkgname-videoviewer"
	_mv_app pkg files_videoplayer
}

sha512sums="f4277fe2b66286a1fedf1642df6dd546f32e60bfdbc08a67e1881a2f8ff888516694645bdd3cd5da2074c8f56a1dfe7c955e1fcbf6e93ca99a7c82309c05017c  nextcloud-11.0.3.zip
a12a73a38bc009d3307ce97bb32fc62ac93e125a77a3d36b31c9d2212953fa17bd5c31f819e0759a0645b1c285817b067143b0b9c3673ce4ab3043fae426a67c  nextcloud10-dont-chmod-config.patch"