@@ -50,33 +50,13 @@ set_owncloud_permissions ()
50
50
exec_occ () {
51
51
PHP=" /usr/local/bin/php74"
52
52
OCC=" ${OCROOT} /occ"
53
- OCC_ARGS=()
54
- for arg in " $@ " ; do
55
- OCC_ARGS+=(" $arg " )
56
- done
57
- COMMAND=" ${PHP} ${OCC} ${OCC_ARGS[@]} "
53
+ COMMAND=" ${PHP} ${OCC} $* "
58
54
if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then
59
- OCC_OUTPUT= $( /bin/su " $EFF_USER " -s /bin/sh -c " $COMMAND " )
55
+ /bin/su " $EFF_USER " -s /bin/sh -c " $COMMAND "
60
56
else
61
- OCC_OUTPUT= $( $ COMMAND)
57
+ $ COMMAND
62
58
fi
63
- OCC_EXIT_CODE=$?
64
- echo " $OCC_OUTPUT "
65
- return $OCC_EXIT_CODE
66
- }
67
-
68
- service_prestart ()
69
- {
70
- # Replace generic service startup, fork process in background
71
- echo " Starting owncloud-daemon at ${SYNOPKG_PKGDEST} /bin" >> ${LOG_FILE}
72
- COMMAND=" ${SYNOPKG_PKGDEST} /bin/owncloud-daemon"
73
- ${COMMAND} >> ${LOG_FILE} 2>&1 &
74
- echo " $! " > " ${PID_FILE} "
75
- }
76
-
77
- service_preinst ()
78
- {
79
- :
59
+ return $?
80
60
}
81
61
82
62
service_postinst ()
@@ -122,7 +102,7 @@ service_postinst ()
122
102
# Check for ownCloud PHP profile
123
103
if ! ${JQ} -e ' .["com-synocommunity-packages-owncloud"]' " ${WS_CFG_PATH} /${PHP_CFG_FILE} " > /dev/null; then
124
104
echo " Add PHP profile for ownCloud"
125
- ${JQ} --argfile ocNode ${SYNOPKG_PKGDEST} /web/owncloud.json ' .["com-synocommunity-packages-owncloud"] = $ocNode' ${WS_CFG_PATH} /${PHP_CFG_FILE} > ${TEMPDIR} /${PHP_CFG_FILE}
105
+ ${JQ} --slurpfile ocNode ${SYNOPKG_PKGDEST} /web/owncloud.json ' .["com-synocommunity-packages-owncloud"] = $ocNode[0] ' ${WS_CFG_PATH} /${PHP_CFG_FILE} > ${TEMPDIR} /${PHP_CFG_FILE}
126
106
${MV} ${WS_CFG_PATH} /${PHP_CFG_FILE} ${WS_CFG_PATH} /${PHP_CFG_FILE} .bak
127
107
rsync -aX ${TEMPDIR} /${PHP_CFG_FILE} ${WS_CFG_PATH} / 2>&1
128
108
${RM} ${TEMPDIR} /${PHP_CFG_FILE}
@@ -312,11 +292,15 @@ service_postuninst ()
312
292
${RM} ${TEMPDIR} /${PHP_CFG_FILE}
313
293
CFG_UPDATE=" yes"
314
294
fi
315
- # Check for backup PHP template
316
- if [ -f " $WS_TMPL_PATH /$WS_TMPL_FILE .bak" ]; then
317
- echo " Restore PHP template from backup"
318
- ${RM} ${WS_TMPL_PATH} /${WS_TMPL_FILE}
319
- ${MV} ${WS_TMPL_PATH} /${WS_TMPL_FILE} .bak ${WS_TMPL_PATH} /${WS_TMPL_FILE}
295
+ # Check for PHP template defaults
296
+ if ! grep -q -E ' ^user = http$' " ${WS_TMPL_PATH} /${WS_TMPL_FILE} " || ! grep -q -E ' ^listen\.owner = http$' " ${WS_TMPL_PATH} /${WS_TMPL_FILE} " ; then
297
+ echo " Restore default PHP template"
298
+ rsync -aX ${WS_TMPL_PATH} /${WS_TMPL_FILE} ${TEMPDIR} / 2>&1
299
+ SUBST_TEXT=" {{#fpm_settings.user_owncloud}}sc-owncloud{{/fpm_settings.user_owncloud}}{{^fpm_settings.user_owncloud}}http{{/fpm_settings.user_owncloud}}"
300
+ ${SED} -i " s|^user = ${SUBST_TEXT} $|user = http|g; s|^listen.owner = ${SUBST_TEXT} $|listen.owner = http|g" " ${TEMPDIR} /${WS_TMPL_FILE} "
301
+ ${MV} ${WS_TMPL_PATH} /${WS_TMPL_FILE} ${WS_TMPL_PATH} /${WS_TMPL_FILE} .bak
302
+ rsync -aX ${TEMPDIR} /${WS_TMPL_FILE} ${WS_TMPL_PATH} / 2>&1
303
+ ${RM} ${TEMPDIR} /${WS_TMPL_FILE}
320
304
CFG_UPDATE=" yes"
321
305
fi
322
306
@@ -368,6 +352,7 @@ service_save ()
368
352
echo " Invalid data directory '$DATADIR '. Using the default data directory instead."
369
353
DATADIR=" ${OCROOT} /data"
370
354
fi
355
+ # Check if data directory inside owncloud directory and flag for restore if true
371
356
DATADIR_REAL=$( realpath " $DATADIR " )
372
357
WEBROOT_REAL=$( realpath " ${OCROOT} " )
373
358
if echo " $DATADIR_REAL " | grep -q " ^$WEBROOT_REAL " ; then
@@ -495,13 +480,3 @@ service_restore ()
495
480
${RM} ${SYNOPKG_TEMP_UPGRADE_FOLDER} /${SYNOPKG_PKGNAME}
496
481
${RM} ${SYNOPKG_TEMP_UPGRADE_FOLDER} /db_backup
497
482
}
498
-
499
- service_preupgrade ()
500
- {
501
- :
502
- }
503
-
504
- service_postupgrade ()
505
- {
506
- :
507
- }
0 commit comments