[arch-commits] Commit in nextcloud/trunk (4 files)

David Runge dvzrv at archlinux.org
Sat Feb 20 23:09:46 UTC 2021


    Date: Saturday, February 20, 2021 @ 23:09:46
  Author: dvzrv
Revision: 867284

upgpkg: nextcloud 21.0.0-5: Rebuild to fix config directory location.

Remove custom command to check for versioning (it breaks the use of updpkgsums).
Add etc/webapps/nextcloud/config/config.php back to backup array.
Remove patch to customize config.sample.php (the full config should not be used).
Add custom config.php, that only introduces the default locations (data, apps, logs dirs).
Install the log directory more permissively (the log file mode can be adjusted).
Install the config directory to /etc/webapps/nextcloud/ again (nextcloud needs it to be writable).
Symlink the entire config directory in place again.
Fix the tmpfiles.d integration by relying on recursively setting ownership.
Tested with entire upgrade path 20.0.7 -> 21.0.3 -> 21.0.4 -> 21.0.5.

Added:
  nextcloud/trunk/nextcloud.config.php
Modified:
  nextcloud/trunk/PKGBUILD
  nextcloud/trunk/nextcloud.tmpfiles
Deleted:
  nextcloud/trunk/nextcloud-21.0.0-config.patch

-------------------------------+
 PKGBUILD                      |   46 ++++++++++++++++++++--------------------
 nextcloud-21.0.0-config.patch |   36 -------------------------------
 nextcloud.config.php          |   17 ++++++++++++++
 nextcloud.tmpfiles            |    6 ++---
 4 files changed, 43 insertions(+), 62 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-02-20 23:09:31 UTC (rev 867283)
+++ PKGBUILD	2021-02-20 23:09:46 UTC (rev 867284)
@@ -2,9 +2,9 @@
 # Maintainer: David Runge <dvzrv at archlinux.org>
 
 pkgname=nextcloud
+# NOTE: do not package x.0.0 versions as they are considered beta
 pkgver=21.0.0
-[[ "$pkgver" == *.0 ]] && { echo "wait for .1 version" ; exit 1; }
-pkgrel=4
+pkgrel=5
 pkgdesc="A cloud server to store your files centrally on a hardware controlled by you"
 arch=('any')
 url="https://nextcloud.com"
@@ -33,7 +33,7 @@
   'uwsgi-plugin-php: run as application container - php7 only'
 )
 backup=(
-  "etc/webapps/${pkgname}/config.php"
+  "etc/webapps/${pkgname}/config/config.php"
   "etc/uwsgi/${pkgname}.ini"
 )
 # there are no elf files, no need to strip anything
