Sophie

Sophie

distrib > Arklinux > devel > i586 > media > main > by-pkgid > 1bd2937111827a7737d9640cf46637b8 > scriptlet

freenx-0.7.3-1ark.i586.rpm

PREUN

/bin/sh
if [ $1 = 0 ]
then
	export $(grep ^NX_DIR /usr/bin/nxloadconfig)
	export $(grep ^NX_HOME_DIR /usr/bin/nxloadconfig)
	rm /var/lib/nxserver/db/closed/* > /dev/null 2>&1
	rm /var/lib/nxserver/db/running/* > /dev/null 2>&1
	rm /var/lib/nxserver/db/failed/* > /dev/null 2>&1
	mv -f $NX_HOME_DIR/.ssh/client.id_dsa.key /etc/nxserver/  > /dev/null 2>&1
	mv -f $NX_HOME_DIR/.ssh/server.id_dsa.pub.key /etc/nxserver/  > /dev/null 2>&1
	/sbin/service freenx-server stop
fi

POSTIN

/bin/sh
export $(grep ^NX_DIR /usr/bin/nxloadconfig)
export $(grep ^NX_HOME_DIR /usr/bin/nxloadconfig)
export $(grep ^NX_SESS_DIR /usr/bin/nxloadconfig)
export $(grep ^NX_ETC_DIR /usr/bin/nxloadconfig)
export $(grep ^NX_LOGFILE /usr/bin/nxloadconfig)
export $(grep ^SSH_AUTHORIZED_KEYS /usr/bin/nxloadconfig)
/sbin/service sshd condrestart
touch $NX_ETC_DIR/passwords $NX_ETC_DIR/passwords.orig $NX_LOGFILE
chmod 600 $NX_ETC_DIR/pass* $NX_LOGFILE
if [ ! -e $NX_ETC_DIR/users.id_dsa ]
then
	/usr/bin/ssh-keygen -f $NX_ETC_DIR/users.id_dsa -t dsa -N "" > /dev/null 2>&1
fi
if [ -e $NX_HOME_DIR/.ssh/client.id_dsa.key ] && [ -e $NX_HOME_DIR/.ssh/server.id_dsa.pub.key ]
then
        mv -f $NX_HOME_DIR/.ssh/client.id_dsa.key $NX_ETC_DIR/client.id_dsa.key
        mv -f $NX_HOME_DIR/.ssh/server.id_dsa.pub.key $NX_ETC_DIR/server.id_dsa.pub.key
fi
if ! { getent passwd | egrep -q "^nx:"; }
then
        /usr/sbin/useradd -r -d $NX_HOME_DIR -s /usr/bin/nxserver nx
        mkdir -p $NX_HOME_DIR/.ssh
fi
if [ ! -e $NX_ETC_DIR/client.id_dsa.key ] || [ ! -e $NX_ETC_DIR/server.id_dsa.pub.key ]
then
	rm -f $NX_ETC_DIR/client.id_dsa.key
	rm -f $NX_ETC_DIR/server.id_dsa.pub.key
	/usr/bin/ssh-keygen -q -t dsa -N '' -f $NX_ETC_DIR/local.id_dsa
	mv $NX_ETC_DIR/local.id_dsa $NX_ETC_DIR/client.id_dsa.key
	mv $NX_ETC_DIR/local.id_dsa.pub $NX_ETC_DIR/server.id_dsa.pub.key
fi
cp -f $NX_ETC_DIR/client.id_dsa.key $NX_HOME_DIR/.ssh/client.id_dsa.key
cp -f $NX_ETC_DIR/server.id_dsa.pub.key $NX_HOME_DIR/.ssh/server.id_dsa.pub.key
chmod 600 $NX_ETC_DIR/client.id_dsa.key $NX_ETC_DIR/server.id_dsa.pub.key\
 $NX_HOME_DIR/.ssh/client.id_dsa.key $NX_HOME_DIR/.ssh/server.id_dsa.pub.key
echo -n "no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command=\"/usr/bin/nxserver\" "\
 > $NX_HOME_DIR/.ssh/authorized_keys2
cat $NX_HOME_DIR/.ssh/server.id_dsa.pub.key >> $NX_HOME_DIR/.ssh/authorized_keys2
chmod 640 $NX_HOME_DIR/.ssh/authorized_keys2
echo -n "127.0.0.1 " > $NX_HOME_DIR/.ssh/known_hosts
cat /etc/ssh/ssh_host_rsa_key.pub >> $NX_HOME_DIR/.ssh/known_hosts
chown -R nx:root /var/lib/nxserver
chown -R nx:root $NX_SESS_DIR
if [ -e /var/lib/nxserver/running ]
then
	mv /var/lib/nxserver/running/* $NX_SESS_DIR/running
	mv /var/lib/nxserver/closed/* $NX_SESS_DIR/closed
	mv /var/lib/nxserver/failed/* $NX_SESS_DIR/failed
	rm -rf /var/lib/nxserver/running
	rm -rf /var/lib/nxserver/closed
	rm -rf /var/lib/nxserver/failed
	chown -R nx:root $NX_SESS_DIR
fi
chown -R nx:root $NX_ETC_DIR
chown -R nx:root $NX_HOME_DIR
chmod -R 700 $NX_HOME_DIR
chown nx:root $NX_LOGFILE
/sbin/chkconfig --add freenx-server
/sbin/service freenx-server start