X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Ffunctions.sh;h=0ddd941fabbbde73317fb6e41b081581497c86cc;hb=refs%2Ftags%2Fdebian%2F4.0.5;hp=3830ea5dbf36cd8dade2b4e49a8d61707572303d;hpb=ee97dd6a97fcb7ebf5f48f28fabcd18af9fcc408;p=carnet-upgrade.git diff --git a/src/functions.sh b/src/functions.sh index 3830ea5..0ddd941 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -678,10 +678,12 @@ upgrade_apache2 () { upgrade_amavis () { local conf - # remove init script diversion - if [ -L /etc/init.d/amavis -a -f /etc/init.d/amavis.amavisd-new ]; then - rm -vf /etc/init.d/amavis - dpkg-divert --quiet --remove /etc/init.d/amavis + # remove init script diversion before upgrade + if pkg amavisd-cn lt 3:2.4.2-4; then + if [ -L /etc/init.d/amavis -a -f /etc/init.d/amavis.amavisd-new ]; then + rm -vf /etc/init.d/amavis + dpkg-divert --remove /etc/init.d/amavis + fi fi # move old config aside @@ -699,6 +701,11 @@ upgrade_amavis () { 's/^\(clamd.*\)5.clamav.log$/\14\tsocket/g' \ /etc/init.d/amavisd-cn || true + # check if link got lost + if pkg amavisd-cn && [ ! -L /etc/init.d/amavis ]; then + apt-get install --reinstall --yes amavisd-cn + fi + # start new packages /etc/init.d/amavis restart } @@ -863,9 +870,9 @@ free_space() { download_size() { local size size=$(LC_ALL=C apt-get --yes --print-uris "$@" \ - | sed -n '/^Need to get / {s///; s/B\/.*//; p}') + | sed -n '/^Need to get / {s///; s/B.*//; p}') - size_to_mb $size + size_to_mb "${size}B" } installed_size() { @@ -874,7 +881,7 @@ installed_size() { size=$(apt-cache show $package \ | awk '$1 == "Installed-Size:" {print $2; exit}') - size_to_mb "${size}k" + size_to_mb "${size}kB" } size_to_mb() { @@ -884,16 +891,16 @@ size_to_mb() { size=0; fi - if [ "${size%k}" != "$size" ]; then - size=$(round ${size%k}) + if [ "${size%kB}" != "$size" ]; then + size=$(round ${size%kB}) size=$(($size/1024+1)) - elif [ "${size%M}" != "$size" ]; then - size=$(round ${size%M}) - elif [ "${size%G}" != "$size" ]; then - size=$(round ${size%G}) + elif [ "${size%MB}" != "$size" ]; then + size=$(round ${size%MB}) + elif [ "${size%GB}" != "$size" ]; then + size=$(round ${size%GB}) size=$(($size*1024)) - elif [ "${size%[0-9]}" != "$size" ]; then - size=$(round $size) + elif [ "${size%[0-9]B}" != "$size" ]; then + size=$(round ${size%B}) size=$(($size/1024/1024+1)) else log "unrecognized size unit: $size"