postinst is in vdr 2.0.3-1.
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 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 | #! /bin/sh
# postinst script for vdr
#
# see: dh_installdeb(1)
set -e
# 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'.
# source debconf lib
#. /usr/share/debconf/confmodule
case "$1" in
configure)
. /usr/share/debconf/confmodule
# install/move channels.conf
if [ ! -e /var/lib/vdr/channels.conf ]; then
db_get vdr/select_dvb_card
case "$RET" in
Satellite)
cp /usr/share/vdr/channels.conf-examples/channels.conf.sat /var/lib/vdr/channels.conf
chmod 644 /var/lib/vdr/channels.conf
;;
Terrestrial)
cp /usr/share/vdr/channels.conf-examples/channels.conf.terr /var/lib/vdr/channels.conf
chmod 644 /var/lib/vdr/channels.conf
;;
Cable)
cp /usr/share/vdr/channels.conf-examples/channels.conf.cable /var/lib/vdr/channels.conf
chmod 644 /var/lib/vdr/channels.conf
;;
esac
fi
db_get vdr/create_video_dir
if $RET; then
# check if an old directory /var/lib/video exists, and
# symlink it to /var/lib/video.00
if [ -d /var/lib/video ] && [ ! -e /var/lib/video.00 ]; then
ln -s video /var/lib/video.00
fi
# create /var/lib/video.00 if it does not exist
if [ ! -e /var/lib/video.00 ]; then
mkdir /var/lib/video.00
fi
# check if /var/lib/video.00 exists and /var/lib/video is
# missing, then create the symlink /var/lib/video which
# points to /var/lib/video.00
if [ ! -e /var/lib/video ] && [ -e /var/lib/video.00 ]; then
ln -s video.00 /var/lib/video
fi
fi
# ensure that user and group 'vdr' exist
USER=vdr
GROUP=vdr
if ! getent group | grep -q "^$GROUP:" ; then
echo -n "Adding group $GROUP.."
addgroup --quiet --system $GROUP
echo "..done"
fi
if ! getent passwd | grep -q "^$USER:"; then
echo -n "Adding user $USER.."
adduser --system --home /var/lib/vdr --shell /bin/false \
--gecos "VDR user" --no-create-home \
--disabled-login --disabled-password \
--ingroup $GROUP \
$USER
echo "...done"
fi
# put vdr in group video so that it can access the DVB device nodes
adduser $USER video > /dev/null || true
# ensure that vdr's config and recording files are correctly owned
[ -e /var/lib/video ] && chown -R $USER:$GROUP /var/lib/video/
if [ -e /var/lib/vdr ] ; then
chown $USER:$GROUP /var/lib/vdr
chown $USER:$GROUP /var/lib/vdr/* > /dev/null 2>&1 || true
fi
if [ -e /var/cache/vdr ] ; then
chown $USER:$GROUP /var/cache/vdr
chown $USER:$GROUP /var/cache/vdr/* > /dev/null 2>&1|| true
fi
# make /usr/lib/vdr/vdr-shutdown.wrapper setuid/setgid
# (owner root:vdr, mode 6750)
if [ -e /usr/lib/vdr/vdr-shutdown.wrapper ] ; then
chown root:$GROUP /usr/lib/vdr/vdr-shutdown.wrapper && \
chmod 6750 /usr/lib/vdr/vdr-shutdown.wrapper
fi
# Dropped alternatives from old package version
# (This can be dropped at squeeze +2)
update-alternatives --remove vdr /usr/bin/vdr-daemon
update-alternatives --remove vdr /usr/bin/vdr-kbd
update-alternatives --remove vdr /usr/bin/vdr-lirc
update-alternatives --remove vdr /usr/bin/vdr-rcu
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
db_stop
# FIXME
# wait for vdr to properly shutdown before it is restarted again
sleep 5
# Automatically added by dh_installinit
if [ -x "/etc/init.d/vdr" ] || [ -e "/etc/init/vdr.conf" ]; then
if [ ! -e "/etc/init/vdr.conf" ]; then
update-rc.d vdr defaults >/dev/null
fi
invoke-rc.d vdr start || exit $?
fi
# End automatically added section
exit 0
|