HEX
Server: nginx/1.24.0
System: Linux nowruzgan 6.8.0-57-generic #59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025 x86_64
User: babak (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /var/lib/dpkg/info/openjdk-21-jre-headless:amd64.postinst
#!/bin/sh

set -e

multiarch=x86_64-linux-gnu
priority=2111
basedir=/usr/lib/jvm/java-21-openjdk-amd64
mandir=$basedir/man
srcext=1.gz
dstext=1.gz
jre_tools='java jpackage keytool rmiregistry'

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 ] && [ $priority -gt 1060 ]; then
	for i in $jre_tools; do
	    oldp=$(update-alternatives --query java | awk -v b=$basedir '/^Alternative:/ && $2~b {p=1} /^Priority:/ && p {print $2; exit}')
	    if [ -n "$oldp" ] && [ "$oldp" -le 1060 ]; 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/bin/$i \
            $priority \
	    $slave1 $slave2
    done
    update-alternatives \
	--install /usr/bin/jexec jexec $basedir/lib/jexec $priority \
	--slave \
	    /usr/share/binfmts/jar \
	    jexec-binfmt \
	    $basedir/lib/jar.binfmt
    fi # update alternatives

    # 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-21 --import jar || true
    fi

    # Now that java is fully registered and configured,
    # call update-ca-certificates-java
    dpkg-trigger update-ca-certificates-java

    ;;

esac



exit 0