#! /bin/sh -e syssite=/usr/lib/@PVER@/site-packages localsite=/usr/local/lib/@PVER@/dist-packages remove_bytecode() { pkg=$1 max=$(LC_ALL=C xargs --show-limits < /dev/null 2>&1 | awk '/^Maximum/ {print $NF / 4}') dpkg -L $pkg \ | awk -F/ 'BEGIN {OFS="/"} /\.py$/ {$NF=sprintf("__pycache__/%s.*.py[co]", substr($NF,1,length($NF)-3)); print}' \ | xargs --max-chars="$max" echo \ | while read files; do rm -f $files; done find /usr/lib/python3 /usr/lib/@PVER@ -name dist-packages -prune -o -name __pycache__ -empty -print \ | xargs -r rm -rf } case "$1" in remove) if [ "$DEBIAN_FRONTEND" != noninteractive ]; then echo "Unlinking and removing bytecode for runtime @PVER@" fi for hook in /usr/share/python3/runtime.d/*.rtremove; do [ -x $hook ] || continue $hook rtremove @PVER@ || continue done remove_bytecode @PVER@-minimal if which update-binfmts >/dev/null; then update-binfmts --package @PVER@ --remove @PVER@ /usr/bin/@PVER@ fi if [ -h $syssite ]; then rm -f $syssite fi [ -d $localsite ] && rmdir $localsite 2>/dev/null || true [ -d $(dirname $localsite) ] && rmdir $(dirname $localsite) 2>/dev/null || true ;; upgrade) remove_bytecode @PVER@-minimal ;; deconfigure) ;; failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 exit 1 ;; esac #DEBHELPER#