From 4c76be9fc079fc1e20d90586270d5aca773587bf Mon Sep 17 00:00:00 2001 From: Robin Sheat Date: Wed, 12 Mar 2014 17:24:36 +1300 Subject: [PATCH] Bug 10942 - debconfing the update option This causes a question to be asked at installation time as to whether translations should be updated or not. The answer is written to the config file, and stored in debconf. Effort is taken to ensure that if the admin changes the config file, the update will be picked up and reflected in debconf (i.e. that the admin's decision is always the correct one.) --- debian/koha-common.config | 20 +++++++++++++++++++- debian/koha-common.postinst | 36 ++++++++++++++++++++++++++++++++++-- debian/koha-common.templates | 7 +++++++ debian/templates/koha-common.conf | 2 +- 4 files changed, 61 insertions(+), 4 deletions(-) diff --git a/debian/koha-common.config b/debian/koha-common.config index 716119d..3f97df9 100755 --- a/debian/koha-common.config +++ b/debian/koha-common.config @@ -21,8 +21,26 @@ set -e . /usr/share/debconf/confmodule +CONFIGFILE=/etc/koha/koha-common.conf + +if [ -e $CONFIGFILE ]; then + . $CONFIGFILE || true + # Put the current values into debconf + UPDATE="true" + if [ "$AUTOMATIC_TRANSLATIONS_UPDATE" = "no" ] ; then + UPDATE="false" + fi + db_set koha-common/automatically-update-translations "$UPDATE" +else + # True is the default + db_set koha-common/automatically-update-translations true +fi + if dpkg --compare-versions "$2" lt-nl 3.4 ; then db_input high koha-common/3.2-3.4-upgrade-notice || true fi -db_go + +db_input medium koha-common/automatically-update-translations || true + +db_go || true diff --git a/debian/koha-common.postinst b/debian/koha-common.postinst index d061403..b754dea 100644 --- a/debian/koha-common.postinst +++ b/debian/koha-common.postinst @@ -8,8 +8,9 @@ AUTOMATIC_TRANSLATIONS_UPDATE="yes" . /usr/share/debconf/confmodule # Read configuration variable file if it is present -if [ -r /etc/koha/koha-common.conf ]; then - . /etc/koha/koha-common.conf +CONFIG=/etc/koha/koha-common.conf +if [ -r $CONFIG ]; then + . $CONFIG fi conf=/etc/mysql/koha-common.cnf @@ -22,6 +23,37 @@ fi koha-upgrade-schema $(koha-list) +# Generate a config file if one doesn't exist already +if [ ! -e $CONFIG ]; then + cat < $CONFIG +## Automatic template translation update +# +# This variable controls whether template translations should +# be updated automatically on koha-common package upgrades. +# Options: 'yes' (default) +# 'no' +# Note: if you choose 'no' then you will have to issue +# $ koha-translate --update +# +AUTOMATIC_TRANSLATIONS_UPDATE="yes" +EOF +fi + +# Substitute the values from debconf into the file. +db_get koha-common/automatically-update-translations +UPDATE="$RET" +if [ "$UPDATE" = "false" ]; then + $UPDATE="no" +else + $UPDATE="yes" +fi +# In case they were removed/commented out, we add it in. +grep -Eq '^ *AUTOMATIC_TRANSLATIONS_UPDATE=' $CONFIG || \ + echo "AUTOMATIC_TRANSLATIONS_UPDATE=" >> $CONFIG + +sed -e "s/^ *AUTOMATIC_TRANSLATIONS_UPDATE=.*/AUTOMATIC_TRANSLATIONS_UPDATE=\"$UPDATE\"/" < $CONFIG > $CONFIG.tmp +mv -f $CONFIG.tmp $CONFIG + if [ "$AUTOMATIC_TRANSLATIONS_UPDATE" = "yes" ]; then for lang in $(koha-translate --list | grep -v -x "en"); do if koha-translate --update $lang; then diff --git a/debian/koha-common.templates b/debian/koha-common.templates index f88449e..5576fe8 100644 --- a/debian/koha-common.templates +++ b/debian/koha-common.templates @@ -8,3 +8,10 @@ Description: koha-common upgrade actions required should be largely operational during the process, but some things, particularly to do with items, may appear strange until the upgrade and re-index is complete. + +Template: koha-common/automatically-update-translations +Type: boolean +Default: true +Description: automatically update translations + When Koha is upgraded, any existing translated templates can be regenerated + to keep everything in sync. Select "yes" if you want this. diff --git a/debian/templates/koha-common.conf b/debian/templates/koha-common.conf index 331a893..b4e3db6 100644 --- a/debian/templates/koha-common.conf +++ b/debian/templates/koha-common.conf @@ -14,4 +14,4 @@ # Note: if you choose 'no' then you will have to issue # $ koha-translate --update # -#AUTOMATIC_TRANSLATIONS_UPDATE="yes" +AUTOMATIC_TRANSLATIONS_UPDATE="yes" -- 1.8.3.2