#!/bin/sh

if [ -n "${PACKAGE_BUILDING}" ]; then
	exit 0
fi

KEYFILE="$PKG_PREFIX/etc/sfs/sfs_host_key"

USER=sfs
GROUP=sfs
UID=71
GID=71
PW=/usr/sbin/pw

SFSDIR=/var/spool/sfs

if [ "$2" = "PRE-INSTALL" ]; then
	echo -n "Checking for group '$GROUP'... "

	if ! ${PW} groupshow $GROUP >/dev/null 2>&1; then
		echo -n "doesn't exist, adding... "
		if ${PW} groupadd $GROUP -g ${GID}; then
			echo "success."
		else
			echo "FAILED!"
			exit 1
		fi
	else
		echo "exists."
	fi

	echo -n "Checking for user '$USER'... "

	if ! ${PW} usershow $USER >/dev/null 2>&1; then
		echo -n "doesn't exist, adding... "
		if ${PW} useradd $USER -u ${UID} -c 'Self-Certifying File System' -d /nonexistent -g $GROUP -s /sbin/nologin -h -; then
			echo "success."
		else
			echo "FAILED!"
			exit 1
		fi
	else
		echo "exists."
	fi
fi

if [ "$2" = "POST-INSTALL" ]; then
	echo -n "Checking for SFS directory ($SFSDIR)... "

	if [ -d "$SFSDIR" ]; then
		echo "already exists."
	else
		echo -n "creating... "
		if mkdir $SFSDIR; then
			echo "success."
		else
			echo "FAILED!"
			exit 1
		fi
	fi

	if ! chmod 750 $SFSDIR; then
		echo "chmod 750 $SFSDIR FAILED!"
		exit 1
	fi

	if ! chown $USER:$GROUP $SFSDIR; then
		echo "chown $USER:$GROUP $SFSDIR FAILED!"
		exit 1
	fi

	echo -n "Checking for SFS host key ($KEYFILE)... "

	if [ -f "$KEYFILE" ]; then
		echo "already exists, not generating."
	else
		echo "doesn't exist, generating."
		echo "Starting sfscd for entropy services."
		$PKG_PREFIX/sbin/sfscd
		echo -n "Sleeping ten seconds to give sfscd time to start up... "
		sleep 10
		echo "done."
		$PKG_PREFIX/bin/sfskey gen -KP -l `uname -n` $KEYFILE
		echo -n "Key generation done, killing sfscd... "
		kill -TERM `cat /var/run/sfscd.pid`
		echo "done."
	fi

	cat $PKG_PREFIX/share/doc/sfs/WELCOME
fi

