diff --git a/cross/owncloud/Makefile b/cross/owncloud/Makefile index 2d0bd572b7c..f522ab06132 100644 --- a/cross/owncloud/Makefile +++ b/cross/owncloud/Makefile @@ -1,6 +1,6 @@ PKG_NAME = owncloud -PKG_VERS = 10.13.1 -PKG_DATE = 20230906 +PKG_VERS = 10.13.2 +PKG_DATE = 20231009 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-complete-$(PKG_DATE).$(PKG_EXT) PKG_DIST_SITE = https://download.owncloud.com/server/stable diff --git a/cross/owncloud/digests b/cross/owncloud/digests index f1061abcb63..4505e21812e 100644 --- a/cross/owncloud/digests +++ b/cross/owncloud/digests @@ -1,3 +1,3 @@ -owncloud-complete-20230906.tar.bz2 SHA1 c8175bc117cf1e0bf4ac0c31fa2d683324c842fc -owncloud-complete-20230906.tar.bz2 SHA256 7419b2bdd72457e388976d152be566b9aa008c8deb960a39e00ef6866c1916bb -owncloud-complete-20230906.tar.bz2 MD5 dfc1c8db52fd91ebe5fc6e998416bd85 +owncloud-complete-20231009.tar.bz2 SHA1 240643ff4eaef8cf5432e5a4ab673b6e06bef59a +owncloud-complete-20231009.tar.bz2 SHA256 0eee3bf9dacd86ef6b5efba4d71d99188e98d3ff83a49078e87d4ea4e3937cec +owncloud-complete-20231009.tar.bz2 MD5 2f8e340a760c18b184859680a8c29e1c diff --git a/mk/spksrc.spk.mk b/mk/spksrc.spk.mk index 2d3bfbb64de..8bd12db30df 100644 --- a/mk/spksrc.spk.mk +++ b/mk/spksrc.spk.mk @@ -438,6 +438,9 @@ ifneq ($(strip $(WIZARDS_DIR)),) $(eval SPK_CONTENT += WIZARD_UIFILES) @mkdir -p $(DSM_WIZARDS_DIR) @find $${SPKSRC_WIZARDS_DIR} -maxdepth 1 -type f -and \( $(WIZARD_FILE_NAMES) \) -print -exec cp -f {} $(DSM_WIZARDS_DIR) \; + @if [ -f "$(DSM_WIZARDS_DIR)/uninstall_uifile.sh" ] && [ -f "$(DSM_WIZARDS_DIR)/uninstall_uifile" ]; then \ + rm "$(DSM_WIZARDS_DIR)/uninstall_uifile"; \ + fi @if [ -d "$(WIZARDS_DIR)$(TCVERSION)" ]; then \ $(MSG) "Create DSM Version specific Wizards: $(WIZARDS_DIR)$(TCVERSION)"; \ find $${SPKSRC_WIZARDS_DIR}$(TCVERSION) -maxdepth 1 -type f -and \( $(WIZARD_FILE_NAMES) \) -print -exec cp -f {} $(DSM_WIZARDS_DIR) \; ;\ diff --git a/spk/owncloud/Makefile b/spk/owncloud/Makefile index d919f4b1991..40058715e0a 100644 --- a/spk/owncloud/Makefile +++ b/spk/owncloud/Makefile @@ -1,26 +1,26 @@ SPK_NAME = owncloud -SPK_VERS = 10.13.1 -SPK_REV = 11 +SPK_VERS = 10.13.2 +SPK_REV = 12 SPK_ICON = src/owncloud.png -DSM_UI_DIR = app DEPENDS = cross/owncloud -SPK_DEPENDS = "WebStation:PHP7.4:Apache2.4" +# Pure PHP package, make sure ARCH is not defined +override ARCH= REQUIRED_MIN_DSM = 6.0 +SPK_DEPENDS = WebStation:PHP7.4:Apache2.4 MAINTAINER = ymartin59 DESCRIPTION = ownCloud is a personal cloud which runs on your own server and gives you freedom and control over your own data. -CHANGELOG = "Update ownCloud to 10.13.1." DISPLAY_NAME = ownCloud +CHANGELOG = "1. Update ownCloud to 10.13.2.
2. New backup and restore functions.
3. Use new shared folder handling.
4. Package maintenance optimisation." HOMEPAGE = https://owncloud.org/ + LICENSE = AGPL -STARTABLE = yes -SERVICE_USER = auto -SERVICE_WIZARD_SHARE = wizard_data_share +WIZARDS_TEMPLATES_DIR = src/wizard_templates/ +SERVICE_WIZARD_SHARENAME = wizard_data_share USE_DATA_SHARE_WORKER = yes -SERVICE_SETUP = src/service-setup.sh SYSTEM_GROUP = http @@ -28,24 +28,22 @@ SYSTEM_GROUP = http ADMIN_URL = /owncloud/ ADMIN_PROTOCOL = https -CONF_DIR = src/conf/ -WIZARDS_DIR = src/wizard/ - +DSM_UI_DIR = app DSM_UI_CONFIG = src/app/config +CONF_DIR = src/conf/ -POST_STRIP_TARGET = owncloud_extra_install +SERVICE_SETUP = src/service-setup.sh +STARTABLE = no # TMPDIR is used for owncloud built in backup and update USE_ALTERNATE_TMPDIR = 1 -# Pure PHP package, make sure ARCH is not defined -override ARCH= +POST_STRIP_TARGET = owncloud_extra_install include ../../mk/spksrc.spk.mk .PHONY: owncloud_extra_install owncloud_extra_install: - install -m 755 -d $(STAGING_DIR)/bin -d $(STAGING_DIR)/web - install -m 755 src/bin/owncloud-daemon $(STAGING_DIR)/bin/owncloud-daemon + install -m 755 -d $(STAGING_DIR)/web install -m 644 src/web/owncloud.conf $(STAGING_DIR)/web/owncloud.conf install -m 644 src/web/owncloud.json $(STAGING_DIR)/web/owncloud.json diff --git a/spk/owncloud/src/bin/owncloud-daemon b/spk/owncloud/src/bin/owncloud-daemon deleted file mode 100644 index 213c6263e95..00000000000 --- a/spk/owncloud/src/bin/owncloud-daemon +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -set -e - -# ownCloud service setup -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ];then - WEB_DIR="/var/services/web" - if [ -z ${SYNOPKG_PKGNAME} ]; then - SYNOPKG_PKGNAME="owncloud" - fi -fi -PHP="/usr/local/bin/php74" -OWNCLOUD="${PHP} ${WEB_DIR}/${SYNOPKG_PKGNAME}/occ background:cron" -HOME_DIR="${SYNOPKG_PKGVAR}" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ];then - HOME_DIR="${SYNOPKG_PKGDEST}/var" -fi -SLEEP_TIME="1800" - -# Main loop -while true; do - # Update - echo "Updating..." - ${OWNCLOUD} >> "${HOME_DIR}/daemon.log" 2>&1 - - # Wait - echo "Waiting ${SLEEP_TIME} seconds..." - sleep ${SLEEP_TIME} -done diff --git a/spk/owncloud/src/service-setup.sh b/spk/owncloud/src/service-setup.sh index be224174611..4e96419f37d 100755 --- a/spk/owncloud/src/service-setup.sh +++ b/spk/owncloud/src/service-setup.sh @@ -11,9 +11,9 @@ fi # Others OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" -SQLITE="/bin/sqlite3" JQ="/bin/jq" SED="/bin/sed" +TAR="/bin/tar" SYNOSVC="/usr/syno/sbin/synoservice" if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then @@ -59,13 +59,59 @@ exec_occ() { return $? } -service_prestart () +exec_sql() { + SQLITE="/bin/sqlite3" + COMMAND="${SQLITE} $*" + if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then + /bin/su "$EFF_USER" -s /bin/sh -c "$COMMAND" + else + $COMMAND + fi + return $? +} + +setup_owncloud_instance() { - # Replace generic service startup, fork process in background - echo "Starting owncloud-daemon at ${SYNOPKG_PKGDEST}/bin" >> ${LOG_FILE} - COMMAND="${SYNOPKG_PKGDEST}/bin/owncloud-daemon" - ${COMMAND} >> ${LOG_FILE} 2>&1 & - echo "$!" > "${PID_FILE}" + if [ "${SYNOPKG_PKG_STATUS}" = "INSTALL" ]; then + # Setup configuration file + exec_occ maintenance:install \ + --database "sqlite" \ + --database-name "${SYNOPKG_PKGNAME}" \ + --data-dir "${DATA_DIR}" \ + --admin-user "${wizard_owncloud_admin_username}" \ + --admin-pass "${wizard_owncloud_admin_password}" 2>&1 + + # Get the trusted domains + DOMAINS="$(exec_occ config:system:get trusted_domains)" + + # Fix trusted domains array + line_number=0 + echo "${DOMAINS}" | while read -r line; do + if [ "$(echo "$line" | grep -cE ':5000|:5001')" -gt 0 ]; then + # Remove ":5000" or ":5001" from the line and update the trusted_domains array + new_line=$(echo "$line" | ${SED} -E 's/(:5000|:5001)//') + exec_occ config:system:set trusted_domains $line_number --value="$new_line" + fi + line_number=$((line_number+1)) + done + # Add user specified trusted domains + line_number=$(( $(echo -ne "$DOMAINS" | wc -l) + 1 )) + for var in wizard_owncloud_trusted_domain_1 wizard_owncloud_trusted_domain_2 wizard_owncloud_trusted_domain_3; do + val="${!var}" + if [ -n "$val" ]; then + exec_occ config:system:set trusted_domains $line_number --value="$val" + line_number=$((line_number+1)) + fi + done + + # Add HTTP to HTTPS redirect to Apache configuration file + APACHE_CONF="${OCROOT}/.htaccess" + if [ -f "${APACHE_CONF}" ]; then + echo "RewriteEngine On" >> ${APACHE_CONF} + echo "RewriteCond %{HTTPS} off" >> ${APACHE_CONF} + echo "RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]" >> ${APACHE_CONF} + fi + fi } service_postinst () @@ -145,7 +191,7 @@ service_postinst () if [ "${SYNOPKG_PKG_STATUS}" = "INSTALL" ]; then # Parse data directory - DATA_DIR="/volume1/${wizard_data_share}/data" + DATA_DIR="${SHARE_PATH}/data" # Create data directory ${MKDIR} "${DATA_DIR}" @@ -154,43 +200,47 @@ service_postinst () set_owncloud_permissions ${OCROOT} ${DATA_DIR} fi - # Setup configuration file - exec_occ maintenance:install \ - --database "sqlite" \ - --database-name "${SYNOPKG_PKGNAME}" \ - --data-dir "${DATA_DIR}" \ - --admin-user "${wizard_owncloud_admin_username}" \ - --admin-pass "${wizard_owncloud_admin_password}" 2>&1 - - # Get the trusted domains - DOMAINS="$(exec_occ config:system:get trusted_domains)" - - # Fix trusted domains array - line_number=0 - echo "${DOMAINS}" | while read -r line; do - if [ "$(echo "$line" | grep -cE ':5000|:5001')" -gt 0 ]; then - # Remove ":5000" or ":5001" from the line and update the trusted_domains array - new_line=$(echo "$line" | ${SED} -E 's/(:5000|:5001)//') - exec_occ config:system:set trusted_domains $line_number --value="$new_line" - fi - line_number=$((line_number+1)) - done - # Add user specified trusted domains - line_number=$(( $(echo -ne "$DOMAINS" | wc -l) + 1 )) - for var in wizard_owncloud_trusted_domain_1 wizard_owncloud_trusted_domain_2 wizard_owncloud_trusted_domain_3; do - val="${!var}" - if [ -n "$val" ]; then - exec_occ config:system:set trusted_domains $line_number --value="$val" - line_number=$((line_number+1)) + # Check backup file path + if [ "${wizard_owncloud_restore}" = "true" ] && [ -n "${wizard_backup_file}" ] && [ -f "${wizard_backup_file}" ]; then + filename=$(basename "${wizard_backup_file}") + expected_prefix="${SYNOPKG_PKGNAME}_backup_v" + # Check backup file prefix + if [[ $filename == ${expected_prefix}* ]]; then + echo "The backup filename starts with the expected prefix, performing restore." + # Extract archive to temp folder + TEMPDIR="${SYNOPKG_PKGTMP}/${SYNOPKG_PKGNAME}" + ${MKDIR} "${TEMPDIR}" + ${TAR} -xzf "${wizard_backup_file}" -C "${TEMPDIR}" 2>&1 + + # Restore configuration files and directories + rsync -aX --update -I "${TEMPDIR}/configs/root/.user.ini" "${TEMPDIR}/configs/root/.htaccess" "${OCROOT}/" 2>&1 + rsync -aX --update -I "${TEMPDIR}/configs/config" "${TEMPDIR}/configs/data" "${TEMPDIR}/configs/apps" "${TEMPDIR}/configs/apps-external" "${OCROOT}/" 2>&1 + + # Restore user data + echo "Restoring user data to ${DATA_DIR}" + rsync -aX --update -I "${TEMPDIR}/data" "${SHARE_PATH}/" 2>&1 + + # Place server in maintenance mode + exec_occ maintenance:mode --on + + # Restore the Database + [ -f "${DATA_DIR}/${SYNOPKG_PKGNAME}.db" ] && ${RM} "${DATA_DIR}/${SYNOPKG_PKGNAME}.db" + exec_sql "${DATA_DIR}/${SYNOPKG_PKGNAME}.db" < "${TEMPDIR}/database/${SYNOPKG_PKGNAME}-dbbackup.bak" 2>&1 + + # Update the systems data-fingerprint after a backup is restored + exec_occ maintenance:data-fingerprint -n + + # Disable maintenance mode + exec_occ maintenance:mode --off + + # Clean-up temporary files + ${RM} "${TEMPDIR}" + else + echo "The backup filename does not start with the expected prefix, performing new install." + setup_owncloud_instance fi - done - - # Add HTTP to HTTPS redirect to Apache configuration file - APACHE_CONF="${OCROOT}/.htaccess" - if [ -f "${APACHE_CONF}" ]; then - echo "RewriteEngine On" >> ${APACHE_CONF} - echo "RewriteCond %{HTTPS} off" >> ${APACHE_CONF} - echo "RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]" >> ${APACHE_CONF} + else + setup_owncloud_instance fi # Fix permissions @@ -214,52 +264,38 @@ service_preuninst () fi # Prepare archive structure - TEMPDIR="${SYNOPKG_PKGTMP}/${SYNOPKG_PKGNAME}-backup_$(date +"%Y%m%d")" + OCC_VER=$(exec_occ -V | cut -d ' ' -f 2) + TEMPDIR="${SYNOPKG_PKGTMP}/${SYNOPKG_PKGNAME}_backup_v${OCC_VER}_$(date +"%Y%m%d")" ${MKDIR} "${TEMPDIR}" - # Check database export - if [ "${wizard_export_database}" = "true" ]; then - echo "Copying previous database from ${DATADIR}" - ${MKDIR} "${TEMPDIR}/database" - ${SQLITE} "${DATADIR}/${SYNOPKG_PKGNAME}.db" ".backup '${TEMPDIR}/database/${SYNOPKG_PKGNAME}.db'" 2>&1 - fi + # Place server in maintenance mode + exec_occ maintenance:mode --on - # Check configuration export - if [ "${wizard_export_configs}" = "true" ]; then - echo "Copying previous configuration from ${OCROOT}" - ${MKDIR} "${TEMPDIR}/configs" - ${CP} "${OCROOT}/.user.ini" "${TEMPDIR}/configs/" - ${CP} "${OCROOT}/.htaccess" "${TEMPDIR}/configs/" - ${MKDIR} "${TEMPDIR}/configs/config" - source="${OCROOT}/config" - patterns=( - "*config.php" - "*.json" - ) - target="${TEMPDIR}/configs/config" - # Process each pattern of files in the source directory - for pattern in "${patterns[@]}"; do - files=$(find "$source" -type f -name "$pattern") - if [ -n "$files" ]; then - for file in "${files[@]}"; do - ${CP} "$file" "$target/" - done - fi - done - fi + # Backup the Database + echo "Copying previous database from ${DATADIR}" + ${MKDIR} "${TEMPDIR}/database" + exec_sql "${DATADIR}/${SYNOPKG_PKGNAME}.db" .dump > "${TEMPDIR}/database/${SYNOPKG_PKGNAME}-dbbackup.bak" 2>&1 - # Check user data export - if [ "${wizard_export_userdata}" = "true" ]; then - echo "Copying previous user data from ${DATADIR}" - ${CP} "${DATADIR}" "${TEMPDIR}/" - fi + # Backup Directories + echo "Copying previous configuration from ${OCROOT}" + ${MKDIR} "${TEMPDIR}/configs/root" + rsync -aX "${OCROOT}/.user.ini" "${OCROOT}/.htaccess" "${TEMPDIR}/configs/root/" 2>&1 + rsync -aX "${OCROOT}/config" "${OCROOT}/data" "${OCROOT}/apps" "${OCROOT}/apps-external" "${TEMPDIR}/configs/" 2>&1 + + # Backup user data + echo "Copying previous user data from ${DATADIR}" + rsync -aX "${DATADIR}" "${TEMPDIR}/" 2>&1 + + # Disable maintenance mode + exec_occ maintenance:mode --off # Create backup archive archive_name="$(basename "$TEMPDIR").tar.gz" echo "Creating compressed archive of ownCloud data in file $archive_name" - /bin/tar -czvf "${SYNOPKG_PKGTMP}/$archive_name" "$TEMPDIR" 2>&1 + ${TAR} -C "$TEMPDIR" -czf "${SYNOPKG_PKGTMP}/$archive_name" . 2>&1 # Move archive to export directory + ${MKDIR} "${wizard_export_path}" if ${RSYNC} "${SYNOPKG_PKGTMP}/$archive_name" "${wizard_export_path}/"; then echo "Backup file copied successfully to ${wizard_export_path}." else @@ -334,7 +370,7 @@ validate_preupgrade () # ownCloud upgrades only possible from 8.2.11, 9.0.9, 9.1.X, or 10.X.Y is_upgrade_possible="no" valid_versions=("8.2.11" "9.0.9" "9.1.*" "10.*.*") - previous=$(echo ${SYNOPKG_OLD_PKGVER} | cut -d'-' -f1) + previous=$(echo ${SYNOPKG_OLD_PKGVER} | cut -d '-' -f 1) for version in "${valid_versions[@]}"; do if echo "$previous" | grep -q "$version"; then is_upgrade_possible="yes" @@ -378,7 +414,7 @@ service_save () [ -d ${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup ] && ${RM} ${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup echo "Backup existing server database to ${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup" ${MKDIR} ${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup - ${SQLITE} "${DATADIR}/${SYNOPKG_PKGNAME}.db" ".backup '${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup/${SYNOPKG_PKGNAME}-dbbackup_$(date +"%Y%m%d").bak'" 2>&1 + exec_sql "${DATADIR}/${SYNOPKG_PKGNAME}.db" .dump > "${SYNOPKG_TEMP_UPGRADE_FOLDER}/db_backup/${SYNOPKG_PKGNAME}-dbbackup_$(date +"%Y%m%d").bak" 2>&1 } service_restore () @@ -387,9 +423,8 @@ service_restore () if [ -f ${SYNOPKG_TEMP_UPGRADE_FOLDER}/.datadirectory ]; then DATAPATH="$(cat ${SYNOPKG_TEMP_UPGRADE_FOLDER}/.datadirectory)" # Data directory inside owncloud directory and needs to be restored - [ -d ${OCROOT}/${DATAPATH} ] && ${RM} ${OCROOT}/${DATAPATH} echo "Restore previous data directory from ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/${DATAPATH}" - rsync -aX ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/${DATAPATH} ${OCROOT}/ 2>&1 + rsync -aX --update -I ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/${DATAPATH} ${OCROOT}/ 2>&1 ${RM} ${SYNOPKG_TEMP_UPGRADE_FOLDER}/.datadirectory fi @@ -406,19 +441,15 @@ service_restore () files=$(find "$source" -type f -name "$pattern") if [ -n "$files" ]; then for file in "${files[@]}"; do - file_name=$(basename "$file") - [ -f $target/$file_name ] && ${RM} $target/$file_name - rsync -aX "$file" "$target/" 2>&1 + rsync -aX --update -I "$file" "$target/" 2>&1 done fi done if [ -f ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.user.ini ]; then - [ -f ${OCROOT}/.user.ini ] && ${RM} ${OCROOT}/.user.ini - rsync -aX ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.user.ini ${OCROOT}/ 2>&1 + rsync -aX --update -I ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.user.ini ${OCROOT}/ 2>&1 fi if [ -f ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.htaccess ]; then - [ -f ${OCROOT}/.htaccess ] && ${RM} ${OCROOT}/.htaccess - rsync -aX ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.htaccess ${OCROOT}/ 2>&1 + rsync -aX --update -I ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}/.htaccess ${OCROOT}/ 2>&1 fi echo "Restore manually installed apps from ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${SYNOPKG_PKGNAME}" diff --git a/spk/owncloud/src/wizard/install_uifile.sh b/spk/owncloud/src/wizard/install_uifile.sh deleted file mode 100644 index c5051a8a44d..00000000000 --- a/spk/owncloud/src/wizard/install_uifile.sh +++ /dev/null @@ -1,106 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" -fi -if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then - SYNOPKG_PKGDEST_VOL="/volume1" -fi -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" -SHAREDIR="${SYNOPKG_PKGNAME}" -DIR_VALID="/^[\\w _-]+$/" - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -PAGE_ADMIN_CONFIG=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard/install_uifile_fre.sh b/spk/owncloud/src/wizard/install_uifile_fre.sh deleted file mode 100644 index 92023afd71f..00000000000 --- a/spk/owncloud/src/wizard/install_uifile_fre.sh +++ /dev/null @@ -1,106 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" -fi -if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then - SYNOPKG_PKGDEST_VOL="/volume1" -fi -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" -SHAREDIR="${SYNOPKG_PKGNAME}" -DIR_VALID="/^[\\w _-]+$/" - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -PAGE_ADMIN_CONFIG=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard/uninstall_uifile.sh b/spk/owncloud/src/wizard/uninstall_uifile.sh deleted file mode 100644 index f47870053c4..00000000000 --- a/spk/owncloud/src/wizard/uninstall_uifile.sh +++ /dev/null @@ -1,147 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" - if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then - SYNOPKG_PKGDEST_VOL="/volume1" - fi - if [ -z ${SYNOPKG_PKGNAME} ]; then - SYNOPKG_PKGNAME="owncloud" - fi -fi -if [ -z ${EFF_USER} ]; then - EFF_USER="sc-owncloud" -fi - -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" - -exec_occ() { - PHP="/usr/local/bin/php74" - OCC="${OCROOT}/occ" - COMMAND="${PHP} ${OCC} $*" - if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then - /bin/su "$EFF_USER" -s /bin/sh -c "$COMMAND" - else - $COMMAND - fi - return $? -} - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -CHECKBOX1_ID="wizard_export_database" -CHECKBOX2_ID="wizard_export_configs" -CHECKBOX3_ID="wizard_export_userdata" -ERROR_TEXT="Path should begin with /volume?/ with ? the number of the volume" -# Calculate size of data directory -DATADIR="$(exec_occ config:system:get datadirectory)" -# data directory fail-safe -if [ ! -d "$DATADIR" ]; then - echo "Invalid data directory '$DATADIR'. Using the default data directory instead." - DATADIR="${OCROOT}/data" -fi -DATASIZE="$(/bin/du -sh ${DATADIR} | /bin/cut -f1)" - -getValidPath() -{ - VALID_PATH=$(/bin/cat<WARNING: Uninstalling the ownCloud package will result in the removal of the ownCloud server, along with all associated user accounts, data, and configurations." - }, { - "type": "textfield", - "desc": "Before uninstalling, if you want to keep a backup of your data, please specify the directory where you would like to export to. Ensure that the user 'sc-owncloud' has write permissions to that directory. To skip exporting, leave this field blank.", - "subitems": [{ - "key": "wizard_export_path", - "desc": "Export location", - "emptyText": "${SYNOPKG_PKGDEST_VOL}/backup", - "validator": { - "allowBlank": true, - "fn": "$(getValidPath)" - } - }] - }, { - "type": "singleselect", - "subitems": [{ - "key": "wizard_delete_data", - "hidden": true, - "defaultValue": true - }] - }, { - "type": "multiselect", - "desc": "Please choose the items that you want to include in the backup.", - "subitems": [{ - "key": "${CHECKBOX1_ID}", - "desc": "Include database", - "defaultValue": false, - "disabled": true - }, { - "key": "${CHECKBOX2_ID}", - "desc": "Include configuration files", - "defaultValue": false, - "disabled": true - }, { - "key": "${CHECKBOX3_ID}", - "desc": "Include user data (${DATASIZE})", - "defaultValue": false, - "disabled": true - }] - }] -} -EOF -) - -main () { - local uninstall_page="" - uninstall_page=$(page_append "$uninstall_page" "$PAGE_DATA_BACKUP") - echo "[$uninstall_page]" > "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard/uninstall_uifile_fre.sh b/spk/owncloud/src/wizard/uninstall_uifile_fre.sh deleted file mode 100644 index d170da76c50..00000000000 --- a/spk/owncloud/src/wizard/uninstall_uifile_fre.sh +++ /dev/null @@ -1,147 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" - if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then - SYNOPKG_PKGDEST_VOL="/volume1" - fi - if [ -z ${SYNOPKG_PKGNAME} ]; then - SYNOPKG_PKGNAME="owncloud" - fi -fi -if [ -z ${EFF_USER} ]; then - EFF_USER="sc-owncloud" -fi - -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" - -exec_occ() { - PHP="/usr/local/bin/php74" - OCC="${OCROOT}/occ" - COMMAND="${PHP} ${OCC} $*" - if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then - /bin/su "$EFF_USER" -s /bin/sh -c "$COMMAND" - else - $COMMAND - fi - return $? -} - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -CHECKBOX1_ID="wizard_export_database" -CHECKBOX2_ID="wizard_export_configs" -CHECKBOX3_ID="wizard_export_userdata" -ERROR_TEXT="Le chemin doit commencer par /volume?/ avec ? le numéro de volume" -# Calculate size of data directory -DATADIR="$(exec_occ config:system:get datadirectory)" -# data directory fail-safe -if [ ! -d "$DATADIR" ]; then - echo "Invalid data directory '$DATADIR'. Using the default data directory instead." - DATADIR="${OCROOT}/data" -fi -DATASIZE="$(/bin/du -sh ${DATADIR} | /bin/cut -f1)" - -getValidPath() -{ - VALID_PATH=$(/bin/cat<AVERTISSEMENT: La désinstallation du package ownCloud entraînera la suppression du serveur ownCloud, ainsi que de tous les comptes d'utilisateurs, données et configurations associés." - }, { - "type": "textfield", - "desc": "Avant la désinstallation, si vous souhaitez conserver une sauvegarde de vos données, veuillez spécifier le répertoire vers lequel vous souhaitez exporter. Assurez-vous que l'utilisateur 'sc-owncloud' dispose des autorisations d'écriture dans ce répertoire. Pour ignorer l'exportation, laissez ce champ vide.", - "subitems": [{ - "key": "wizard_export_path", - "desc": "Emplacement d'exportation", - "emptyText": "${SYNOPKG_PKGDEST_VOL}/backup", - "validator": { - "allowBlank": true, - "fn": "$(getValidPath)" - } - }] - }, { - "type": "singleselect", - "subitems": [{ - "key": "wizard_delete_data", - "hidden": true, - "defaultValue": true - }] - }, { - "type": "multiselect", - "desc": "Choisissez les éléments que vous souhaitez inclure dans la sauvegarde.", - "subitems": [{ - "key": "${CHECKBOX1_ID}", - "desc": "Inclure la base de données", - "defaultValue": false, - "disabled": true - }, { - "key": "${CHECKBOX2_ID}", - "desc": "Inclure les fichiers de configuration", - "defaultValue": false, - "disabled": true - }, { - "key": "${CHECKBOX3_ID}", - "desc": "Inclure les données utilisateur (${DATASIZE})", - "defaultValue": false, - "disabled": true - }] - }] -} -EOF -) - -main () { - local uninstall_page="" - uninstall_page=$(page_append "$uninstall_page" "$PAGE_DATA_BACKUP") - echo "[$uninstall_page]" > "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard/upgrade_uifile.sh b/spk/owncloud/src/wizard/upgrade_uifile.sh deleted file mode 100644 index 1884ad702f3..00000000000 --- a/spk/owncloud/src/wizard/upgrade_uifile.sh +++ /dev/null @@ -1,102 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" - if [ -z ${SYNOPKG_PKGNAME} ]; then - SYNOPKG_PKGNAME="owncloud" - fi -fi -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" -OC_NEW_VER=$(echo ${SYNOPKG_PKGVER} | cut -d'-' -f1) -OC_OLD_VER=$(echo ${SYNOPKG_OLD_PKGVER} | cut -d'-' -f1) - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -is_upgrade_possible () -{ - # ownCloud upgrades only possible from 8.2.11, 9.0.9, 9.1.X, or 10.X.Y - valid_versions=("8.2.11" "9.0.9" "9.1.*" "10.*.*") - previous=${OC_OLD_VER} - for version in "${valid_versions[@]}"; do - if echo "$previous" | grep -q "$version"; then - return 0 # Success or true - fi - done - return 1 # Failure or false -} - -PAGE_NO_UPDATE=$(/bin/cat<NOTICE: Version ${OC_OLD_VER} of ownCloud cannot be updated to version ${OC_NEW_VER}. Please uninstall the previous version and remember to save your ${OCROOT}/data files before doing so.", - "subitems": [{ - "hidden": true, - "validator": { - "fn": "{return false;}" - } - }] - }] -} -EOF -) - -TEXT_LIMITATIONS=$(/bin/cat< - - 1. - Cron jobs cannot be managed during the upgrade process. We recommend that you disable them manually before upgrading. - - - 2. - The web server cannot be managed during the upgrade process. While the upgrade is in progress, the web server will be placed in maintenance mode. We recommend stopping Web Station before upgrading. - - - 3. - Compatibility of third-party apps cannot be automatically validated during the upgrade process. Please check app compatibility manually before upgrading as apps will be migrated. - - -EOF -) - -PAGE_LIMITATIONS=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard/upgrade_uifile_fre.sh b/spk/owncloud/src/wizard/upgrade_uifile_fre.sh deleted file mode 100644 index 29f9fd57ac9..00000000000 --- a/spk/owncloud/src/wizard/upgrade_uifile_fre.sh +++ /dev/null @@ -1,102 +0,0 @@ -#!/bin/bash - -WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then - WEB_DIR="/var/services/web" - if [ -z ${SYNOPKG_PKGNAME} ]; then - SYNOPKG_PKGNAME="owncloud" - fi -fi -OCROOT="${WEB_DIR}/${SYNOPKG_PKGNAME}" -OC_NEW_VER=$(echo ${SYNOPKG_PKGVER} | cut -d'-' -f1) -OC_OLD_VER=$(echo ${SYNOPKG_OLD_PKGVER} | cut -d'-' -f1) - -quote_json () { - sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' -} - -page_append () -{ - if [ -z "$1" ]; then - echo "$2" - elif [ -z "$2" ]; then - echo "$1" - else - echo "$1,$2" - fi -} - -is_upgrade_possible () -{ - # ownCloud upgrades only possible from 8.2.11, 9.0.9, 9.1.X, or 10.X.Y - valid_versions=("8.2.11" "9.0.9" "9.1.*" "10.*.*") - previous=${OC_OLD_VER} - for version in "${valid_versions[@]}"; do - if echo "$previous" | grep -q "$version"; then - return 0 # Success or true - fi - done - return 1 # Failure or false -} - -PAGE_NO_UPDATE=$(/bin/cat<AVIS: La version ${OC_OLD_VER} de ownCloud ne peut pas être mise à jour vers la version ${OC_NEW_VER}. Veuillez désinstaller la version précédente et n'oubliez pas de sauvegarder vos fichiers ${OCROOT}/data avant de le faire.", - "subitems": [{ - "hidden": true, - "validator": { - "fn": "{return false;}" - } - }] - }] -} -EOF -) - -TEXT_LIMITATIONS=$(/bin/cat< - - 1. - Les tâches cron ne peuvent pas être gérées pendant le processus de mise à niveau. Nous vous recommandons de les désactiver manuellement avant la mise à niveau. - - - 2. - Le serveur Web ne peut pas être géré pendant le processus de mise à niveau. Pendant la mise à niveau, le serveur Web sera placé en mode maintenance. Nous vous recommandons d'arrêter Web Station avant la mise à niveau. - - - 3. - La compatibilité des applications tierces ne peut pas être automatiquement validée pendant le processus de mise à niveau. Veuillez vérifier manuellement la compatibilité des applications avant la mise à niveau, car les applications seront migrées. - - -EOF -) - -PAGE_LIMITATIONS=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" -} - -main "$@" diff --git a/spk/owncloud/src/wizard_templates/install_uifile.sh b/spk/owncloud/src/wizard_templates/install_uifile.sh new file mode 100644 index 00000000000..b66430b3519 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/install_uifile.sh @@ -0,0 +1,251 @@ +#!/bin/bash + +# for backwards compatability +if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then + SYNOPKG_PKGDEST_VOL="/volume1" +fi +SHAREDIR="${SYNOPKG_PKGNAME}" +DIR_VALID="/^[\\w _-]+$/" + +quote_json () { + sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' +} + +page_append () +{ + if [ -z "$1" ]; then + echo "$2" + elif [ -z "$2" ]; then + echo "$1" + else + echo "$1,$2" + fi +} + +RESTORE_BACKUP_FILE="wizard_owncloud_restore" +BACKUP_FILE_PATH="wizard_backup_file" +ERROR_TEXT="{{{OWNCLOUD_BACKUP_FILE_VALIDATION_ERROR_TEXT}}}" + +checkBackupFile() +{ + CHECK_BACKUP_FILE=$(/bin/cat<= 0 ; i--) { + var step = wizardDialog.getStep(wizardDialog.customuiIds[i]); + if (title === step.headline) { + return step; + } + } + return null; + } + function isRestoreChecked(wizardDialog) { + var typeStep = findStepByTitle(wizardDialog, "{{{OWNCLOUD_INSTALL_RESTORE_STEP_TITLE}}}"); + if (!typeStep) { + return false; + } else { + return typeStep.getComponent("${RESTORE_BACKUP_FILE}").checked; + } + } +EOF +) + +getActiveate() +{ + ACTIVAETE=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" +} + +main "$@" diff --git a/spk/owncloud/src/wizard_templates/install_uifile.yml b/spk/owncloud/src/wizard_templates/install_uifile.yml new file mode 100644 index 00000000000..ad20398f9e2 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/install_uifile.yml @@ -0,0 +1,25 @@ +OWNCLOUD_INSTALL_RESTORE_STEP_TITLE: "ownCloud installation type" +OWNCLOUD_INSTALL_RESTORE_DESCRIPTION: "For the installation, you have the option to either create a new instance or restore from a backup archive." +OWNCLOUD_INSTALL_LABEL: "Install new deployment" +OWNCLOUD_RESTORE_LABEL: "Restore from archive" +OWNCLOUD_BACKUP_FILE_LOCATION_DESCRIPTION: "Please provide the complete path to the archive you wish to restore." +OWNCLOUD_BACKUP_FILE_LOCATION_LABEL: "Backup file location" +OWNCLOUD_BACKUP_FILE_VALIDATION_ERROR_TEXT: "An empty file path is not allowed when restore is enabled." +OWNCLOUD_DATA_DIRECTORY_DESCRIPTION: "ownCloud data directory" +OWNCLOUD_DATA_DIRECTORY_LABEL: "Share name" +OWNCLOUD_DATA_DIRECTORY_VALIDATION_ERROR_TEXT: "Subdirectories are not supported." + +OWNCLOUD_ADMIN_CONFIGURATION_STEP_TITLE: "ownCloud admin configuration" +OWNCLOUD_ADMIN_USER_NAME_DESCRIPTION: "Administrator's login. Defaults to 'admin'" +OWNCLOUD_ADMIN_USER_NAME_LABEL: "User name" +OWNCLOUD_ADMIN_PASSWORD_DESCRIPTION: "Administrator's password. Defaults to 'admin'" +OWNCLOUD_ADMIN_PASSWORD_LABEL: "Password" + +OWNCLOUD_TRUSTED_DOMAINS_STEP_TITLE: "ownCloud trusted domains" +OWNCLOUD_TRUSTED_DOMAINS_DESCRIPTION: "To access your ownCloud server, you must whitelist all URLs in your settings, including any additional URLs you want to use besides the current hostname." +OWNCLOUD_TRUSTED_DOMAIN_1_LABEL: "Domain or IP address" +OWNCLOUD_TRUSTED_DOMAIN_2_LABEL: "Domain or IP address" +OWNCLOUD_TRUSTED_DOMAIN_3_LABEL: "Domain or IP address" + +OWNCLOUD_CONFIRM_RESTORE_STEP_TITLE: "ownCloud confirm restore" +OWNCLOUD_CONFIRM_RESTORE_DESCRIPTION: "The installation will now proceed, and your previous configuration will be restored from the backup. Please verify that the file path is accurate and that the user 'sc-owncloud' has read permissions for that path; otherwise, a new installation will be initiated." diff --git a/spk/owncloud/src/wizard_templates/install_uifile_fre.yml b/spk/owncloud/src/wizard_templates/install_uifile_fre.yml new file mode 100644 index 00000000000..4260eb3e0ed --- /dev/null +++ b/spk/owncloud/src/wizard_templates/install_uifile_fre.yml @@ -0,0 +1,25 @@ +OWNCLOUD_INSTALL_RESTORE_STEP_TITLE: "Type d'installation d'ownCloud" +OWNCLOUD_INSTALL_RESTORE_DESCRIPTION: "Pour l'installation, vous avez la possibilité soit de créer une nouvelle instance, soit de restaurer à partir d'une archive de sauvegarde." +OWNCLOUD_INSTALL_LABEL: "Installer un nouveau déploiement" +OWNCLOUD_RESTORE_LABEL: "Restaurer à partir d'une archive" +OWNCLOUD_BACKUP_FILE_LOCATION_DESCRIPTION: "Veuillez fournir le chemin complet de l'archive que vous souhaitez restaurer." +OWNCLOUD_BACKUP_FILE_LOCATION_LABEL: "Emplacement du fichier de sauvegarde" +OWNCLOUD_BACKUP_FILE_VALIDATION_ERROR_TEXT: "Un chemin de fichier vide n'est pas autorisé lorsque la restauration est activée." +OWNCLOUD_DATA_DIRECTORY_DESCRIPTION: "Répertoire de données ownCloud" +OWNCLOUD_DATA_DIRECTORY_LABEL: "Partager le nom" +OWNCLOUD_DATA_DIRECTORY_VALIDATION_ERROR_TEXT: "Les sous-répertoires ne sont pas pris en charge." + +OWNCLOUD_ADMIN_CONFIGURATION_STEP_TITLE: "Configuration de l'administrateur d'ownCloud" +OWNCLOUD_ADMIN_USER_NAME_DESCRIPTION: "Connexion de l'administrateur. Par défaut, 'admin'" +OWNCLOUD_ADMIN_USER_NAME_LABEL: "Nom d'utilisateur" +OWNCLOUD_ADMIN_PASSWORD_DESCRIPTION: "Mot de passe de l'administrateur. Par défaut, 'admin'" +OWNCLOUD_ADMIN_PASSWORD_LABEL: "Mot de passe" + +OWNCLOUD_TRUSTED_DOMAINS_STEP_TITLE: "Domaines de confiance ownCloud" +OWNCLOUD_TRUSTED_DOMAINS_DESCRIPTION: "Pour accéder à votre serveur ownCloud, vous devez mettre en liste blanche toutes les URL dans vos paramètres, y compris toutes les URL supplémentaires que vous souhaitez utiliser en plus du nom d'hôte actuel." +OWNCLOUD_TRUSTED_DOMAIN_1_LABEL: "Domaine ou adresse IP" +OWNCLOUD_TRUSTED_DOMAIN_2_LABEL: "Domaine ou adresse IP" +OWNCLOUD_TRUSTED_DOMAIN_3_LABEL: "Domaine ou adresse IP" + +OWNCLOUD_CONFIRM_RESTORE_STEP_TITLE: "Confirmer la restauration ownCloud" +OWNCLOUD_CONFIRM_RESTORE_DESCRIPTION: "L'installation va maintenant se poursuivre et votre configuration précédente sera restaurée à partir de la sauvegarde. Veuillez vérifier que le chemin du fichier est exact et que l'utilisateur « sc-owncloud » dispose des autorisations de lecture pour ce chemin ; sinon, une nouvelle installation sera lancée." diff --git a/spk/owncloud/src/wizard_templates/uninstall_uifile.sh b/spk/owncloud/src/wizard_templates/uninstall_uifile.sh new file mode 100644 index 00000000000..b46bf49ea96 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/uninstall_uifile.sh @@ -0,0 +1,85 @@ +#!/bin/bash + +# for backwards compatability +if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ]; then + if [ -z ${SYNOPKG_PKGDEST_VOL} ]; then + SYNOPKG_PKGDEST_VOL="/volume1" + fi + if [ -z ${SYNOPKG_PKGNAME} ]; then + SYNOPKG_PKGNAME="owncloud" + fi +fi + +quote_json () { + sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' +} + +page_append () +{ + if [ -z "$1" ]; then + echo "$2" + elif [ -z "$2" ]; then + echo "$1" + else + echo "$1,$2" + fi +} + +ERROR_TEXT="{{{OWNCLOUD_PATH_VALIDATION_ERROR_TEXT}}}" + +getValidPath() +{ + VALID_PATH=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" +} + +main "$@" diff --git a/spk/owncloud/src/wizard_templates/uninstall_uifile.yml b/spk/owncloud/src/wizard_templates/uninstall_uifile.yml new file mode 100644 index 00000000000..88f89db0174 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/uninstall_uifile.yml @@ -0,0 +1,6 @@ +OWNCLOUD_PATH_VALIDATION_ERROR_TEXT: "Path should begin with /volume?/ with ? the number of the volume" + +OWNCLOUD_BACKUP_SERVER_STEP_TITLE: "Backup ownCloud server" +OWNCLOUD_BACKUP_SERVER_DESCRIPTION: "WARNING: Uninstalling the ownCloud package will result in the removal of the ownCloud server, along with all associated user accounts, data, and configurations." +OWNCLOUD_BACKUP_EXPORT_LOCATION_DESCRIPTION: "Before uninstalling, if you want to keep a backup of your data, please specify the directory where you would like to export to. Ensure that the user 'sc-owncloud' has write permissions to that directory. To skip exporting, leave this field blank." +OWNCLOUD_BACKUP_EXPORT_LOCATION_LABEL: "Export location" diff --git a/spk/owncloud/src/wizard_templates/uninstall_uifile_fre.yml b/spk/owncloud/src/wizard_templates/uninstall_uifile_fre.yml new file mode 100644 index 00000000000..91bf55d574a --- /dev/null +++ b/spk/owncloud/src/wizard_templates/uninstall_uifile_fre.yml @@ -0,0 +1,6 @@ +OWNCLOUD_PATH_VALIDATION_ERROR_TEXT: "Le chemin doit commencer par /volume?/ avec ? le numéro de volume" + +OWNCLOUD_BACKUP_SERVER_STEP_TITLE: "Sauvegarder le serveur ownCloud" +OWNCLOUD_BACKUP_SERVER_DESCRIPTION: "AVERTISSEMENT: La désinstallation du package ownCloud entraînera la suppression du serveur ownCloud, ainsi que de tous les comptes d'utilisateurs, données et configurations associés." +OWNCLOUD_BACKUP_EXPORT_LOCATION_DESCRIPTION: "Avant la désinstallation, si vous souhaitez conserver une sauvegarde de vos données, veuillez spécifier le répertoire vers lequel vous souhaitez exporter. Assurez-vous que l'utilisateur 'sc-owncloud' dispose des autorisations d'écriture dans ce répertoire. Pour ignorer l'exportation, laissez ce champ vide." +OWNCLOUD_BACKUP_EXPORT_LOCATION_LABEL: "Emplacement d'exportation" diff --git a/spk/owncloud/src/wizard_templates/upgrade_uifile.sh b/spk/owncloud/src/wizard_templates/upgrade_uifile.sh new file mode 100644 index 00000000000..683c05c9ed6 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/upgrade_uifile.sh @@ -0,0 +1,93 @@ +#!/bin/bash + +OC_NEW_VER=$(echo ${SYNOPKG_PKGVER} | cut -d '-' -f 1) +OC_OLD_VER=$(echo ${SYNOPKG_OLD_PKGVER} | cut -d '-' -f 1) + +quote_json () { + sed -e 's|\\|\\\\|g' -e 's|\"|\\\"|g' +} + +page_append () +{ + if [ -z "$1" ]; then + echo "$2" + elif [ -z "$2" ]; then + echo "$1" + else + echo "$1,$2" + fi +} + +is_upgrade_possible () +{ + # ownCloud upgrades only possible from 8.2.11, 9.0.9, 9.1.X, or 10.X.Y + valid_versions=("8.2.11" "9.0.9" "9.1.*" "10.*.*") + previous=${OC_OLD_VER} + for version in "${valid_versions[@]}"; do + if echo "$previous" | grep -q "$version"; then + return 0 # Success or true + fi + done + return 1 # Failure or false +} + +PAGE_NO_UPDATE=$(/bin/cat< + + 1. + {{{OWNCLOUD_UPGRADE_LIMITATION_1_TEXT}}} + + + 2. + {{{OWNCLOUD_UPGRADE_LIMITATION_2_TEXT}}} + + + 3. + {{{OWNCLOUD_UPGRADE_LIMITATION_3_TEXT}}} + + +EOF +) + +PAGE_LIMITATIONS=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" +} + +main "$@" diff --git a/spk/owncloud/src/wizard_templates/upgrade_uifile.yml b/spk/owncloud/src/wizard_templates/upgrade_uifile.yml new file mode 100644 index 00000000000..3bd95ce6b51 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/upgrade_uifile.yml @@ -0,0 +1,8 @@ +OWNCLOUD_INCOMPATIBLE_UPGRADE_STEP_TITLE: "Incompatible upgrade" +OWNCLOUD_INCOMPATIBLE_UPGRADE_DESCRIPTION: "NOTICE: Version ${OC_OLD_VER} of ownCloud cannot be updated to version ${OC_NEW_VER}. Please uninstall the previous version and remember to save your ${OCROOT}/data files before doing so." + +OWNCLOUD_UPGRADE_LIMITATIONS_STEP_TITLE: "Upgrade limitations" +OWNCLOUD_UPGRADE_LIMITATIONS_DESCRIPTION: "Please note the following limitations when upgrading the ownCloud package:" +OWNCLOUD_UPGRADE_LIMITATION_1_TEXT: "Cron jobs cannot be managed during the upgrade process. We recommend that you disable them manually before upgrading." +OWNCLOUD_UPGRADE_LIMITATION_2_TEXT: "The web server cannot be managed during the upgrade process. While the upgrade is in progress, the web server will be placed in maintenance mode. We recommend stopping Web Station before upgrading." +OWNCLOUD_UPGRADE_LIMITATION_3_TEXT: "Compatibility of third-party apps cannot be automatically validated during the upgrade process. Please check app compatibility manually before upgrading as apps will be migrated." diff --git a/spk/owncloud/src/wizard_templates/upgrade_uifile_fre.yml b/spk/owncloud/src/wizard_templates/upgrade_uifile_fre.yml new file mode 100644 index 00000000000..b4d65e233a9 --- /dev/null +++ b/spk/owncloud/src/wizard_templates/upgrade_uifile_fre.yml @@ -0,0 +1,8 @@ +OWNCLOUD_INCOMPATIBLE_UPGRADE_STEP_TITLE: "Mise à jour incompatible" +OWNCLOUD_INCOMPATIBLE_UPGRADE_DESCRIPTION: "AVIS: La version ${OC_OLD_VER} de ownCloud ne peut pas être mise à jour vers la version ${OC_NEW_VER}. Veuillez désinstaller la version précédente et n'oubliez pas de sauvegarder vos fichiers ${OCROOT}/data avant de le faire." + +OWNCLOUD_UPGRADE_LIMITATIONS_STEP_TITLE: "Limitations de la mise à niveau" +OWNCLOUD_UPGRADE_LIMITATIONS_DESCRIPTION: "Veuillez noter les limitations suivantes lors de la mise à jour du package ownCloud:" +OWNCLOUD_UPGRADE_LIMITATION_1_TEXT: "Les tâches cron ne peuvent pas être gérées pendant le processus de mise à niveau. Nous vous recommandons de les désactiver manuellement avant la mise à niveau." +OWNCLOUD_UPGRADE_LIMITATION_2_TEXT: "Le serveur Web ne peut pas être géré pendant le processus de mise à niveau. Pendant la mise à niveau, le serveur Web sera placé en mode maintenance. Nous vous recommandons d'arrêter Web Station avant la mise à niveau." +OWNCLOUD_UPGRADE_LIMITATION_3_TEXT: "La compatibilité des applications tierces ne peut pas être automatiquement validée pendant le processus de mise à niveau. Veuillez vérifier manuellement la compatibilité des applications avant la mise à niveau, car les applications seront migrées."