blob: 55a4cf6bc94a649b75b9239b4ee4a15fef229b06 (
plain) (
tree)
|
|
#!/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
|