X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=debian%2Fconfig;fp=debian%2Fconfig;h=93754a0ccb1fbe1dd32c4131930d7adddb506079;hb=06151af93589df942af2745ac3784115c561514d;hp=0000000000000000000000000000000000000000;hpb=e5918b19b1cb2efa40d801c6643ea44dc0eefc4d;p=php5-cn.git diff --git a/debian/config b/debian/config new file mode 100755 index 0000000..93754a0 --- /dev/null +++ b/debian/config @@ -0,0 +1,101 @@ +#!/bin/sh + +set -e + +# Load debconf +. /usr/share/debconf/confmodule + +if [ "$1" != reconfigure ]; then + + php5_done=1 + + for SAPI in apache2 cli; do + db_fget php5-cn/${SAPI} seen + if [ "$RET" != "true" ]; then + php5_done=0 + break + fi + done + + test $php5_done -eq 1 && exit 0 +fi + +PHP5DIR="/etc/php5" + +# phpmemlimit () +# +# Calculate memory size for PHP memory_limit option. +# +phpmemlimit () { + + local memtotal memlimit + memtotal=`awk 'tolower($1) == "memtotal:" { printf("%i", $2/1024); }' /proc/meminfo` + + if [ $memtotal -lt 512 ]; then memlimit=16; fi + if [ $memtotal -ge 512 ]; then memlimit=32; fi + if [ $memtotal -gt 1024 ]; then memlimit=64; fi + + echo $memlimit +} + + +# Check for PHP5 SAPI configuration. +# +for SAPI in apache2 cli; do + + if [ ! -d "$PHP5DIR/$SAPI" ]; then + continue + fi + + ini_diff=0 + ini_file="$PHP5DIR/$SAPI/php.ini" + + phplimit="$(phpmemlimit)M" + + if [ -f "$ini_file" ]; then + + if egrep -q "^[[:space:]]*(upload_max_filesize|post_max_size|memory_limit)[[:space:]]*=" $ini_file; then + + upload_max_filesize=`awk '$1 == "upload_max_filesize" { print $3; exit(0) }' $ini_file` + post_max_size=`awk '$1 == "post_max_size" { print $3; exit(0) }' $ini_file` + memory_limit=`awk '$1 == "memory_limit" { print $3; exit(0) }' $ini_file` + + if [ "$upload_max_filesize" != "256M" ]; then ini_diff=1; fi + if [ "$post_max_size" != "$phplimit" ]; then ini_diff=1; fi + if [ "$memory_limit" != "$phplimit" ]; then ini_diff=1; fi + else + + ini_diff=1 + fi + else + + ini_diff=1 + fi + + if [ $ini_diff -eq 1 ]; then + + # Configurations are not the same - ask user what to do. + test -z "$upload_max_filesize" && upload_max_filesize="2M" + test -z "$post_max_size" && post_max_size="8M" + test -z "$memory_limit" && memory_limit="16M" + + db_title php5-cn - konfiguracija za $(echo ${SAPI} | sed 's/a/A/;s/cli/CLI/') + db_subst php5-cn/${SAPI} ini_file "$ini_file" + + db_subst php5-cn/${SAPI} upload_max_filesize "$upload_max_filesize" + db_subst php5-cn/${SAPI} post_max_size "$post_max_size" + db_subst php5-cn/${SAPI} memory_limit "$memory_limit" + + db_subst php5-cn/${SAPI} new_phplimit "$phplimit" + + db_input critical php5-cn/${SAPI} || true + db_go || true + else + + db_set php5-cn/${SAPI} false || true + db_fset php5-cn/${SAPI} seen true + fi + +done + +exit 0