X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=debian%2Froundcube-core.postinst;h=36457be2768b27da80f9444da29317c663452263;hb=a695404c36951b0793369a11ff9a9d110b15dbb1;hp=5e7e0e223a9f7a71b1c76dd7387eb67fe79a61cf;hpb=8d00e7f2ca613449885c5b9613a234c387825907;p=roundcube.git diff --git a/debian/roundcube-core.postinst b/debian/roundcube-core.postinst index 5e7e0e2..36457be 100644 --- a/debian/roundcube-core.postinst +++ b/debian/roundcube-core.postinst @@ -8,8 +8,8 @@ set -e . /usr/share/debconf/confmodule . /usr/share/dbconfig-common/dpkg/postinst dbc_generate_include=php:/etc/roundcube/debian-db.php -dbc_generate_include_owner="www-data:www-data" -dbc_generate_include_perms="660" +dbc_generate_include_owner="root:www-data" +dbc_generate_include_perms="640" dbc_dbfile_owner="www-data:www-data" dbc_dbfile_perms="0660" dbc_dbuser=roundcube @@ -39,61 +39,43 @@ apache_install() { case "$1" in configure) - # From 0.1-beta2.2 to 0.1-rc1, a column was added to table - # `identities'. For MySQL and PostgreSQL, this is handled by - # dbconfig-common but for sqlite, there is no way to add a - # column to a table. Therefore, we dump here the table and add - # the column. - [ "$dbc_upgrade" = "true" ] && { - case "$dbc_dbtype" in - sqlite) - db="${dbc_basepath}/${dbc_dbname}" - # OK, we need to check if the table contains html_signature - if ! sqlite "$db" '.schema identities' | grep -q html_signature; then - # We need to add it - echo -n "Need to upgrade 'identities' table in $db... " - upgrade_tmp=$(mktemp -t roundcube.sqlite.XXXXXXXXXX) - ( - cat < "$workdir/mysql" +#!/bin/sh +"$real_mysql" "\$@" -f EOF - # We dump and keep only inserts - sqlite "$db" '.dump identities' | \ - awk '/^INSERT INTO/ {start = 1} {if (start == 1) print}' | \ - head -n -2 | \ - sed 's/^\(INSERT INTO identities \)/\1(identity_id, user_id, del, standard, name, organization, email, "reply-to", bcc, signature) /' - echo 'COMMIT;' ) > $upgrade_tmp - sqlite "$db" < $upgrade_tmp - rm $upgrade_tmp - echo "OK" - fi - ;; - *) - # Do nothing - ;; - esac - } + 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 <> $CONFFILE.ucftmp + cat /usr/share/roundcube/main.inc.php.dist | while read line; do + case "$line" in + "\$rcmail_config['default_host'] = "*) + printf "\$rcmail_config['default_host'] = %s;\n" "${hosts}" + ;; + "\$rcmail_config['des_key'] = "*) + printf "\$rcmail_config['des_key'] = '%s';\n" "${deskey}" + ;; + "\$rcmail_config['language'] = "*) + printf "\$rcmail_config['language'] = '%s';\n" "${language}" + ;; + *) + printf "%s\n" "$line" + ;; + esac + done >> $CONFFILE.ucftmp ucf --debconf-ok $CONFFILE.ucftmp $CONFFILE - chown root:www-data $CONFFILE - rm -f $CONFFILE.ucftmp + chown root:www-data $CONFFILE + [ ! -f $CONFFILE.dpkg-dist ] || chown root:www-data $CONFFILE.dpkg-dist + rm -f $CONFFILE.ucftmp # Handle webserver reconfiguration/restart ; stolen from zabbix package db_get roundcube/reconfigure-webserver || true @@ -165,7 +160,6 @@ EOF chmod -R 750 /var/log/roundcube chown -R www-data:www-data /var/lib/roundcube/temp chmod -R 750 /var/lib/roundcube/temp - chown www-data:adm /var/lib/roundcube/skins ;;