@@ -41,8 +41,8 @@
 install="${pkgname}.install"
 source=(
   "https://download.nextcloud.com/server/releases/nextcloud-${pkgver}.tar.bz2"{,.asc}
-  "${pkgname}-21.0.0-config.patch"
   'apache.example.conf'
+  "${pkgname}.config.php"
   "${pkgname}.hook"
   "${pkgname}.occ.sh"
   "${pkgname}.sysusers"
@@ -51,29 +51,26 @@
 )
 sha512sums=('a1ae3400f0fb5997e54b0cee821c50d13e4ba0e27c9d11731c8b5233cba564666121a58aed848ccd2593a9783e27db1ed98ff559588a76a1acaeaf083ef4404a'
             'SKIP'
-            '7e5f72591e7a8d2dde9d1cca2a3cff2bd5e48a8e938540dd94dbdc2eb35056a5d4f60f0c0bdbfdd080474e078b4f36b61650d9ed38927e50b29a29613506fd39'
             '6f9f284d78d414a3bb7c159a812b105e31e8cd2393afee44465701e6f18169709f6d492d790e403e1e66f308c51b6b6496d29ddce29e4fac2c73a3c84a10c7fe'
+            '92592f9a76ee534d0ae6d3aedf2257c147337debe7e2d6dbec1daff66a682e3abc74611e08662058de314bf3ea6ff1c85efd678674b782d71251c38786e446f9'
             '7b18b73ee369607b8ee3d00d2a054262a7b8f3033fc4873eb333c9b9333d7338870c035910ae123b564a65d7d245730178137311048f0713d5bc524de3654923'
             'cd86397e08459c9f06cfd44ff27a35879157166f5e8aab95d51bc7c4bb11f93e7c414a08ec1cbe9e81f1b4edfbf5eb5eaba7c6904da80a2c92c765bcb546aa66'
             '1d06f339c43d57e5f5406c2698b815241fd9e39039a9e55f777face510c9a5ddae5ccd4e051393e8f16f391301a6aa03fff2462837a2d3441d969ea7195e7d84'
-            '4f951e7cad06940d983035c3dc51531bbbcbc0c74296af63f2fab1705b413f340ff67300506377fade0ed7ddecee8552b3da028711751c120f1fad4b1c33e8d5'
+            '220837083fe6ea19f506642d7bc465f4ad8c4daa7d374875f6f9026cc2e893d5a077d161b6e6e8f335718c6b8f488378649273218db19c30fa48e391afb5fb5e'
             'a3ebcabcdb8c2d2653f44a248abd213bc4dbb317766b82c8f3e93b31e72ace350d7e8037bd4e22a632ab33f739e1941467b0e9d2cf7d0a7433227b4169030051')
 b2sums=('7c583c150f6b315830191329310993582439e7aef57f306b93681d654b8fa7d4d5dafee082befd493aafd2bf6efd940d52ca0ca05b8e42b79a1599ff3e809550'
         'SKIP'
-        '2b84b21e40c9493869670e851b545692d3a53705a0ee3564dd002be135c553b73ad124f27e91f0c2bda1ce110e8bd5b62c0678f5fead4598826cb41dbc2dc3d3'
         'a7e1aa1d8cb2b0ff7832bb7d6d857987733253317c0f3727e744502aeaa3b2008351b47ecc24e348fe7b252cefaffe2418797523ee288dfd55e128917e8fbe2c'
+        '4ad061efbc20b4d0e9f8cfd01c5e8e612fa5af29bce754b77f90c1835b98ee445ef4de3d8c83da91461053622620af14d880eb9014b51f2383c75f1860d479f4'
         '772a9571fe7d88dbcbeb46351a188354e237dfe8e020131f2752b3a36cff0ff177423b4cfd6a1a5f28946f86a8581f3e24ee06ebda7260c5f862ca4071908e43'
         '6a90659bf0ab7163fe0cf591abed9b58b9ff09c548698e7f8844ecc710917cf05561bad754f6d7543593d13b41e9ec630042b4fc3fbad43e1011b0e45868e4ed'
         '1a61a89531636b65dade03cd7edca8747b3e1e880f9bbd4d5a53cffa452d70fe17e345cfed739ae92e99e336d4c1f2633c84a5c84a4ee6da518762bf1396b1db'
-        'a644617d2b42ab357da546a5c9e3182fa9d2d8ae36ee77b24a04ed036e837212c9cbbd2f40d6e0c6f075a38aa58c7a8c01807ff820c9ee4f6556c661be81e0cb'
+        '30e5f0e67ce8004cc3a1d08009c452549c65041b0da4d8f5d630b62ea7cc77a028907c388144f37774b839ca449d0977afb95145501ef620bface8e714754e38'
         'd3c66e22c3cc1b8de1c0b60cd32701080d599dc9853af41d9d9d493ffe3a8d9a2573455d80dd0de019dfe9992187cb23b9df90c18f0ca5962912566014c6779c')
 validpgpkeys=('28806A878AE423A28372792ED75899B9A724937A') # Nextcloud Security <security at nextcloud.com>
 
 prepare() {
   mv -v "${pkgname}" "${pkgname}-${pkgver}"
-  cd "${pkgname}-${pkgver}"
-  # patch config.sample.php to use FHS compliant paths for state and logs
-  patch -Np1 -i ../"${pkgname}-21.0.0-config.patch"
 }
 
 package() {
@@ -88,15 +85,14 @@
   install -vdm 750 "${pkgdir}/var/lib/${pkgname}/"
   install -vdm 755 "${pkgdir}/var/lib/${pkgname}/"{apps,data}
   # log dir
-  install -vdm 750 "${pkgdir}/var/log/${pkgname}/"
+  install -vdm 755 "${pkgdir}/var/log/${pkgname}/"
   # uwsgi integration
   install -vDm 644 "../${pkgname}.uwsgi" "${pkgdir}/etc/uwsgi/${pkgname}.ini"
-  # config
-  install -vDm 640 config/config.sample.php "${pkgdir}/etc/webapps/${pkgname}/config.php"
-  # occ script
-  install -vDm 755 "../${pkgname}.occ.sh" "${pkgdir}/usr/bin/occ"
-  # optional pacman hook
-  install -vDm 644 "../${pkgname}.hook" -t "${pkgdir}/usr/share/doc/${pkgname}/"
+  # config dir
+  install -vDm 640 "../${pkgname}.config.php" "${pkgdir}/etc/webapps/${pkgname}/config/config.php"
+  find config -type f -exec install -vDm 644 {} "${pkgdir}/etc/webapps/${pkgname}/"{} \;
+  # remove config dir from source so that it is not installed to default location
+  rm -rf config
 
   # webapp
   find . -type f \( \
@@ -138,12 +134,16 @@
     -or -iname "*.htaccess" \
     \) -exec install -vDm 644 {} "${pkgdir}/usr/share/webapps/${pkgname}/"{} \;
 
-  # config symlink
-  ln -sv "/etc/webapps/${pkgname}/config.php" "${pkgdir}/usr/share/webapps/${pkgname}/config/config.php"
-  # occ
+  # symlink config directory into place
+  ln -sv "/etc/webapps/${pkgname}/config" "${pkgdir}/usr/share/webapps/${pkgname}/"
+  # add symlink to default writable apps directory
+  ln -sv "/var/lib/${pkgname}/apps" "${pkgdir}/usr/share/webapps/${pkgname}/wapps"
+  # install occ command
   install -vDm 755 occ -t "${pkgdir}/usr/share/webapps/${pkgname}"
+  # occ script
+  install -vDm 755 "../${pkgname}.occ.sh" "${pkgdir}/usr/bin/occ"
+  # optional pacman hook
+  install -vDm 644 "../${pkgname}.hook" -t "${pkgdir}/usr/share/doc/${pkgname}/"
   # apache example conf
   install -vDm 644 ../apache.example.conf -t "${pkgdir}/usr/share/doc/${pkgname}/"
-  # add symlink for default writable apps directory
-  ln -sv "/var/lib/${pkgname}/apps" "${pkgdir}/usr/share/webapps/${pkgname}/wapps"
 }

