postinst is in openjdk-6-jre-headless 6b24-1.11.1-4ubuntu2.
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  | #!/bin/sh
set -e
multiarch=x86_64-linux-gnu
priority=1061
basedir=/usr/lib/jvm/java-6-openjdk-amd64
mandir=$basedir/jre/man
srcext=1.gz
dstext=1.gz
jre_tools='java keytool pack200 rmid rmiregistry unpack200 orbd servertool tnameserv'
case "$1" in
configure)
    # fail early.  java currently uses tricks to find its own shared
    # libraries depending on the path of the binary. Will be changed
    # in OpenJDK7
    if ! mountpoint -q /proc; then
	echo >&2 "the java command requires a mounted proc fs (/proc)."
	exit 1
    fi
    [ -d /etc/.java ] || mkdir -m 755 /etc/.java
    [ -d /etc/.java/.systemPrefs ] || mkdir -m 755 /etc/.java/.systemPrefs
    if [ ! -f /etc/.java/.systemPrefs/.system.lock ]; then
	touch /etc/.java/.systemPrefs/.system.lock
	chmod 644 /etc/.java/.systemPrefs/.system.lock
    fi
    if [ ! -f /etc/.java/.systemPrefs/.systemRootModFile ]; then
	touch /etc/.java/.systemPrefs/.systemRootModFile
	chmod 644 /etc/.java/.systemPrefs/.systemRootModFile
    fi
    if [ -z "$2" ]; then
	update_alternatives=y
    fi
    if [ -n "$multiarch" ] && [ -n "$2" ]; then
	for i in $jre_tools; do
	    if [ -z "$(update-alternatives --list $i 2>/dev/null | grep ^$basedir/)" ]; then
		update_alternatives=y
		break
	    fi
	done
    fi
    if [ "$update_alternatives" = y ]; then
    if [ -n "$multiarch" ] && [ "$DPKG_MAINTSCRIPT_ARCH" != $(dpkg --print-architecture) ]; then
	priority=$(expr $priority - 1)
    fi
    for i in $jre_tools; do
	unset slave1 slave2 || true
        if [ -e $mandir/man1/$i.$srcext ]; then
	    slave1="--slave \
		/usr/share/man/man1/$i.$dstext \
                $i.$dstext \
                $mandir/man1/$i.$srcext"
	fi
	# disabled
        if false && [ -e $mandir/ja/man1/$i.$srcext ]; then
	    slave2="--slave \
		/usr/share/man/ja/man1/$i.$dstext \
                ${i}_ja.$dstext \
                $mandir/ja/man1/$i.$srcext"
	fi
        update-alternatives \
            --install \
            /usr/bin/$i \
            $i \
            $basedir/jre/bin/$i \
            $priority \
	    $slave1 $slave2
    done
    update-alternatives \
	--install /usr/bin/jexec jexec $basedir/jre/lib/jexec $priority \
	--slave \
	    /usr/share/binfmts/jar \
	    jexec-binfmt \
	    $basedir/jre/lib/jar.binfmt
    fi # update alternatives
    if [ -n "$multiarch" ] && [ -n "$2" ] && dpkg --compare-versions "$2" lt 6b23~pre9-1~; then
	for d in cmm; do
	    if [ -d $basedir/jre/lib/$d ] && [ ! -h $basedir/jre/lib/$d ]; then
		rm -rf $basedir/jre/lib/$d
		ln -s ../../../java-6-openjdk-common/jre/lib/$d $basedir/jre/lib/$d
	    fi
	done
    fi
    # register binfmt; ignore errors, the alternative may already be
    # registered by another JRE.
    if which update-binfmts >/dev/null && [ -r /usr/share/binfmts/jar ]; then
        update-binfmts --package openjdk-6 --import jar || true
    fi
    # activate class data sharing
    case amd64 in i386|sparc)
	rm -f $basedir/jre/lib/amd64/client/classes.jsa
	log=$(tempfile)
	if ! $basedir/bin/java -client -Xshare:dump -XX:PermSize=128m > $log; then
	    cat >&2 $log
	    rm -f $log
	    # this may fail on some machines/configurations, just ignore it.
	    echo >&2 "ignoring dump failure"
	    #exit 1
	fi
	rm -f $log
    esac
    ;;
esac
exit 0
 |