| #!/bin/sh -e |
| # This script can be called in the following ways: |
| # |
| # After the package was installed: |
| # <postinst> configure <old-version> |
| # |
| # |
| # If prerm fails during upgrade or fails on failed upgrade: |
| # <old-postinst> abort-upgrade <new-version> |
| # |
| # If prerm fails during removal: |
| # <old-postinst> abort-remove |
| # |
| # If prerm fails during deconfiguration of a package: |
| # <postinst> abort-deconfigure in-favour <new-package> <version> |
| # removing <old-package> <version> |
| # |
| # If prerm fails during replacement due to conflict: |
| # <postinst> abort-remove in-favour <new-package> <version> |
| |
| |
| # Create the database files if they don't already exist |
| create_database() { |
| admindir=${DPKG_ADMINDIR:-/var/lib/dpkg} |
| |
| for file in diversions statoverride status; do |
| if [ ! -f "$admindir/$file" ]; then |
| touch "$admindir/$file" |
| fi |
| done |
| } |
| |
| |
| # Move the info directory from /usr/info to /usr/share/info |
| move_info_directory() { |
| if [ -d /usr/info ] && [ ! -L /usr/info ] \ |
| && [ -f /usr/info/dir ] && [ ! -L /usr/info/dir ] |
| then |
| echo "Moving /usr/info/dir to /usr/share/info/dir ..." |
| mv /usr/info/dir /usr/share/info/dir |
| if [ -f /usr/info/dir.old ]; then |
| mv /usr/info/dir.old /usr/share/info/dir.old |
| fi |
| fi |
| } |
| |
| |
| # Remove the /usr/info symlinks we used to generate |
| remove_info_symlink() { |
| if [ -L /usr/info ]; then |
| echo "Removing /usr/info symlink ..." |
| rm /usr/info |
| elif [ -L /usr/info/dir ]; then |
| echo "Removing /usr/info/dir symlink ..." |
| rm /usr/info/dir |
| fi |
| } |
| |
| # Create log file and set default permissions if possible |
| create_logfile() { |
| logfile=/var/log/dpkg.log |
| touch $logfile |
| chmod 644 $logfile |
| chown root:root $logfile 2>/dev/null || chown 0:0 $logfile |
| } |
| |
| |
| case "$1" in |
| configure) |
| create_database |
| create_logfile |
| |
| move_info_directory |
| remove_info_symlink |
| ;; |
| |
| abort-upgrade|abort-deconfigure|abort-remove) |
| ;; |
| |
| *) |
| echo "$0 called with unknown argument \`$1'" 1>&2 |
| exit 1 |
| ;; |
| esac |
| |
| #DEBHELPER# |
| exit 0 |