File: libPVER-stdlib.prerm.in

package info (click to toggle)
python3.13 3.13.6-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 121,256 kB
  • sloc: python: 703,743; ansic: 653,888; xml: 31,250; sh: 5,844; cpp: 4,326; makefile: 1,981; objc: 787; lisp: 502; javascript: 213; asm: 75; csh: 12
file content (43 lines) | stat: -rw-r--r-- 1,186 bytes parent folder | download | duplicates (3)
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
#! /bin/sh

set -e

remove_bytecode()
{
    pkg=$1
    max=$(LANG=C LC_ALL=C xargs --show-limits < /dev/null 2>&1 | awk '/Maximum length/ {print int($NF / 4)}')
    LC_ALL=C.UTF8 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
    # source and bytecode filename mismatch
    rm -f /usr/lib/@PVER@/__pycache__/__phello__.cpython-*.py*
    find /usr/lib/python3 /usr/lib/@PVER@ \
	\( -name dist-packages -prune \) -o \
	\( -name __pycache__ -type d -empty -print \) \
	| xargs -r rm -rf
}

case "$1" in
    remove)
	pc=$(LC_ALL=C.UTF8 dpkg-query -f '${db:Status-Abbrev} ${binary:Package}\n' -W lib@PVER@-stdlib \
	     | grep -v '^.n' | wc -l)
	if [ "$pc" -le 1 ]; then
	    remove_bytecode lib@PVER@-stdlib@HOST_QUAL@
	fi
        ;;
    upgrade)
	remove_bytecode lib@PVER@-stdlib@HOST_QUAL@
	# byte compilation in @PVER@ postinst, strict dependency
        ;;
    deconfigure)
        ;;
    failed-upgrade)
        ;;
    *)
        echo "prerm called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

#DEBHELPER#