Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package fusiondirectory + * debian/fusiondirectory.postinst: + + Move Apache2 logic into configure condition. + + Drop usage of debconf confmodule. (Closes: #925291). Today I saw occasions where the installation of fusiondirectory froze after postinst. This happened on a Debian stretch, but after discussing the postinst script with jcristau and hartmans on IRC, I could fix the issue and with this upload present a re-arranged and fixed postinst for fusiondirectory. unblock fusiondirectory/1.2.3-4 -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-2-amd64 (SMP w/4 CPU cores) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled
diff -Nru fusiondirectory-1.2.3/debian/changelog fusiondirectory-1.2.3/debian/changelog --- fusiondirectory-1.2.3/debian/changelog 2019-03-02 09:36:30.000000000 +0100 +++ fusiondirectory-1.2.3/debian/changelog 2019-03-22 15:22:53.000000000 +0100 @@ -1,3 +1,11 @@ +fusiondirectory (1.2.3-4) unstable; urgency=medium + + * debian/fusiondirectory.postinst: + + Move Apache2 logic into configure condition. + + Drop usage of debconf confmodule. (Closes: #925291). + + -- Mike Gabriel <sunwea...@debian.org> Fri, 22 Mar 2019 15:22:53 +0100 + fusiondirectory (1.2.3-3) unstable; urgency=medium * debian/control: diff -Nru fusiondirectory-1.2.3/debian/fusiondirectory.postinst fusiondirectory-1.2.3/debian/fusiondirectory.postinst --- fusiondirectory-1.2.3/debian/fusiondirectory.postinst 2018-08-28 17:12:45.000000000 +0200 +++ fusiondirectory-1.2.3/debian/fusiondirectory.postinst 2019-03-22 15:22:53.000000000 +0100 @@ -5,86 +5,82 @@ set -e -# Source debconf library. -. /usr/share/debconf/confmodule - case "$1" in - configure) - fusiondirectory-setup -y --check-directories --update-cache --update-locales - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - triggered) - fusiondirectory-setup --update-cache --update-locales - exit 0 - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac + configure) + fusiondirectory-setup -y --check-directories --update-cache --update-locales -#DEBHELPER# + # Apache2.2 / drop fusiondirectory.conf from deprecated conf.d + if [ -d /etc/apache2/conf.d ]; then + # Remove FD configuration from conf.d directories, if that still exists... + if [ -L /etc/apache2/conf.d/fusiondirectory.conf ]; then + rm /etc/apache2/conf.d/fusiondirectory.conf + elif [ -f /etc/apache2/conf.d/fusiondirectory.conf ]; then + mv /etc/apache2/conf.d/fusiondirectory.conf /etc/apache2/conf.d/fusiondirectory.conf.obsolete + fi + fi + + # conf-available + if [ -d /etc/apache2/conf-available ] ; then + + # Copy FusionDirectory configuration to conf-available directory /etc/apache2/conf-available + if [ ! -L /etc/apache2/conf-available/fusiondirectory.conf ]; then + + # Remove old instances of this file + if [ -f /etc/apache2/conf-available/fusiondirectory.conf ]; then + echo "Found old fusiondirectory apache configuration in /etc/apache2/conf-available - moving it to fusiondirectory.conf.orig..." + echo "Please check for changes in /etc/fusiondirectory/fusiondirectory-apache.conf if you modified this file!" + mv /etc/apache2/conf-available/fusiondirectory.conf /etc/apache2/conf-available/fusiondirectory.conf.orig + fi + + echo "Making /fusiondirectory available in /etc/apache2/conf-available" + + # Add FusionDirectory include file + ln -s /etc/fusiondirectory/fusiondirectory-apache.conf /etc/apache2/conf-available/fusiondirectory.conf + fi + + if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then + . /usr/share/apache2/apache2-maintscript-helper + apache2_invoke enconf fusiondirectory + apache2_invoke enconf javascript-common + apache2_invoke enmod headers + fi + + # Finally restart servers + if [ -x "$(which apache2ctl)" ]; then + if [ -x "$(which invoke-rc.d)" ]; then + invoke-rc.d apache2 reload + else + /etc/init.d/apache2 reload + fi + fi + fi + + # Remove old instances of the fusiondirectory.conf template + if [ -f /var/cache/fusiondirectory/template/fusiondirectory.conf ]; then + #link the template to /var/cache/fusiondirectory/template from usr + rm -f /var/cache/fusiondirectory/template/fusiondirectory.conf + ln -s /usr/share/doc/fusiondirectory/fusiondirectory.conf /var/cache/fusiondirectory/template/fusiondirectory.conf + else + #link the configuration template to /var/cache/fusiondirectory/template from /usr/share/doc/fusiondirectory/ + ln -s /usr/share/doc/fusiondirectory/fusiondirectory.conf /var/cache/fusiondirectory/template/fusiondirectory.conf + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + triggered) + fusiondirectory-setup --update-cache --update-locales + exit 0 + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; -# Apache2.2 / drop fusiondirectory.conf from deprecated conf.d -if [ -d /etc/apache2/conf.d ]; then +esac - # Remove FD configuration from conf.d directories, if that still exists... - if [ -L /etc/apache2/conf.d/fusiondirectory.conf ]; then - rm /etc/apache2/conf.d/fusiondirectory.conf - elif [ -f /etc/apache2/conf.d/fusiondirectory.conf ]; then - mv /etc/apache2/conf.d/fusiondirectory.conf /etc/apache2/conf.d/fusiondirectory.conf.obsolete - fi - -fi - -# conf-available -if [ -d /etc/apache2/conf-available ] ; then - - # Copy FusionDirectory configuration to conf-available directory /etc/apache2/conf-available - if [ ! -L /etc/apache2/conf-available/fusiondirectory.conf ]; then - - # Remove old instances of this file - if [ -f /etc/apache2/conf-available/fusiondirectory.conf ]; then - echo "Found old fusiondirectory apache configuration in /etc/apache2/conf-available - moving it to fusiondirectory.conf.orig..." - echo "Please check for changes in /etc/fusiondirectory/fusiondirectory-apache.conf if you modified this file!" - mv /etc/apache2/conf-available/fusiondirectory.conf /etc/apache2/conf-available/fusiondirectory.conf.orig - fi - - echo "Making /fusiondirectory available in /etc/apache2/conf-available" - - # Add FusionDirectory include file - ln -s /etc/fusiondirectory/fusiondirectory-apache.conf /etc/apache2/conf-available/fusiondirectory.conf - fi - - if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then - . /usr/share/apache2/apache2-maintscript-helper - apache2_invoke enconf fusiondirectory - apache2_invoke enconf javascript-common - apache2_invoke enmod headers - fi - - # Finally restart servers - if [ -x "$(which apache2ctl)" ]; then - if [ -x "$(which invoke-rc.d)" ]; then - invoke-rc.d apache2 reload - else - /etc/init.d/apache2 reload - fi - fi -fi - -# Remove old instances of the fusiondirectory.conf template -if [ -f /var/cache/fusiondirectory/template/fusiondirectory.conf ]; then - #link the template to /var/cache/fusiondirectory/template from usr - rm -f /var/cache/fusiondirectory/template/fusiondirectory.conf - ln -s /usr/share/doc/fusiondirectory/fusiondirectory.conf /var/cache/fusiondirectory/template/fusiondirectory.conf -else - #link the configuration template to /var/cache/fusiondirectory/template from /usr/share/doc/fusiondirectory/ - ln -s /usr/share/doc/fusiondirectory/fusiondirectory.conf /var/cache/fusiondirectory/template/fusiondirectory.conf -fi +#DEBHELPER# exit 0