aboutsummaryrefslogtreecommitdiff
path: root/net/dgd/pkg-install
blob: 3af7c3e5da201bb08487bd774552c812ec6f245b (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
# $FreeBSD$

if [ "$2" = "PRE-INSTALL" ]; then
	exit 0
fi

PATH=/bin:/sbin:/usr/bin:/usr/sbin

USER=mud
GROUP=${USER}
UID=97
GID=${UID}

if [ -z "${DATADIR}" ]; then
	DATADIR=${PKG_PREFIX}/share/dgd
fi

if [ ! -d "${DATADIR}" ]; then
	echo -n "Attempting to create ${DATADIR} ..."
	mkdir -p "${DATADIR}"
	echo "done"
fi

if pw groupshow "${GROUP}" 2>/dev/null; then
	echo "Using existing group \"${GROUP}\"."
else
	if pw groupadd "${GROUP}" -g ${GID}; then
		echo "Added group \"${GROUP}\"."
	else
		echo "Adding group \"${GROUP}\" failed..."
		exit 1
	fi
fi

if pw usershow "${USER}" 2>/dev/null; then
	echo "Using existing user \"${USER}\"."
	if pw usermod "${USER}" -d "${DATADIR}"
	then
		echo "Changed home directory of \"${USER}\" to \"${DATADIR}\""
	else
		echo "Changing home directory of \"${USER}\" to \"${DATADIR}\" failed..."
		exit 1
	fi
else
	if pw useradd "${USER}" -u ${UID} -g "${GROUP}" -h - \
		-s "/bin/sh" -d "${DATADIR}" -c "MUD Owner"
	then
		echo "Added user \"${USER}\"."
	else
		echo "Adding user \"${USER}\" failed..."
		exit 1
	fi
fi

chown -R "${USER}:${GROUP}" "${DATADIR}"