Deleted: nextcloud-21.0.0-config.patch
===================================================================
--- nextcloud-21.0.0-config.patch	2021-02-20 23:09:31 UTC (rev 867283)
+++ nextcloud-21.0.0-config.patch	2021-02-20 23:09:46 UTC (rev 867284)
@@ -1,36 +0,0 @@
-diff -ruN a/config/config.sample.php b/config/config.sample.php
---- a/config/config.sample.php	2021-02-19 09:49:36.000000000 +0100
-+++ b/config/config.sample.php	2021-02-20 13:29:19.194514157 +0100
-@@ -83,7 +83,7 @@
-  *
-  * Default to ``data/`` in the Nextcloud directory.
-  */
--'datadirectory' => '/var/www/nextcloud/data',
-+'datadirectory' => '/var/lib/nextcloud/data',
- 
- /**
-  * The current version number of your Nextcloud installation. This is set up
-@@ -831,7 +831,7 @@
-  *
-  * Defaults to ``[datadirectory]/nextcloud.log``
-  */
--'logfile' => '/var/log/nextcloud.log',
-+'logfile' => '/var/log/nextcloud/nextcloud.log',
- 
- /**
-  * Log file mode for the Nextcloud loggin type in octal notation.
-@@ -968,8 +968,13 @@
-  */
- 'apps_paths' => [
- 	[
--		'path'=> '/var/www/nextcloud/apps',
-+		'path'=> '/usr/share/webapps/nextcloud/apps',
- 		'url' => '/apps',
-+		'writable' => false,
-+	],
-+	[
-+		'path'=> '/var/lib/nextcloud/apps',
-+		'url' => '/wapps',
- 		'writable' => true,
- 	],
- ],

Added: nextcloud.config.php
===================================================================
--- nextcloud.config.php	                        (rev 0)
+++ nextcloud.config.php	2021-02-20 23:09:46 UTC (rev 867284)
@@ -0,0 +1,17 @@
+<?php
+$CONFIG = array (
+'datadirectory' => '/var/lib/nextcloud/data',
+'logfile' => '/var/log/nextcloud/nextcloud.log',
+'apps_paths' => [
+  [
+    'path'=> '/usr/share/webapps/nextcloud/apps',
+    'url' => '/apps',
+    'writable' => false,
+  ],
+  [
+    'path'=> '/var/lib/nextcloud/apps',
+    'url' => '/wapps',
+    'writable' => true,
+  ],
+],
+);

Modified: nextcloud.tmpfiles
===================================================================
--- nextcloud.tmpfiles	2021-02-20 23:09:31 UTC (rev 867283)
+++ nextcloud.tmpfiles	2021-02-20 23:09:46 UTC (rev 867284)
@@ -1,6 +1,6 @@
+Z /etc/webapps/nextcloud/config - nextcloud nextcloud
 z /etc/webapps/nextcloud/ 0755 root root
-z /etc/webapps/nextcloud/*.php 0640 nextcloud nextcloud
 Z %C/nextcloud - nextcloud nextcloud
 d %t/nextcloud 0755 nextcloud nextcloud
-z %L/nextcloud 0750 nextcloud nextcloud
-z %S/nextcloud 0750 nextcloud nextcloud
+z %L/nextcloud 0755 nextcloud nextcloud
+Z %S/nextcloud - nextcloud nextcloud


More information about the arch-commits mailing list