aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorLeonardo Arena <rnalrd@alpinelinux.org>2016-06-14 14:45:20 +0000
committerLeonardo Arena <rnalrd@alpinelinux.org>2016-06-14 14:55:58 +0000
commit4e14b826e5a58c2941f179605471dc4d39b0bc42 (patch)
tree5fde5c71f1d140945a613c721df8c514a1d3841f /testing
parent51b7254ef254dbd0f031953ff38aab77302a42f3 (diff)
downloadaports-4e14b826e5a58c2941f179605471dc4d39b0bc42.tar.bz2
aports-4e14b826e5a58c2941f179605471dc4d39b0bc42.tar.xz
testing/nextcloud: new aport
Next-generation personal cloud service
Diffstat (limited to 'testing')
-rw-r--r--testing/nextcloud/APKBUILD214
-rw-r--r--testing/nextcloud/nextcloud-6-always-return-true-isSetLocaleWorking.patch11
-rw-r--r--testing/nextcloud/nextcloud-9-disable-chmod.patch12
3 files changed, 237 insertions, 0 deletions
diff --git a/testing/nextcloud/APKBUILD b/testing/nextcloud/APKBUILD
new file mode 100644
index 0000000000..04c2cb14cc
--- /dev/null
+++ b/testing/nextcloud/APKBUILD
@@ -0,0 +1,214 @@
+# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
+pkgname=nextcloud
+pkgver="9.0.50"
+pkgrel=0
+pkgdesc="A safe home for all your data"
+url="http://nextcloud.com"
+arch="noarch"
+license="AGPL"
+_php=php5
+depends="$_php ${_php}-ctype ${_php}-curl ${_php}-dom ${_php}-gd ${_php}-iconv ${_php}-json ${_php}-xml
+ ${_php}-xmlreader ${_php}-zlib ${_php}-zip"
+depends_dev=
+makedepends="$depends_dev"
+install=
+subpackages="$pkgname-pgsql $pkgname-sqlite $pkgname-mysql $pkgname-encryption
+ $pkgname-external $pkgname-gallery $pkgname-ldap
+ $pkgname-texteditor $pkgname-pdfviewer $pkgname-videoplayer"
+replaces="$pkgname-plugins"
+#missing subpkg="$pkgname-calendar $pkgname-contacts $pkgname-documents $pkgname-mozilla_sync
+# $pkgname-music $pkgname-tasks"
+
+source="https://download.nextcloud.com/server/releases/$pkgname-$pkgver.zip
+
+ nextcloud-6-always-return-true-isSetLocaleWorking.patch
+ nextcloud-9-disable-chmod.patch
+ "
+pkggroups="www-data"
+
+#_builddir="$srcdir"/core-$pkgver
+_builddir="$srcdir"/$pkgname
+
+_ncbasedir="/var/lib/nextcloud"
+_ncdatadir="$_ncbasedir/data"
+_ncwwwdir="/usr/share/webapps/nextcloud"
+_ncappsdir="$_ncwwwdir/apps"
+_ncconfdir="/etc/nextcloud"
+
+
+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"
+}
+
+package() {
+ cd "$_builddir"
+ mkdir -p "$pkgdir"${_ncconfdir}
+ mkdir -p "$pkgdir"${_ncdatadir}
+ mkdir -p "$pkgdir"${_ncwwwdir}
+ 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
+ for dir in \
+ "$pkgdir"${_ncconfdir} \
+ "$pkgdir"${_ncdatadir} \
+ "$pkgdir"${_ncappsdir}; do
+ chown -R :www-data $dir || return 1
+ chmod 770 $dir || return 1
+ done
+}
+
+pgsql() {
+ arch="noarch"
+ pkgdesc="Nextcloud PostgreSQL support"
+ depends="nextcloud ${_php}-pgsql ${_php}-pdo_pgsql ${_php}-pear-mdb2-driver-pgsql"
+ mkdir -p "$subpkgdir"${_ncwwwdir}
+}
+
+sqlite() {
+ arch="noarch"
+ pkgdesc="Nextcloud SQLite support"
+ depends="nextcloud ${_php}-sqlite3 ${_php}-pdo_sqlite"
+ mkdir -p "$subpkgdir"${_ncwwwdir}
+}
+
+mysql() {
+ arch="noarch"
+ pkgdesc="Nextcloud MySQL support"
+ depends="nextcloud ${_php}-mysql ${_php}-pdo_mysql ${_php}-pear-mdb2-driver-mysql"
+ mkdir -p "$subpkgdir"${_ncwwwdir}
+}
+
+plugins() {
+ arch="noarch"
+ pkgdesc="Nextcloud 3rdparty plugins"
+ depends="nextcloud"
+ mkdir -p "$subpkgdir"${_ncwwwdir} || return 1
+ mv "$pkgdir"${_ncwwwdir}/3rdparty "$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
+}
+
+contacts() {
+ arch="noarch"
+ pkgdesc="Nextcloud contacts"
+ depends="nextcloud"
+ _mv_app src contacts
+}
+
+calendar() {
+ arch="noarch"
+ pkgdesc="Nextcloud calendar"
+ depends="nextcloud"
+ _mv_app src calendar-$_calendarver
+}
+
+documents() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated documents editor"
+ depends="nextcloud"
+ _mv_app src documents-$_documentsver
+}
+
+encryption() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated encryption support"
+ depends="nextcloud ${_php}-openssl"
+ _mv_app pkg encryption
+}
+
+external() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated external storage support"
+ depends="nextcloud ${_php}-curl ${_php}-ftp"
+ _mv_app pkg files_external
+}
+
+gallery() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated gallery application"
+ depends="nextcloud"
+ _mv_app pkg gallery
+}
+
+ldap() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated LDAP authentication"
+ depends="nextcloud ${_php}-ldap"
+ _mv_app pkg user_ldap
+}
+
+mozilla_sync() {
+ arch="noarch"
+ pkgdesc="Nextcloud Mozilla Sync app"
+ depends="nextcloud"
+ _mv_app src mozilla_sync-$_mozillasyncver
+}
+
+music() {
+ arch="noarch"
+ pkgdesc="Nextcloud music app"
+ depends="nextcloud"
+ _mv_app src music
+ # Correct world-writable directories
+ find "${subpkgdir}${_ncappsdir}" -type d -exec chmod 775 {} \;
+}
+
+pdfviewer() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated PDF viewer"
+ depends="nextcloud"
+ _mv_app pkg files_pdfviewer
+}
+
+tasks() {
+ arch="noarch"
+ pkgdesc="Nextcloud tasks"
+ depends="nextcloud"
+ _mv_app src tasks-$_tasksver
+}
+
+texteditor() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated text editor"
+ depends="nextcloud"
+ _mv_app pkg files_texteditor
+}
+
+videoplayer() {
+ arch="noarch"
+ pkgdesc="Nextcloud integrated video viewer"
+ depends="nextcloud"
+ provides="$pkgname-videoviewer"
+ _mv_app pkg files_videoplayer
+}
+
+md5sums="5ae47c800d1f9889bd5f0075b6dbb3ba nextcloud-9.0.50.zip
+f497dbf3a67d14fc9049ca680673c805 nextcloud-6-always-return-true-isSetLocaleWorking.patch
+5e393c5cbfa0dc9f5d4d35dbdef3b839 nextcloud-9-disable-chmod.patch"
+sha256sums="63031b05f10ce699e88cf36fa13ff5d7bf75ab0e5622c93a913d5f342a37a199 nextcloud-9.0.50.zip
+3466ffbd22d4a9f04f4df862f3fb2f695fd1ca4bc6fb4b6a56258958064d5762 nextcloud-6-always-return-true-isSetLocaleWorking.patch
+9739810a5f040ff1488559fb17360b65aec94a4024b2f74437785420336d4d72 nextcloud-9-disable-chmod.patch"
+sha512sums="c82a505a4495e710571712587bd0346d35d37e30f13caee0788684709379f5c1292a32c4d247056e2a1a9ecbea7e1570e4fa6ed28b639b5331e51106e48da77d nextcloud-9.0.50.zip
+4b2038786571c62129d748bb71262a7cbc966cf4b97482f13bcedaa36fcfa343080a464fc74463a9bd6615c99a10cd590b91cacead62632db36bfd8940173d13 nextcloud-6-always-return-true-isSetLocaleWorking.patch
+62f4c4e5f0c23aea98a3cefdd5f08773fc34039ef444d167063f7b1f4640aee48bd108776e6f28f12acec3833f7bcf6b76aaa300c41f5f3fc8fc536c9f6b7586 nextcloud-9-disable-chmod.patch"
diff --git a/testing/nextcloud/nextcloud-6-always-return-true-isSetLocaleWorking.patch b/testing/nextcloud/nextcloud-6-always-return-true-isSetLocaleWorking.patch
new file mode 100644
index 0000000000..59ce980619
--- /dev/null
+++ b/testing/nextcloud/nextcloud-6-always-return-true-isSetLocaleWorking.patch
@@ -0,0 +1,11 @@
+--- a/lib/private/util.php
++++ b/lib/private/util.php
+@@ -865,7 +865,7 @@
+
+ \Patchwork\Utf8\Bootup::initLocale();
+ if ('' === basename('ยง')) {
+- return false;
++ return true;
+ }
+ return true;
+ }
diff --git a/testing/nextcloud/nextcloud-9-disable-chmod.patch b/testing/nextcloud/nextcloud-9-disable-chmod.patch
new file mode 100644
index 0000000000..bd70391c81
--- /dev/null
+++ b/testing/nextcloud/nextcloud-9-disable-chmod.patch
@@ -0,0 +1,12 @@
+--- a/lib/private/config.php
++++ b/lib/private/config.php
+@@ -229,7 +229,8 @@
+ $filePointer = fopen($this->configFilePath, 'r+');
+
+ // Prevent others not to read the config
+- chmod($this->configFilePath, 0640);
++ // Alpine Linux Development - don't do package's job
++ // chmod($this->configFilePath, 0640);
+
+ // File does not exist, this can happen when doing a fresh install
+ if(!is_resource ($filePointer)) {