postinst is in phpmyadmin 4:4.6.6-5.
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 | #!/bin/sh
# postinst script for phpmyadmin
set -e
avahi_install() {
if [ -d /etc/avahi/services/ -a ! -e /etc/avahi/services/phpmyadmin.service -a ! -L /etc/avahi/services/phpmyadmin.service ] ; then
ln -s ../../phpmyadmin/phpmyadmin.service /etc/avahi/services/
fi
}
desktop_install() {
if [ -d /usr/share/applications/ -a ! -e /usr/share/applications/phpmyadmin.desktop -a ! -L /usr/share/applications/phpmyadmin.desktop ] ; then
ln -s /etc/phpmyadmin/phpmyadmin.desktop /usr/share/applications/
fi
}
lighttpd_install() {
if [ ! -f /etc/lighttpd/conf-available/50-phpmyadmin.conf ] ; then
if which lighty-enable-mod >/dev/null 2>&1 ; then
ln -s ../../phpmyadmin/lighttpd.conf /etc/lighttpd/conf-available/50-phpmyadmin.conf
# We also need auth to protect setup.php
lighty-enable-mod phpmyadmin auth fastcgi fastcgi-php
avahi_install
desktop_install
else
echo "Lighttpd not installed, skipping"
fi
fi
}
apache_install() {
mkdir -p /etc/apache2/conf-available
ln -sf ../../phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke enconf phpmyadmin
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
[ -d /etc/apache2/conf.d/ ] && [ ! -L /etc/apache2/conf.d/phpmyadmin.conf ] && ln -s ../conf-available/phpmyadmin.conf /etc/apache2/conf.d/phpmyadmin.conf
fi
avahi_install
desktop_install
}
. /usr/share/debconf/confmodule
. /usr/share/dbconfig-common/dpkg/postinst.mysql
dbc_generate_include_owner="root:www-data"
dbc_generate_include_perms="0640"
dbc_generate_include=php:/etc/phpmyadmin/config-db.php
dbc_go phpmyadmin $@
if [ "$1" = "configure" ]; then
# Generate secret for cookie encryption
if [ ! -f /var/lib/phpmyadmin/blowfish_secret.inc.php ]; then
touch /var/lib/phpmyadmin/blowfish_secret.inc.php
chgrp www-data /var/lib/phpmyadmin/blowfish_secret.inc.php
chmod 640 /var/lib/phpmyadmin/blowfish_secret.inc.php
cat >> /var/lib/phpmyadmin/blowfish_secret.inc.php <<EOT
<?php
\$cfg['blowfish_secret'] = '`cat /dev/urandom | tr -dc 'a-zA-Z0-9~!@#$%^&*_()+}{?></";.,[]=-' | fold -w 32 | head -n 1`';
EOT
fi
db_version 2.0
# The following only on a new install
if [ "$2" = "" ]; then
# Generate an htpasswd file for the web based setup
if [ ! -f /etc/phpmyadmin/htpasswd.setup ]; then
touch /etc/phpmyadmin/htpasswd.setup
chgrp www-data /etc/phpmyadmin/htpasswd.setup
chmod 0640 /etc/phpmyadmin/htpasswd.setup
db_get phpmyadmin/setup-username
setup_username=${RET:-admin}
db_get phpmyadmin/setup-password
if [ -n "$RET" ]; then
setup_password=`perl -le 'print crypt($ARGV[0], join("", map{("a".."z","A".."Z",0..9)[int(rand(62))]}(1..2)))' "$RET"`
else
setup_password="*"
fi
echo "$setup_username:$setup_password" > /etc/phpmyadmin/htpasswd.setup
db_reset phpmyadmin/setup-username || true
db_reset phpmyadmin/setup-password || true
if [ ! -f /var/lib/phpmyadmin/config.inc.php ]; then
touch /var/lib/phpmyadmin/config.inc.php
chgrp www-data /var/lib/phpmyadmin/config.inc.php
chmod 0640 /var/lib/phpmyadmin/config.inc.php
fi
fi
fi
# Fixup permissions
if [ -f /var/lib/phpmyadmin/config.inc.php ]; then
chmod 0640 /var/lib/phpmyadmin/config.inc.php
fi
if ! dpkg-statoverride --list /var/lib/phpmyadmin/tmp >/dev/null; then
chown -R www-data:www-data /var/lib/phpmyadmin/tmp
fi
# Configure Apache
db_get phpmyadmin/reconfigure-webserver
webservers="$RET"
for webserver in $webservers; do
webserver=${webserver%,}
if [ "$webserver" = "lighttpd" ] ; then
lighttpd_install
else
# Need to pass params for apache2-maintscript-helper
apache_install $@
fi
# Reload webserver in any case, configuration might have changed
# Redirection of 3 is needed because Debconf uses it and it might
# be inherited by webserver. See bug #446324.
if [ -f /etc/init.d/$webserver ] ; then
if which invoke-rc.d > /dev/null ; then
if invoke-rc.d $webserver status > /dev/null 2>&1 ; then
invoke-rc.d $webserver reload 3>/dev/null || true
fi
else
if /etc/init.d/$webserver status > /dev/null 2>&1 ; then
/etc/init.d/$webserver reload 3>/dev/null || true
fi
fi
fi
done
fi
exit 0
|