--- freenx-0.4.4/nxsetup.unported Fri Feb 3 20:52:09 2006 +++ freenx-0.4.4/nxsetup Fri Dec 30 18:29:50 2005 @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/local/bin/bash # Coypright (c) 2004-2005 by Fabian Franz . # 2005 by Jon Severinsson . @@ -96,7 +96,7 @@ then egrep "^nx:" /etc/passwd >/dev/null else - getent passwd nx >/dev/null + cat /etc/passwd |egrep -q "^nx:" >/dev/null fi } @@ -113,6 +113,16 @@ USERADD_OPTIONS="--system --home $NX_HOME_DIR --shell $PATH_BIN/nxserver" [ -n "$SETUP_GID" ] && USERADD_OPTIONS="--gid $SETUP_GID $USERADD_OPTIONS" adduser $USERADD_OPTIONS nx + + # FreeBSD? + elif [ "$(uname)" = "FreeBSD" ] + then + USERADD_OPTIONS="-d $NX_HOME_DIR -s $PATH_BIN/nxserver" + [ -n "$SETUP_UID" ] && USERADD_OPTIONS="-u $SETUP_UID $USERADD_OPTIONS" + [ -n "$SETUP_GID" ] && USERADD_OPTIONS="-g $SETUP_GID $USERADD_OPTIONS" + [ -n "$SETUP_GID" ] && pw groupadd nx -g $SETUP_GID + pw useradd nx $USERADD_OPTIONS + # no, its a "normal" useradd else USERADD_OPTIONS="-d $NX_HOME_DIR -s $PATH_BIN/nxserver" @@ -142,15 +152,16 @@ install_nx() { set -e - - if [ "$(pidof sshd 2>/dev/null)" = "" ] + + [ -f /var/run/sshd.pid ] && MAYBE_PID=`cat /var/run/sshd.pid 2>/dev/null` + if test -z "$MAYBE_PID" + then echo -n "Starting ssh service ..." # Generate Host keys if they are not available, yet [ -e /etc/ssh/ssh_host_rsa_key ] || $COMMAND_SSH_KEYGEN -q -t rsa -f /etc/ssh/ssh_host_rsa_key -C '' -N '' [ -e /etc/ssh/ssh_host_dsa_key ] || $COMMAND_SSH_KEYGEN -q -t dsa -f /etc/ssh/ssh_host_dsa_key -C '' -N '' - [ -x /etc/init.d/sshd ] && /etc/init.d/sshd start - [ -x /etc/init.d/ssh ] && /etc/init.d/ssh start + [ -x /etc/rc.d/sshd ] && /etc/rc.d/sshd forcestart echo "done" fi @@ -248,13 +259,12 @@ cat /etc/ssh/ssh_host_rsa_key.pub >> $NX_HOME_DIR/.ssh/known_hosts fi - echo "done" - echo -n "Setting up permissions ..." - chown -R nx:root $NX_SESS_DIR - chown -R nx:root $NX_ETC_DIR - chown -R nx:root $NX_HOME_DIR - chown nx:root "$NX_LOGFILE" + chown -R nx:nx $NX_SESS_DIR + chown -R nx:nx $NX_ETC_DIR + chown -R nx:nx $NX_HOME_DIR + chown nx:nx "$NX_LOGFILE" + chmod 0400 $NX_HOME_DIR/.ssh/$SSH_AUTHORIZED_KEYS echo "done" } @@ -268,7 +278,7 @@ then luserdel nx else - userdel nx + pw userdel nx fi echo "done"