postinst is in apticron 1.1.58ubuntu1.
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 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 | #! /bin/sh
set -e
isDigit() {
test -n "$1" || return 1
string="$1"
while [ "${string#[[:digit:]]}" != "$string" ]; do
string="${string#[[:digit:]]}"
done
[ -z "$string" ] || return 1
}
# Remove cron.daily file which has been installed by old (and bugged)
# apticron versions. (see #587597)
DPKG_MAINTSCRIPT_NAME=${DPKG_MAINTSCRIPT_NAME:-postinst} \
dpkg-maintscript-helper rm_conffile /etc/cron.daily/apticron "1.1.44" apticron -- "$@"
case "$1" in
configure)
. /usr/share/debconf/confmodule
db_get apticron/notification
EMAIL="$RET"
if [ ! -d /etc/apticron/ ] ; then
mkdir /etc/apticron
fi
# Move the old timestamp file
tsfile_new='/var/lib/apticron/cron_run'
tsfile_old='/var/lib/misc/apticron.cron'
if [ -f "$tsfile_old" ] ; then
if [ ! -e "$tsfile_new" ] ; then
mv "$tsfile_old" "$tsfile_new"
else
rm -f "$tsfile_old"
fi
fi
tmpfile="$( mktemp -t apticron.conf.XXXXXXXXXX )"
chmod 0644 "$tmpfile"
cat <<EOF > "$tmpfile"
# apticron.conf
#
# set EMAIL to a space separated list of addresses which will be notified of
# impending updates
#
EMAIL="$EMAIL"
#
# Set DIFF_ONLY to "1" to only output the difference of the current run
# compared to the last run (ie. only new upgrades since the last run). If there
# are no differences, no output/email will be generated. By default, apticron
# will output everything that needs to be upgraded.
#
# DIFF_ONLY="1"
#
# Set LISTCHANGES_PROFILE if you would like apticron to invoke apt-listchanges
# with the --profile option. You should add a corresponding profile to
# /etc/apt/listchanges.conf
#
# LISTCHANGES_PROFILE="apticron"
#
# From hostname manpage: "Displays all FQDNs of the machine. This option
# enumerates all configured network addresses on all configured network inter‐
# faces, and translates them to DNS domain names. Addresses that cannot be
# translated (i.e. because they do not have an appro‐ priate reverse DNS
# entry) are skipped. Note that different addresses may resolve to the same
# name, therefore the output may contain duplicate entries. Do not make any
# assumptions about the order of the output."
#
# ALL_FQDNS="1"
#
# Set SYSTEM if you would like apticron to use something other than the output
# of "hostname -f" for the system name in the mails it generates. This option
# overrides the ALL_FQDNS above.
#
# SYSTEM="foobar.example.com"
#
# Set IPADDRESSNUM if you would like to configure the maximal number of IP
# addresses apticron displays. The default is to display 1 address of each
# family type (inet, inet6), if available.
#
# IPADDRESSNUM="1"
#
# Set IPADDRESSES to a whitespace separated list of reachable addresses for
# this system. By default, apticron will try to work these out using the
# "ip" command
#
# IPADDRESSES="192.0.2.1 2001:db8:1:2:3::1"
#
# Set NOTIFY_HOLDS="0" if you don't want to be notified about new versions of
# packages on hold in your system. The default behavior is downloading and
# listing them as any other package.
#
# NOTIFY_HOLDS="0"
#
# Set NOTIFY_NEW="0" if you don't want to be notified about packages which
# are not installed in your system. Yes, it's possible! There are some issues
# related to systems which have mixed stable/unstable sources. In these cases
# apt-get will consider for example that packages with "Priority:
# required"/"Essential: yes" in unstable but not in stable should be installed,
# so they will be listed in dist-upgrade output. Please take a look at
# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=531002#44
#
# NOTIFY_NEW="0"
#
# Set NOTIFY_NO_UPDATES="0" if you don't want to be notified when there is no
# new versions. Set to 1 could assure you that apticron works well.
#
# NOTIFY_NO_UPDATES="0"
#
# Set CUSTOM_SUBJECT if you want to replace the default subject used in
# the notification e-mails. This may help filtering/sorting client-side e-mail.
# If you want to use internal vars please use single quotes here. Ex:
# \$CUSTOM_SUBJECT='[apticron] \$SYSTEM: \$NUM_PACKAGES package update(s)'
#
# CUSTOM_SUBJECT=""
# Set CUSTOM_NO_UPDATES_SUBJECT if you want to replace the default subject used
# in the no update notification e-mails. This may help filtering/sorting
# client-side e-mail.
# If you want to use internal vars please use single quotes here. Ex:
# \$CUSTOM_NO_UPDATES_SUBJECT='[apticron] \$SYSTEM: no updates'
#
# CUSTOM_NO_UPDATES_SUBJECT=""
#
# Set CUSTOM_FROM if you want to replace the default sender by changing the
# 'From:' field used in the notification e-mails. Your default sender will
# be something like `id -un`@`hostname --long`.
#
# CUSTOM_FROM=""
EOF
ucf --debconf-ok --three-way "$tmpfile" /etc/apticron/apticron.conf
rm -f "$tmpfile"
# read time from cron.d job, if any
if [ -f /etc/cron.d/apticron ] ; then
min=$( grep -v '^[[:space:]]*\(\#\|$\)' /etc/cron.d/apticron \
2>/dev/null | {
read min null
isDigit "$min" && echo "$min"
} ) || true
fi
# get random time if cron.d snippet doesn't exist or is malformed
if ! isDigit "$min" ; then
min=$(( $( od -vAn -N2 -tu4 < /dev/urandom ) % 60 ))
fi
tmpfile="$( mktemp -t apticron.crond.XXXXXXXXXX )"
chmod 0644 "$tmpfile"
cat <<EOF >"$tmpfile"
# cron entry for apticron
$min * * * * root if test -x /usr/sbin/apticron; then /usr/sbin/apticron --cron; else true; fi
EOF
ucf --debconf-ok --three-way "$tmpfile" /etc/cron.d/apticron
rm -f "$tmpfile"
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
exit 0
|