# Maintainer: Leonardo Arena pkgname=nextcloud pkgver=12.0.0 pkgrel=2 pkgdesc="A safe home for all your data" url="http://nextcloud.com" arch="noarch" license="AGPL" _php=php7 _php_mods="-ctype -curl -dom -gd -fileinfo -iconv -json -mbstring -openssl -posix -session -simplexml -xml -xmlreader -xmlwriter -zlib -zip" depends="$_php ${_php_mods//-/$_php-}" _apps="-activity -encryption -firstrunwizard -gallery -ldap -logreader -mysql -notifications -password_policy -pdfviewer -pgsql -sqlite -texteditor -videoplayer" install="$pkgname.pre-install $pkgname.pre-upgrade $pkgname.post-upgrade" subpackages="$pkgname-doc $pkgname-initscript ${_apps//-/$pkgname-}" source="https://download.nextcloud.com/server/releases/$pkgname-$pkgver.zip nextcloud10-dont-chmod-config.patch $pkgname-config.php $pkgname.logrotate $pkgname.confd fpm-pool.conf" options="!check" pkgusers="nextcloud" pkggroups="www-data" builddir="$srcdir"/$pkgname # Directory for apps shipped with Nextcloud. _appsdir="usr/share/webapps/$pkgname/apps" package() { local basedir="var/lib/$pkgname" local datadir="$basedir/data" local wwwdir="usr/share/webapps/$pkgname" local confdir="etc/$pkgname" mkdir -p "$pkgdir" cd "$pkgdir" mkdir -p ./${wwwdir%/*} cp -a "$builddir" ./$wwwdir chmod +x ./$wwwdir/occ chmod 664 ./$wwwdir/.htaccess \ ./$wwwdir/.user.ini install -d -m 770 -o nextcloud -g www-data \ ./$confdir ./$datadir ./$basedir/apps # Create symlink from web root to site-apps, so web server can find # assets w/o explicit configuration for this layout. ln -s /$basedir/apps ./$wwwdir/apps-appstore mv ./$wwwdir/config/* ./$confdir/ rm -r ./$wwwdir/config ln -s /$confdir ./$wwwdir/config install -m 660 -o nextcloud -g www-data \ "$srcdir"/$pkgname-config.php ./$confdir/config.php install -m644 -D "$srcdir"/$pkgname.logrotate ./etc/logrotate.d/$pkgname install -m775 -o nextcloud -g www-data -d ./var/log/$pkgname mkdir -p ./usr/share/doc/$pkgname mv ./$wwwdir/core/doc ./usr/share/doc/$pkgname/core } initscript() { pkgdesc="Init script that runs Nextcloud with php-fpm" depends="$pkgname $_php-fpm $_php-opcache" install="$subpkgname.post-install" local confdir="$subpkgdir/etc/$_php/php-fpm.d" local fpm_name="php-fpm${_php#php}" install -m 644 -D "$srcdir"/fpm-pool.conf "$confdir"/$pkgname.conf install -m 644 -D "$srcdir"/$pkgname.confd "$subpkgdir"/etc/conf.d/$pkgname mkdir -p "$subpkgdir"/etc/init.d ln -s $fpm_name "$subpkgdir"/etc/init.d/$pkgname install -m 700 -o nextcloud -d "$subpkgdir"/var/tmp/$pkgname } pgsql() { pkgdesc="Nextcloud PostgreSQL support" depends="$pkgname $_php-pgsql $_php-pdo_pgsql" mkdir -p "$subpkgdir" } sqlite() { pkgdesc="Nextcloud SQLite support" depends="$pkgname $_php-sqlite3 $_php-pdo_sqlite" mkdir -p "$subpkgdir" } mysql() { pkgdesc="Nextcloud MySQL support" depends="$pkgname $_php-pdo_mysql" mkdir -p "$subpkgdir" } activity() { pkgdesc="Nextcloud Activity app" depends="$pkgname" _mv_app pkg activity } encryption() { pkgdesc="Nextcloud Encryption app" depends="$pkgname $_php-mcrypt" _mv_app pkg encryption } firstrunwizard() { pkgdesc="Nextcloud Firstrunwizard app" depends="$pkgname" _mv_app pkg firstrunwizard } gallery() { pkgdesc="Nextcloud Gallery app" depends="$pkgname" _mv_app pkg gallery } ldap() { pkgdesc="Nextcloud LDAP auth backend support" depends="$pkgname $_php-ldap" _mv_app pkg user_ldap } logreader() { pkgdesc="Nextcloud Log Reader app" depends="$pkgname" _mv_app pkg logreader } notifications() { pkgdesc="Nextcloud Email notification support" depends="$pkgname" _mv_app pkg notifications } password_policy() { pkgdesc="Nextcloud Password Policy app" depends="$pkgname" _mv_app pkg password_policy } pdfviewer() { pkgdesc="Nextcloud integrated PDF viewer" depends="$pkgname" _mv_app pkg files_pdfviewer } texteditor() { pkgdesc="Nextcloud Text Editor app" depends="$pkgname" _mv_app pkg files_texteditor } videoplayer() { pkgdesc="Nextcloud Video Viewer app" depends="nextcloud" provides="$pkgname-videoviewer" _mv_app pkg files_videoplayer } _mv_app() { local from="$1" local dirname="$2" local appname="${subpkgname#$pkgname-}" mkdir -p "$subpkgdir"/$_appsdir case "$from" in pkg) mv "$pkgdir"/$_appsdir/$dirname "$subpkgdir"/$_appsdir/;; src) mv "$srcdir"/$dirname "$subpkgdir"/$_appsdir/$appname;; esac } sha512sums="0e409eedbcc0f4e1652085c3e384db373858b0cc116c70361a4d066a08afbd6e75792332f95d08773cbed78c1520532886268249d514f2da70acb3ba120420d5 nextcloud-12.0.0.zip a12a73a38bc009d3307ce97bb32fc62ac93e125a77a3d36b31c9d2212953fa17bd5c31f819e0759a0645b1c285817b067143b0b9c3673ce4ab3043fae426a67c nextcloud10-dont-chmod-config.patch 7b54660441fccb60f204a98a6f55dc02ba99a4af159e590a9b380f1d7683b856bfa4c9fc9ee14603cc0923a134e5191bc713b9428d7a8b52017b93aa3c915792 nextcloud-config.php f224d72799ee5819979089eb58978225454223bee597c938681a4f6279eb49297fe9250ac54ccf8bcb33ae262bce43d085affb77723492ee662263710d4008c9 nextcloud.logrotate 35cf156839215113b5d8fb8842b4c1e19a50be3c16be7048879fdd808674e4875dbacf3e2dd884fd182258595b7a137d7d3c2dc602a7ff5613c8b65fae0abe67 nextcloud.confd b5cdccdffb35e868ec1acb15ec2849cc1c2a00f6064ad21eb591b9694e84df4576f03248f5e814000a48c38096a2a1588dfc79be66691415f2f4ef3b4105d032 fpm-pool.conf"