postinst is in firebird2.5-server-common 2.5.4.26856.ds4-1build1.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | #!/bin/sh
# postinst script for firebird2.5-server-common
set -e
#. /usr/share/debconf/confmodule
set -u
if [ -n "${DEBIAN_FIREBIRD_DEBUG:-}" ]; then
set -x
fi
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
#
# quoting from the policy:
# Any necessary prompting should almost always be confined to the
# post-installation script, and should be protected with a conditional
# so that unnecessary prompting doesn't happen if a package's
# installation fails and the `postinst' is called with `abort-upgrade',
# `abort-remove' or `abort-deconfigure'.
adduser_param() {
local PARAM=$1
local DEFAULT=$2
VALUE=`grep "^$PARAM[[:space:]]*=" /etc/adduser.conf | sed "s/^$PARAM[[:space:]]*=[[:space:]]*//"` || VALUE=
[ -n "$VALUE" ] || VALUE=$DEFAULT
echo $VALUE
}
fix_firebird_user_shell() {
# check user exists
ENTRY=`getent passwd firebird` || return 0
# check description is the default
[ "`echo $ENTRY|cut -d: -f5`" = 'Firebird Database Administator,,,' ] \
|| return 0
# check home is the default
[ "`echo $ENTRY|cut -d: -f6`" = '/var/lib/firebird' ] \
|| return 0
# check shell is the default
[ "`echo $ENTRY|cut -d: -f7`" = '/bin/bash' ] || return 0
FIRST_SYSTEM_UID=`adduser_param FIRST_SYSTEM_UID 100`
LAST_SYSTEM_UID=`adduser_param LAST_SYSTEM_UID 999`
# check UID number is in the system range
NUM=`echo $ENTRY|cut -d: -f3`
[ $NUM -ge $FIRST_SYSTEM_UID ] && [ $NUM -le $LAST_SYSTEM_UID ] \
|| return 0
chsh -s /bin/false firebird
}
move_log_files() {
find /var/log -maxdepth 1 -name 'firebird2.5.log*' \
-exec mv --backup=numbered '{}' /var/log/firebird/ \;
}
# fix badly created firebird user on upgrades from before 2.5.2.26540.ds4-14
# also move the log files from /var/log to /var/log/firebird
if [ "$1" = 'configure' ] \
&& [ -n "${2:-}" ] \
&& dpkg --compare-versions "$2" lt "2.5.2.26540.ds4-14~"; then
fix_firebird_user_shell
move_log_files
fi
exit 0
# vi: set sw=4 ts=8 filetype=sh sts=4 :
|