exit 0
tion value='dependabot/npm_and_yarn/devel/electron4/files/elliptic-6.5.4'>dependabot/npm_and_yarn/devel/electron4/files/elliptic-6.5.4</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/ini-1.3.7'>dependabot/npm_and_yarn/devel/electron4/files/ini-1.3.7</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/lodash-4.17.19'>dependabot/npm_and_yarn/devel/electron4/files/lodash-4.17.19</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/lodash.merge-4.6.2'>dependabot/npm_and_yarn/devel/electron4/files/lodash.merge-4.6.2</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.2'>dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.2</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.3'>dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.3</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/node-fetch-2.6.1'>dependabot/npm_and_yarn/devel/electron4/files/node-fetch-2.6.1</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/serve-10.1.2'>dependabot/npm_and_yarn/devel/electron4/files/serve-10.1.2</option>
<option value='dependabot/npm_and_yarn/devel/electron4/files/y18n-3.2.2'>dependabot/npm_and_yarn/devel/electron4/files/y18n-3.2.2</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.3'>dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.3</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.4'>dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.4</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/ini-1.3.8'>dependabot/npm_and_yarn/devel/electron6/files/ini-1.3.8</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/lodash-4.17.19'>dependabot/npm_and_yarn/devel/electron6/files/lodash-4.17.19</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/lodash.merge-4.6.2'>dependabot/npm_and_yarn/devel/electron6/files/lodash.merge-4.6.2</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/node-fetch-2.6.1'>dependabot/npm_and_yarn/devel/electron6/files/node-fetch-2.6.1</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2'>dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2</option>
<option value='gnome-3.22'>gnome-3.22</option>
<option value='gnome-3.24'>gnome-3.24</option>
<option value='gnome-3.26'>gnome-3.26</option>
<option value='gnome-3.28'>gnome-3.28</option>
<option value='gnome-3.32'>gnome-3.32</option>
<option value='gnome-3.36'>gnome-3.36</option>
<option value='gstreamer'>gstreamer</option>
<option value='gstreamer-1.16'>gstreamer-1.16</option>
<option value='gstreamer0.10-removal' selected='selected'>gstreamer0.10-removal</option>
<option value='main'>main</option>
<option value='master'>master</option>
<option value='mate-1.16'>mate-1.16</option>
<option value='mate-1.18'>mate-1.18</option>
<option value='mate-1.20'>mate-1.20</option>
<option value='mate-1.22'>mate-1.22</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>FreeBSD GNOME current development ports (https://github.com/freebsd/freebsd-ports-gnome)</td><td class='sub right'></td></tr></table>
<table class='tabs'><tr><td>
<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/about/?h=gstreamer0.10-removal'>about</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/?h=gstreamer0.10-removal'>summary</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/refs/?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>refs</a><a class='active' href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net/adns/Makefile?h=gstreamer0.10-removal'>log</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/tree/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>tree</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>commit</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/diff/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>diff</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/stats/net/adns/Makefile?h=gstreamer0.10-removal'>stats</a></td><td class='form'><form class='right' method='get' action='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net/adns/Makefile'>
<input type='hidden' name='h' value='gstreamer0.10-removal'/><input type='hidden' name='id' value='5aefa89a77c378a5e6935f345f10afaaaa17d798'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>root</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>net</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net/adns?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>adns</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798'>Makefile</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th></th><th class='left'>Commit message (<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=5aefa89a77c378a5e6935f345f10afaaaa17d798&amp;showmsg=1'>Expand</a>)</th><th class='left'>Author</th><th class='left'>Age</th><th class='left'>Files</th><th class='left'>Lines</th></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=12d9c087141a76967c82637f2e19b2c6eb49e73b'>Update to version 1.0</a></td><td>ade</td><td><span title='2000-09-19 07:38:51 +0800'>2000-09-19</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+6</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=3edb13972140be391bcbba775030ae304f9a847d'>Rename INSTALLS_SHLIBS to INSTALLS_SHLIB.  (There was a typo in the</a></td><td>asami</td><td><span title='2000-06-17 05:52:40 +0800'>2000-06-17</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=df3a76d24b6e8ffed73c8b42a24ca26a8561dfea'>Fix MASSIVE typo INSTALL_SHLIBS --&gt; INSTALLS_SHLIBS, which occured because I</a></td><td>sobomax</td><td><span title='2000-06-16 16:19:52 +0800'>2000-06-16</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=64186dbb7c798d759f09f85b088edf5765605aa5'>Second round of INSTALL_SHLIBS=yes fixes.</a></td><td>sobomax</td><td><span title='2000-06-16 01:12:51 +0800'>2000-06-16</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=c0f6e9ef534d506706846763428b373695e5272c'>change header file order</a></td><td>mharo</td><td><span title='2000-04-18 07:30:55 +0800'>2000-04-18</span></td><td>1</td><td><span class='deletions'>-3</span>/<span class='insertions'>+3</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/net/adns/Makefile?h=gstreamer0.10-removal&amp;id=c87133c16a2706e2e31935f0fbb9ad36f415370c'>Update with the new PORTNAME/PORTVERSION variables</a></td><td>cpiazza</td><td><span title='2000-04-10 02:14:07 +0800'>2000-04-10</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+2</span></td></tr>