File: JB-jre-headless.postinst.in

package info (click to toggle)
openjdk-24 24.0.2%2B12-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 831,900 kB
  • sloc: java: 5,677,020; cpp: 1,323,154; xml: 1,320,524; ansic: 486,889; asm: 405,131; objc: 21,025; sh: 15,221; javascript: 11,049; python: 8,222; makefile: 2,504; perl: 357; awk: 351; sed: 172; pascal: 103; exp: 54; jsp: 24; csh: 3
file content (106 lines) | stat: -rw-r--r-- 2,960 bytes parent folder | download | duplicates (11)
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
#!/bin/sh

set -e

multiarch=@multiarch@
priority=@priority@
basedir=/@basedir@
mandir=$basedir/man
srcext=1.gz
dstext=1.gz
jre_tools='@jre_hl_tools@'

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 @basename@ --import jar || true
    fi

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

    ;;

esac

#DEBHELPER#

exit 0