aboutsummaryrefslogtreecommitdiff
path: root/java/jdk16/files/pkg-install.in
blob: 5868aca50c32f07e7305afcf8e10c76cb5bc676e (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
57
#!/bin/sh
# $FreeBSD$

# 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