From: Vincent Bernat <bernat@debian.org> Date: Fri, 18 Feb 2011 21:04:12 +0000 (+0100) Subject: Imported Debian patch 0.5.1+dfsg-3 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=f7740e98f54de40e5fc1de605c7881f07d04d978;p=roundcube.git Imported Debian patch 0.5.1+dfsg-3 --- diff --git a/debian/changelog b/debian/changelog index 6e2c388..947a76d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +roundcube (0.5.1+dfsg-3) unstable; urgency=low + + * Install show_additional_headers plugin in roundcube-plugins package. + * Use dbconfig-common to force some upgrade commands using some ugly + hacks. This should fix any remaining problems with MySQL + upgrade. Closes: #613586. + + -- Vincent Bernat <bernat@debian.org> Fri, 18 Feb 2011 22:04:12 +0100 + roundcube (0.5.1+dfsg-2) unstable; urgency=low * Remove all "ADD INDEX" from MySQL 0.5-1 upgrade file and put them in diff --git a/debian/roundcube-core.postinst b/debian/roundcube-core.postinst index 64bdf5d..59f85f7 100644 --- a/debian/roundcube-core.postinst +++ b/debian/roundcube-core.postinst @@ -39,21 +39,31 @@ apache_install() { case "$1" in configure) - # We try to fix an incomplete upgrade (see #610725) + # We try to fix an incomplete upgrade (see #610725 and #613586) if [ -n "$2" ] && dpkg --compare-versions "$2" le 0.5.1+dfsg-2; then db_get roundcube/dbconfig-upgrade || true if [ x"$RET" = x"true" ]; then - # Ok, we may need to do some upgrade steps. Let's get - # database parameters - eval `sed -n 's/^\$\(.*\);$/\1/p' /etc/roundcube/debian-db.php` - if [ x"$dbtype" = x"mysql" ]; then - echo "Fixing MySQL indexes (you can ignore errors)..." - MYSQLARGS="-f -u $dbuser -p$dbpass $dbname" - [ -z "$dbserver" ] || MYSQLARGS="-h $dbserver $MYSQLARGS" - [ -z "$dbport" ] || MYSQLARGS="-P $dbport $MYSQLARGS" - cat <<EOF | mysql $MYSQLARGS || true + if [ x"$dbc_dbtype" = x"mysql" ]; then + # Ok, we may need to do some upgrade steps. + echo "Fixing MySQL installation..." + if dpkg --compare-versions "$2" ge 0.5; then + # Hack (ugly) to replace "mysql" by "mysql -f" + real_mysql="$(which mysql)" + workdir="$(mktemp -d)" + oldpath="$PATH" + cat <<EOF > "$workdir/mysql" +#!/bin/sh +"$real_mysql" "\$@" -f +EOF + chmod +x "$workdir/mysql" + PATH="$workdir:$PATH" + dbc_mysql_exec_file \ + /usr/share/dbconfig-common/data/roundcube/upgrade/mysql/0.5-1 || true + PATH="$oldpath" + rm -rf "$workdir" + fi + cat <<EOF | while read command; do dbc_mysql_exec_command "$command" || true ; done ALTER TABLE \`messages\` ADD INDEX \`index_index\` (\`user_id\`, \`cache_key\`, \`idx\`); -ALTER TABLE \`session\` CHANGE \`vars\` \`vars\` MEDIUMTEXT NOT NULL; ALTER TABLE \`contacts\`ADD INDEX \`user_contacts_index\` (\`user_id\`,\`email\`); ALTER TABLE \`identities\` ADD INDEX \`user_identities_index\` (\`user_id\`, \`del\`); EOF diff --git a/debian/roundcube-plugins.install b/debian/roundcube-plugins.install index 4c6e103..f99e3ff 100644 --- a/debian/roundcube-plugins.install +++ b/debian/roundcube-plugins.install @@ -10,6 +10,7 @@ plugins/managesieve/ usr/share/roundcube/plugins plugins/markasjunk/ usr/share/roundcube/plugins plugins/new_user_dialog/ usr/share/roundcube/plugins plugins/new_user_identity/ usr/share/roundcube/plugins +plugins/show_additional_headers/ usr/share/roundcube/plugins plugins/squirrelmail_usercopy/ usr/share/roundcube/plugins plugins/subscriptions_option/ usr/share/roundcube/plugins plugins/userinfo/ usr/share/roundcube/plugins