X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=debian%2Fpostinst;h=9c07c04cdc8b62cc46a6c57ed39c413693997bdd;hb=65b0443e21141dfbc0e3523ad8c69ba7fc5af06a;hp=6d76d60d39ca064986ee80f9e0f37273495313d7;hpb=1b2bd59b9fb3ddc7ce19b3eff34213e6ca3cd51a;p=webalizer-cn.git diff --git a/debian/postinst b/debian/postinst index 6d76d60..9c07c04 100755 --- a/debian/postinst +++ b/debian/postinst @@ -10,12 +10,12 @@ case "$1" in ;; abort-upgrade|abort-remove|abort-deconfigure) - exit 0 + exit 0 ;; *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 0 + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 ;; esac @@ -32,21 +32,61 @@ WDIR="/var/www/webalizer" WHTPASSWD="$WDIR/.htpasswd" WCONF="/etc/webalizer/webalizer.conf" WCONFBAK=`basename $WCONF` + oldreporttitle="usage statistics for" reporttitle="Statistika pristupa za" +customized=0 + + +if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then + . /usr/share/apache2/apache2-maintscript-helper + + webalizer_enable() { + cp_echo "CN: Enabling $PKG configuration for Apache2." + return 0 + } +else + cp_echo "CN: Could not load Apache 2.4 maintainer script helper." + + webalizer_enable() { + return 1 + } +fi + +webalizer_error() { + cp_echo "CN: Error while trying to enable $PKG configuration for Apache2." +} + +mv_conffile() +{ + local oldconffile="$1" + local newconffile="$2" + + rm -f $oldconffile.dpkg-remove + [ -e "$oldconffile" ] || return 0 + + cp_echo "CN: Preserving user changes to $newconffile (renamed from $oldconffile)." + mv -f "$newconffile" "$newconffile.dpkg-new" + mv -f "$oldconffile" "$newconffile" +} +mv_conffile /etc/apache2/conf.d/$PKG.conf \ + /etc/apache2/conf-available/$PKG.conf + if [ -f "$WCONF" ]; then # Backup first. if cp_check_and_backup "$WCONF"; then - cp_echo "CN: Old $WCONF saved as \"/var/backups/$WCONFBAK.bak\"." + cp_echo "CN: Old $WCONF saved as /var/backups/$WCONFBAK.bak." fi # Check for OutputDir temp=`awk 'tolower($1) == "outputdir" { print $2; }' $WCONF | tail -n 1` if [ "$temp" != "$WDIR" ]; then + cp_echo "CN: Found custom OutputDir value: $temp" db_set webalizer/directory "$temp" || true + customized=1 fi # Check for ReportTitle @@ -61,42 +101,40 @@ if [ -f "$WCONF" ]; then fi else cp_echo "CN: Configuration file $WCONF is missing." + customized=1 fi db_stop || true -# Check Apache2 web server configuration and reload Apache2 web server. +# Generate e-mail message with informations (username and password). # -if apache2ctl configtest 2>/dev/null; then - invoke-rc.d apache2 force-reload || true +if [ $customized -eq 0 ]; then + if [ ! -f "$WHTPASSWD" ]; then + passwd="$(makepasswd --chars 8)" + htpasswd -bcm $WHTPASSWD admin $passwd 2> /dev/null + cp_echo "" + cp_echo "CN: Webalizer URL is http://`hostname -f`/stats/" + cp_echo "CN: User: admin" + cp_echo "CN: Password: $passwd" + cp_echo "" + cp_echo "CN: Use \"htpasswd -m $WHTPASSWD admin\" to change it." + else + cp_echo "CN: File $WHTPASSWD already exists." + fi else - # Something is broken. - cp_echo "CN: Your Apache2 configuration is broken." - cp_echo "CN: Please, check the service after the installation finishes!" + cp_echo "CN: Skipping file $WHTPASSWD" fi +#DEBHELPER# -# Generate e-mail message with informations (username and password). -# -if [ ! -f "$WHTPASSWD" ]; then - passwd="$(makepasswd --chars 8)" - htpasswd -bcm $WHTPASSWD admin $passwd 2> /dev/null - cp_echo "" - cp_echo "CN: Webalizer URL is http://`hostname -f`/stats/" - cp_echo "CN: User: admin" - cp_echo "CN: Password: $passwd" - cp_echo "" - cp_echo "CN: Use \"htpasswd -m $WHTPASSWD admin\" to change it." +if ! apache2ctl configtest >/dev/null 2>&1; then + cp_echo "CN: Your Apache2 configuration seems to be broken." + cp_echo "CN: Please, check the service after the installation finishes!" fi # Mail root. # cp_mail "$PKG" -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - -#DEBHELPER# - exit 0