aboutsummaryrefslogtreecommitdiffstats
path: root/java/jdk16/files/pkg-install.in
blob: 0521efe5356376feb4f918c190b711dc1a486986 (plain) (blame)
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
#!/bin/sh

# System preference location
JRE_HOME=%%JRE_HOME%%

# Post-install actions
if [ "$2" = "POST-INSTALL" ]; then
    # Set up system preferences
    if [ ! -d "${JRE_HOME}/.systemPrefs" ] ; then
        mkdir -m 755 "${JRE_HOME}/.systemPrefs"
    fi
    if [ ! -f "${JRE_HOME}/.systemPrefs/.system.lock" ] ; then
        touch "${JRE_HOME}/.systemPrefs/.system.lock"
        chmod 644 "${JRE_HOME}/.systemPrefs/.system.lock"
    fi
    if [ ! -f "${JRE_HOME}/.systemPrefs/.systemRootModFile" ] ; then
        touch "${JRE_HOME}/.systemPrefs/.systemRootModFile"
        chmod 644 "${JRE_HOME}/.systemPrefs/.systemRootModFile"
    fi

    # Install the plugin
    BROWSERPLUGINDIR="%%X11BASE%%/lib/browser_plugins"
    JAVAPLUGINDIR="${JRE_HOME}/plugin/%%ARCH%%/ns7"
    PLUGIN=libjavaplugin_oji.so

    # Check if the browser plugin exists
    if [ ! -e "${JAVAPLUGINDIR}/${PLUGIN}" ]; then
        exit 0
    fi

    # Check if the plugin directory exists.
    if [ ! -d "${BROWSERPLUGINDIR}" ]; then
        exit 0
    fi

    # Check if the browser plugin currently exists
    if [ ! -e "${BROWSERPLUGINDIR}/${PLUGIN}" ]; then
        # Create symbolic link
        ln -sf "${JAVAPLUGINDIR}/${PLUGIN}" \
            "${BROWSERPLUGINDIR}/${PLUGIN}"
        exit 0
    fi

    # If the browser plugin exists and is a symlink, but the link
    # doesn't exist, then overwrite with our plugin.
    if [ -L "${BROWSERPLUGINDIR}/${PLUGIN}" ]; then
        # Check if the linked to file exists.
        if [ ! -e `ls -l "${BROWSERPLUGINDIR}/${PLUGIN}" 2>/dev/null | awk '/->/{print $NF;exit 0}END{exit 1}'` ]; then
            ln -sf "${JAVAPLUGINDIR}/${PLUGIN}" \
                "${BROWSERPLUGINDIR}/${PLUGIN}"
            exit 0
        fi
    fi

    exit 0
fi