From 22adedf6d28ca7f658c2f108653a1e2cadc190d4 Mon Sep 17 00:00:00 2001 From: mreid-tt <943378+mreid-tt@users.noreply.github.com> Date: Sat, 14 Sep 2024 12:33:10 -0400 Subject: [PATCH 1/4] Update to v3.2.2 Requires PHP 8.2 --- cross/cops/Makefile | 2 +- cross/cops/digests | 6 +++--- spk/cops/Makefile | 10 +++++----- spk/cops/src/conf/resource | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/cross/cops/Makefile b/cross/cops/Makefile index 8e50cada54c..eb3a73a8324 100644 --- a/cross/cops/Makefile +++ b/cross/cops/Makefile @@ -1,5 +1,5 @@ PKG_NAME = cops -PKG_VERS = 1.5.4 +PKG_VERS = 3.2.2 PKG_EXT = zip PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://github.com/mikespub-org/seblucas-cops/releases/download/$(PKG_VERS) diff --git a/cross/cops/digests b/cross/cops/digests index d00a2440103..62697c01ce1 100644 --- a/cross/cops/digests +++ b/cross/cops/digests @@ -1,3 +1,3 @@ -cops-1.5.4.zip SHA1 6fc653f9b7b83766547c420875579bd02503c98e -cops-1.5.4.zip SHA256 7fc18946c003d91e77c4a189f0b752f021224187d86e93f8813b165d9ac306c9 -cops-1.5.4.zip MD5 17cb2d4ce02f7ddbd51baa27fcc26a0d +cops-3.2.2.zip SHA1 530c525cdfdb72040d089d031e8d48053d68437c +cops-3.2.2.zip SHA256 c3dbb1a310d846364e7a1c3f1453098a2273b45a80655a57fadc5a393868797b +cops-3.2.2.zip MD5 1e89e57e7862df462a1f6b397858bd4b diff --git a/spk/cops/Makefile b/spk/cops/Makefile index 7d523b6a658..771f2251419 100644 --- a/spk/cops/Makefile +++ b/spk/cops/Makefile @@ -1,20 +1,20 @@ SPK_NAME = cops -SPK_VERS = 1.5.4 -SPK_REV = 9 +SPK_VERS = 3.2.2 +SPK_REV = 10 SPK_ICON = src/cops.png DEPENDS = cross/cops # Pure PHP package, make sure ARCH is not defined override ARCH= -REQUIRED_MIN_DSM = 6.0 -SPK_DEPENDS=WebStation:PHP7.4:Apache2.4 +REQUIRED_MIN_DSM = 7.0 +SPK_DEPENDS=WebStation:PHP8.2:Apache2.4 MAINTAINER = Diaoul DESCRIPTION = Calibre OPDS and HTML PHP Server : light alternative to Calibre content server / Calibre2OPDS. DESCRIPTION_FRE = Calibre OPDS et HTML PHP Serveur : alternative légère au serveur de contenu de Calibre et à Calibre2OPDS. DISPLAY_NAME = COPS -CHANGELOG = "1. Update to 1.5.4" +CHANGELOG = "1. Update to v3.2.2. \(Requires PHP 8.2\)" HOMEPAGE = https://blog.slucas.fr/en/oss/calibre-opds-php-server LICENSE = GPLv2 diff --git a/spk/cops/src/conf/resource b/spk/cops/src/conf/resource index bd8ac149c5f..cfa7f087cd4 100644 --- a/spk/cops/src/conf/resource +++ b/spk/cops/src/conf/resource @@ -34,7 +34,7 @@ "display_name": "COPS", "icon": "app/images/cops-{0}.png", "php": { - "backend": 8, + "backend": 11, "extensions": [ "gd", "intl", From d4d496cb8095c0d8c9a1abf517be197b82c2e069 Mon Sep 17 00:00:00 2001 From: mreid-tt <943378+mreid-tt@users.noreply.github.com> Date: Sat, 14 Sep 2024 12:49:37 -0400 Subject: [PATCH 2/4] Remove DSM 6 code --- spk/cops/Makefile | 9 -- spk/cops/src/conf_6/resource | 11 -- spk/cops/src/service-setup.sh | 133 +----------------- spk/cops/src/web/cops.conf | 16 --- spk/cops/src/web/cops.json | 25 ---- .../src/wizard_templates/install_uifile.sh | 28 ---- .../src/wizard_templates/install_uifile.yml | 3 - .../wizard_templates/install_uifile_fre.yml | 3 - .../src/wizard_templates/upgrade_uifile.sh | 4 - 9 files changed, 1 insertion(+), 231 deletions(-) delete mode 100644 spk/cops/src/conf_6/resource delete mode 100644 spk/cops/src/web/cops.conf delete mode 100644 spk/cops/src/web/cops.json diff --git a/spk/cops/Makefile b/spk/cops/Makefile index 771f2251419..457a39d0943 100644 --- a/spk/cops/Makefile +++ b/spk/cops/Makefile @@ -30,13 +30,6 @@ DSM_UI_DIR = app DSM_UI_CONFIG = src/app/config CONF_DIR = src/conf/ -include ../../mk/spksrc.common.mk - -# Alternate conf dir for DSM 6 -ifeq ($(call version_lt, ${TCVERSION}, 7.0),1) -CONF_DIR = src/conf_6/ -endif - SERVICE_USER = auto SERVICE_SETUP = src/service-setup.sh STARTABLE = no @@ -48,7 +41,5 @@ include ../../mk/spksrc.spk.mk .PHONY: cops_extra_install cops_extra_install: install -m 755 -d $(STAGING_DIR)/web - install -m 644 src/web/cops.conf $(STAGING_DIR)/web/cops.conf - install -m 644 src/web/cops.json $(STAGING_DIR)/web/cops.json @$(MSG) Install default config file install -m 666 src/web/config_local.php.synology $(STAGING_DIR)/web/config_local.php.synology diff --git a/spk/cops/src/conf_6/resource b/spk/cops/src/conf_6/resource deleted file mode 100644 index 391d1ed706c..00000000000 --- a/spk/cops/src/conf_6/resource +++ /dev/null @@ -1,11 +0,0 @@ -{ - "data-share": { - "shares": [{ - "name": "{{wizard_calibre_share}}", - "once": true, - "permission": { - "rw": ["http"] - } - }] - } -} diff --git a/spk/cops/src/service-setup.sh b/spk/cops/src/service-setup.sh index 5501b0177c0..a562ea8f82d 100644 --- a/spk/cops/src/service-setup.sh +++ b/spk/cops/src/service-setup.sh @@ -1,99 +1,13 @@ # Package PACKAGE="cops" -DNAME="COPS" -SC_PKG_PREFIX="com-synocommunity-packages-" -PACKAGE_NAME="${SC_PKG_PREFIX}${PACKAGE}" # Others -SYNOSVC="/usr/syno/sbin/synoservice" WEB_DIR="/var/services/web_packages" -# for backwards compatability -if [ $SYNOPKG_DSM_VERSION_MAJOR -lt 7 ];then - WEB_DIR="/var/services/web" -fi WEB_ROOT="${WEB_DIR}/${PACKAGE}" -validate_preinst () -{ - # Check for modification to PHP template defaults on DSM 6 - if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then - WS_TMPL_PATH="/var/packages/WebStation/target/misc" - WS_TMPL_FILE="php74_fpm.mustache" - FULL_WS_TMPL_FILE="${WS_TMPL_PATH}/${WS_TMPL_FILE}" - # Check for PHP template defaults - if ! grep -q -E '^user = http$' "${FULL_WS_TMPL_FILE}" || ! grep -q -E '^listen\.owner = http$' "${FULL_WS_TMPL_FILE}"; then - echo "PHP template defaults have been modified. Installation is not supported." - exit 1 - fi - fi -} - service_postinst () { - # Web interface setup for DSM 6 -- used by INSTALL and UPGRADE - if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then - # Install the web interface - echo "Installing web interface" - ${MKDIR} ${WEB_ROOT} - rsync -aX ${SYNOPKG_PKGDEST}/share/${PACKAGE}/ ${WEB_ROOT} 2>&1 - - # Install web configurations - TEMPDIR="${SYNOPKG_PKGTMP}/web" - ${MKDIR} ${TEMPDIR} - WS_CFG_DIR="/usr/syno/etc/packages/WebStation" - WS_CFG_FILE="WebStation.json" - WS_CFG_PATH="${WS_CFG_DIR}/${WS_CFG_FILE}" - TMP_WS_CFG_PATH="${TEMPDIR}/${WS_CFG_FILE}" - PHP_CFG_FILE="PHPSettings.json" - PHP_CFG_PATH="${WS_CFG_DIR}/${PHP_CFG_FILE}" - TMP_PHP_CFG_PATH="${TEMPDIR}/${PHP_CFG_FILE}" - PHP_PROF_NAME="Default PHP 7.4 Profile" - WS_BACKEND="$(jq -r '.default.backend' ${WS_CFG_PATH})" - WS_PHP="$(jq -r '.default.php' ${WS_CFG_PATH})" - RESTART_APACHE="no" - RSYNC_ARCH_ARGS="--backup --suffix=.bak --remove-source-files" - # Check if Apache is the selected back-end - if [ ! "$WS_BACKEND" = "2" ]; then - echo "Set Apache as the back-end server" - jq '.default.backend = 2' ${WS_CFG_PATH} > ${TMP_WS_CFG_PATH} - rsync -aX ${RSYNC_ARCH_ARGS} ${TMP_WS_CFG_PATH} ${WS_CFG_DIR}/ 2>&1 - RESTART_APACHE="yes" - fi - # Check if default PHP profile is selected - if [ -z "$WS_PHP" ] || [ "$WS_PHP" = "null" ]; then - echo "Enable default PHP profile" - # Locate default PHP profile - PHP_PROF_ID="$(jq -r '. | to_entries[] | select(.value | type == "object" and .profile_desc == "'"$PHP_PROF_NAME"'") | .key' "${PHP_CFG_PATH}")" - jq ".default.php = \"$PHP_PROF_ID\"" "${WS_CFG_PATH}" > ${TMP_WS_CFG_PATH} - rsync -aX ${RSYNC_ARCH_ARGS} ${TMP_WS_CFG_PATH} ${WS_CFG_DIR}/ 2>&1 - RESTART_APACHE="yes" - fi - # Check for PHP profile - if ! jq -e ".[\"${PACKAGE_NAME}\"]" "${PHP_CFG_PATH}" >/dev/null; then - echo "Add PHP profile for ${DNAME}" - jq --slurpfile ocNode ${SYNOPKG_PKGDEST}/web/${PACKAGE}.json '.["'"${PACKAGE_NAME}"'"] = $ocNode[0]' ${PHP_CFG_PATH} > ${TMP_PHP_CFG_PATH} - rsync -aX ${RSYNC_ARCH_ARGS} ${TMP_PHP_CFG_PATH} ${WS_CFG_DIR}/ 2>&1 - RESTART_APACHE="yes" - fi - # Check for Apache config - if [ ! -f "/usr/local/etc/apache24/sites-enabled/${PACKAGE}.conf" ]; then - echo "Add Apache config for ${DNAME}" - rsync -aX ${SYNOPKG_PKGDEST}/web/${PACKAGE}.conf /usr/local/etc/apache24/sites-enabled/ 2>&1 - RESTART_APACHE="yes" - fi - # Restart Apache if configs have changed - if [ "$RESTART_APACHE" = "yes" ]; then - if jq -e 'to_entries | map(select((.key | startswith("'"${SC_PKG_PREFIX}"'")) and .key != "'"${PACKAGE_NAME}"'")) | length > 0' "${PHP_CFG_PATH}" >/dev/null; then - echo " [WARNING] Multiple PHP profiles detected, will require restart of DSM to load new configs" - else - echo "Restart Apache to load new configs" - ${SYNOSVC} --restart pkgctl-Apache2.4 - fi - fi - # Clean-up temporary files - ${RM} ${TEMPDIR} - fi # Initialize or update configuration file based on user preferences. if [ "${SYNOPKG_PKG_STATUS}" = "INSTALL" ]; then CFG_FILE="${WEB_ROOT}/config_local.php" @@ -110,51 +24,6 @@ service_postinst () fi } -service_postuninst () -{ - # Web interface removal for DSM 6 -- used by UNINSTALL and UPGRADE - if [ ${SYNOPKG_DSM_VERSION_MAJOR} -lt 7 ]; then - # Remove the web interface - echo "Removing web interface" - ${RM} ${WEB_ROOT} - - # Remove web configurations - TEMPDIR="${SYNOPKG_PKGTMP}/web" - ${MKDIR} ${TEMPDIR} - WS_CFG_DIR="/usr/syno/etc/packages/WebStation" - PHP_CFG_FILE="PHPSettings.json" - PHP_CFG_PATH="${WS_CFG_DIR}/${PHP_CFG_FILE}" - TMP_PHP_CFG_PATH="${TEMPDIR}/${PHP_CFG_FILE}" - RESTART_APACHE="no" - RSYNC_ARCH_ARGS="--backup --suffix=.bak --remove-source-files" - # Check for PHP profile - if jq -e ".[\"${PACKAGE_NAME}\"]" "${PHP_CFG_PATH}" >/dev/null; then - echo "Removing PHP profile for ${DNAME}" - jq 'del(.["'"${PACKAGE_NAME}"'"])' ${PHP_CFG_PATH} > ${TMP_PHP_CFG_PATH} - rsync -aX ${RSYNC_ARCH_ARGS} ${TMP_PHP_CFG_PATH} ${WS_CFG_DIR}/ 2>&1 - ${RM} "${WS_CFG_DIR}/php_profile/${PACKAGE_NAME}" - RESTART_APACHE="yes" - fi - # Check for Apache config - if [ -f "/usr/local/etc/apache24/sites-enabled/${PACKAGE}.conf" ]; then - echo "Removing Apache config for ${DNAME}" - ${RM} /usr/local/etc/apache24/sites-enabled/${PACKAGE}.conf - RESTART_APACHE="yes" - fi - # Restart Apache if configs have changed - if [ "$RESTART_APACHE" = "yes" ]; then - if jq -e 'to_entries | map(select((.key | startswith("'"${SC_PKG_PREFIX}"'")) and .key != "'"${PACKAGE_NAME}"'")) | length > 0' "${PHP_CFG_PATH}" >/dev/null; then - echo " [WARNING] Multiple PHP profiles detected, will require restart of DSM to load new configs" - else - echo "Restart Apache to load new configs" - ${SYNOSVC} --restart pkgctl-Apache2.4 - fi - fi - # Clean-up temporary files - ${RM} ${TEMPDIR} - fi -} - service_save () { # Save some stuff @@ -172,7 +41,7 @@ service_restore () # Restore some stuff echo "Restore previous data from ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${PACKAGE}" # Restore cops configuration file - rsync -aX --update -I ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${PACKAGE}/web/config_local.php ${WEB_ROOT}/config_local.php 2>&1 + rsync -aX -I ${SYNOPKG_TEMP_UPGRADE_FOLDER}/${PACKAGE}/web/config_local.php ${WEB_ROOT}/config_local.php 2>&1 else # Backup missing, re-initialise default values CFG_FILE="${WEB_ROOT}/config_local.php" diff --git a/spk/cops/src/web/cops.conf b/spk/cops/src/web/cops.conf deleted file mode 100644 index d4b7b8be227..00000000000 --- a/spk/cops/src/web/cops.conf +++ /dev/null @@ -1,16 +0,0 @@ -Alias "/cops" "/var/services/web/cops" - - - ProxySet timeout=3600 - - - - - - SetHandler "proxy:fcgi://cops" - - - - DirectoryIndex index.php index.htm index.html - - diff --git a/spk/cops/src/web/cops.json b/spk/cops/src/web/cops.json deleted file mode 100644 index cea76cec32f..00000000000 --- a/spk/cops/src/web/cops.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "backend": 8, - "custom_open_basedir": false, - "display_errors": false, - "enable_cache": true, - "enable_xdebug": false, - "extensions": [ - "gd", - "pdo_sqlite", - "sqlite3", - "intl", - "zlib" - ], - "fpm_settings": { - "max_children": 20, - "max_spare_servers": 3, - "min_spare_servers": 1, - "mode": "dynamic", - "start_servers": 2 - }, - "open_basedir": "", - "php_settings": {}, - "profile_desc": "PHP profile used by cops", - "profile_name": "cops" -} \ No newline at end of file diff --git a/spk/cops/src/wizard_templates/install_uifile.sh b/spk/cops/src/wizard_templates/install_uifile.sh index e15abf5a107..f9e0557c5dc 100644 --- a/spk/cops/src/wizard_templates/install_uifile.sh +++ b/spk/cops/src/wizard_templates/install_uifile.sh @@ -16,21 +16,6 @@ page_append () fi } -# Check for multiple PHP profiles -check_php_profiles () -{ - PACKAGE="cops" - SC_PKG_PREFIX="com-synocommunity-packages-" - PACKAGE_NAME="${SC_PKG_PREFIX}${PACKAGE}" - PHP_CFG_PATH="/usr/syno/etc/packages/WebStation/PHPSettings.json" - if [ "${SYNOPKG_DSM_VERSION_MAJOR}" -lt 7 ] && \ - jq -e 'to_entries | map(select((.key | startswith("'"${SC_PKG_PREFIX}"'")) and .key != "'"${PACKAGE_NAME}"'")) | length > 0' "${PHP_CFG_PATH}" >/dev/null; then - return 0 # true - else - return 1 # false - fi -} - PAGE_ADMIN_CONFIG=$(/bin/cat< "${SYNOPKG_TEMP_LOGFILE}" } diff --git a/spk/cops/src/wizard_templates/install_uifile.yml b/spk/cops/src/wizard_templates/install_uifile.yml index 55c7d0e47c4..64f688f0ac2 100644 --- a/spk/cops/src/wizard_templates/install_uifile.yml +++ b/spk/cops/src/wizard_templates/install_uifile.yml @@ -12,6 +12,3 @@ DO_YOU_WANT_TO_USE_COPS_WITH_A_KOBO_LABEL: "Kobo" DSM_PERMISSIONS_TITLE: "Attention! DSM Permissions" DSM_PERMISSIONS_TEXT: "Package user and group will not appear on most UI settings. Please read Permission Management for details." - -PHP_PROFILES_TITLE: "Multiple PHP profiles" -PHP_PROFILES_DESCRIPTION: "Attention: Multiple PHP profiles detected; the package webpage will not display until a DSM restart is performed to load new configurations." diff --git a/spk/cops/src/wizard_templates/install_uifile_fre.yml b/spk/cops/src/wizard_templates/install_uifile_fre.yml index 7be2ebf510d..0d24e4f0b37 100644 --- a/spk/cops/src/wizard_templates/install_uifile_fre.yml +++ b/spk/cops/src/wizard_templates/install_uifile_fre.yml @@ -12,6 +12,3 @@ DO_YOU_WANT_TO_USE_COPS_WITH_A_KOBO_LABEL: "Kobo" DSM_PERMISSIONS_TITLE: "Attention! DSM Permissions" DSM_PERMISSIONS_TEXT: "L'utilisateur et le group du package n'apparaîtront pas sur la plupart des UI réglages. Veuillez vous référrer à Permission Management pour plus de détails." - -PHP_PROFILES_TITLE: "Plusieurs profils PHP" -PHP_PROFILES_DESCRIPTION: "Attention : Plusieurs profils PHP détectés ; la page Web du package ne s'affichera pas tant qu'un redémarrage de DSM n'aura pas été effectué pour charger de nouvelles configurations." diff --git a/spk/cops/src/wizard_templates/upgrade_uifile.sh b/spk/cops/src/wizard_templates/upgrade_uifile.sh index fc2c24724b1..f1eca70988b 100644 --- a/spk/cops/src/wizard_templates/upgrade_uifile.sh +++ b/spk/cops/src/wizard_templates/upgrade_uifile.sh @@ -1,10 +1,6 @@ #!/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 quote_json () { From d8e106de4f0623b1e21af6354e660be76d339201 Mon Sep 17 00:00:00 2001 From: mreid-tt <943378+mreid-tt@users.noreply.github.com> Date: Sat, 14 Sep 2024 13:03:27 -0400 Subject: [PATCH 3/4] Minor fixes --- spk/cops/Makefile | 2 +- spk/cops/src/conf/resource | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/spk/cops/Makefile b/spk/cops/Makefile index 457a39d0943..ef7fe07361c 100644 --- a/spk/cops/Makefile +++ b/spk/cops/Makefile @@ -10,7 +10,7 @@ override ARCH= REQUIRED_MIN_DSM = 7.0 SPK_DEPENDS=WebStation:PHP8.2:Apache2.4 -MAINTAINER = Diaoul +MAINTAINER = SynoCommunity DESCRIPTION = Calibre OPDS and HTML PHP Server : light alternative to Calibre content server / Calibre2OPDS. DESCRIPTION_FRE = Calibre OPDS et HTML PHP Serveur : alternative légère au serveur de contenu de Calibre et à Calibre2OPDS. DISPLAY_NAME = COPS diff --git a/spk/cops/src/conf/resource b/spk/cops/src/conf/resource index cfa7f087cd4..6c47bb0db5f 100644 --- a/spk/cops/src/conf/resource +++ b/spk/cops/src/conf/resource @@ -40,6 +40,7 @@ "intl", "pdo_sqlite", "sqlite3", + "zip", "zlib" ], "group": "http", From 293ee45d84d7760a5c5c3cc42f5caee96e2a02a6 Mon Sep 17 00:00:00 2001 From: mreid-tt <943378+mreid-tt@users.noreply.github.com> Date: Sat, 14 Sep 2024 17:23:33 -0400 Subject: [PATCH 4/4] Simplify install wizard --- .../{install_uifile.sh => install_uifile} | 35 ++----------------- .../src/wizard_templates/install_uifile.yml | 2 +- .../wizard_templates/install_uifile_fre.yml | 2 +- 3 files changed, 5 insertions(+), 34 deletions(-) rename spk/cops/src/wizard_templates/{install_uifile.sh => install_uifile} (73%) diff --git a/spk/cops/src/wizard_templates/install_uifile.sh b/spk/cops/src/wizard_templates/install_uifile similarity index 73% rename from spk/cops/src/wizard_templates/install_uifile.sh rename to spk/cops/src/wizard_templates/install_uifile index f9e0557c5dc..733250a0a50 100644 --- a/spk/cops/src/wizard_templates/install_uifile.sh +++ b/spk/cops/src/wizard_templates/install_uifile @@ -1,23 +1,4 @@ -#!/bin/bash - -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/cops/src/wizard_templates/install_uifile.yml b/spk/cops/src/wizard_templates/install_uifile.yml index 64f688f0ac2..42bcfbcc18c 100644 --- a/spk/cops/src/wizard_templates/install_uifile.yml +++ b/spk/cops/src/wizard_templates/install_uifile.yml @@ -2,7 +2,7 @@ COPS_CONFIGURATION_FIRST_STEP_TITLE: "COPS configuration" EXISTING_CALIBRE_DIRECTORY_DESCRIPTION: "Existing Calibre library directory." EXISTING_CALIBRE_DIRECTORY_LABEL: "Share name" -EXISTING_CALIBRE_DIRECTORY_VALIDATION_ERROR_TEXT: "Subdirectories are not supported." +EXISTING_CALIBRE_DIRECTORY_VALIDATION_ERROR_TEXT: "The shared folder name contains invalid characters or starts/ends with a space." COPS_CATALOG_TITLE_DESCRIPTION: "Catalog title." COPS_CATALOG_TITLE_LABEL: "Catalog title" diff --git a/spk/cops/src/wizard_templates/install_uifile_fre.yml b/spk/cops/src/wizard_templates/install_uifile_fre.yml index 0d24e4f0b37..d70cddff7a7 100644 --- a/spk/cops/src/wizard_templates/install_uifile_fre.yml +++ b/spk/cops/src/wizard_templates/install_uifile_fre.yml @@ -2,7 +2,7 @@ COPS_CONFIGURATION_FIRST_STEP_TITLE: "Configuration de COPS" EXISTING_CALIBRE_DIRECTORY_DESCRIPTION: "Répertoire existant contenant une bibliothèque Calibre." EXISTING_CALIBRE_DIRECTORY_LABEL: "Partager le nom" -EXISTING_CALIBRE_DIRECTORY_VALIDATION_ERROR_TEXT: "Les sous-répertoires ne sont pas pris en charge." +EXISTING_CALIBRE_DIRECTORY_VALIDATION_ERROR_TEXT: "Le nom du dossier partagé contient des caractères non valides ou commence/se termine par un espace." COPS_CATALOG_TITLE_DESCRIPTION: "Titre du catalogue." COPS_CATALOG_TITLE_LABEL: "Titre du catalogue"