summaryrefslogtreecommitdiffstats
path: root/freenx
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2008-11-16 00:30:26 +0000
committer Eric Hameleers <alien@slackware.com>2008-11-16 00:30:26 +0000
commit10091fc5a9065f28f098eabc3de3a80c9a29a784 (patch)
treec04f16f9ef5a5cf750b4b010513ca49717752c69 /freenx
parent54754cb5bdcc20085c5b11b2cb583f49bd75cea4 (diff)
downloadasb-10091fc5a9065f28f098eabc3de3a80c9a29a784.tar.gz
asb-10091fc5a9065f28f098eabc3de3a80c9a29a784.tar.xz
Rebase for freenx 0.7.3
Diffstat (limited to 'freenx')
-rw-r--r--freenx/build/authkeys.patch12
-rwxr-xr-xfreenx/build/freenx.SlackBuild398
-rw-r--r--freenx/build/netcat.patch25
3 files changed, 238 insertions, 197 deletions
diff --git a/freenx/build/authkeys.patch b/freenx/build/authkeys.patch
index 06a58a5d..7633cee4 100644
--- a/freenx/build/authkeys.patch
+++ b/freenx/build/authkeys.patch
@@ -1,12 +1,12 @@
-diff -ur freenx-0.4.4.orig/nxloadconfig freenx-0.4.4/nxloadconfig
---- freenx-0.4.4.orig/nxloadconfig 2005-08-06 15:53:27.000000000 +0200
-+++ freenx-0.4.4/nxloadconfig 2005-09-01 21:02:19.000000000 +0200
-@@ -67,7 +67,7 @@
+diff -uarN freenx-server-0.7.3.orig/nxloadconfig freenx-server-0.7.3/nxloadconfig
+--- freenx-server-0.7.3.orig/nxloadconfig 2008-08-22 02:44:43.000000000 +0200
++++ freenx-server-0.7.3/nxloadconfig 2008-11-16 01:28:14.000000000 +0100
+@@ -70,7 +70,7 @@
APPLICATION_LIBRARY_PRELOAD="" #Calculated
# the name of the authorized keys file for ssh
-SSH_AUTHORIZED_KEYS="authorized_keys2"
+SSH_AUTHORIZED_KEYS="authorized_keys"
- #########################################################################
- # Default Values
+ # retest values like xauth, netcat and checks for nxdesktop/nxviewer availability
+ # set to 0 if you are sure, you set the right values
diff --git a/freenx/build/freenx.SlackBuild b/freenx/build/freenx.SlackBuild
index eb615ef8..8484376f 100755
--- a/freenx/build/freenx.SlackBuild
+++ b/freenx/build/freenx.SlackBuild
@@ -1,14 +1,35 @@
#!/bin/sh
+# $Id$
+# Copyright (c) 2008 Eric Hameleers <alien@slackware.com>
+# All rights reserved.
#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
# -----------------------------------------------------------------------------
#
# Slackware SlackBuild script
# ===========================
-# By: Eric Hameleers <alien@sox.homeip.net>
-# For: freenx
-# URL: http://www.nomachine.com/
-# Needs: nx,nc,expect
-# Changelog:
+# By: Eric Hameleers <alien@slackware.com>
+# For: freenx
+# Descr: Free implementation of the NX Server
+# URL: http://freenx.berlios.de/
+# Needs: nx
+# Changelog:
# 0.4.4-1: 15/Aug/2005 by Eric Hameleers <alien@sox.homeip.net>
# * Initial build.
# 0.4.4-2: 18/Aug/2005 by Eric Hameleers <alien@sox.homeip.net>
@@ -27,34 +48,79 @@
# NX server (this is by default an allowed key for this FreeNX
# server package). You usually do not need this keyfile, but it is
# put in the doc directory for reference.
+# 0.7.3-1: 15/Nov/2008 by Eric Hameleers <alien@slackware.com>
+# * Upgrade to NX 3.x and FreeNX 0.7.x
#
-# Run 'sh SlackBuild --cleanup' to build a Slackware package.
+# Run 'sh freenx.SlackBuild --cleanup' to build a Slackware package.
# The package (.tgz) plus descriptive .txt file are created in /tmp .
# Install using 'installpkg'.
#
# -----------------------------------------------------------------------------
-# --- INIT ---
# Set initial variables:
-CWD=`pwd`
-if [ "$TMP" = "" ]; then
- TMP=/tmp
-fi
PRGNAM=freenx
-VERSION=0.4.4
+VERSION=${VERSION:-0.7.3}
ARCH=noarch
-BUILD=5
+BUILD=${BUILD:-1}
+TAG=${TAG:-alien}
-PKG=$TMP/package-$PRGNAM
+DOCS="AUTHORS COPYING ChangeLog CONTRIB nxcheckload.sample nxacl.sample \
+ $SRCDIR/nomachine.id_dsa.key"
-if [ ! -d $TMP/tmp-$PRGNAM ]; then
- mkdir -p $TMP/tmp-$PRGNAM # location to build the source
-fi
-if [ ! -d $PKG ]; then
- mkdir -p $PKG # place for the package to be built
+# Where do we look for sources?
+SRCDIR=$(cd $(dirname $0); pwd)
+
+# Place to build (TMP) package (PKG) and output (OUTPUT) the program:
+TMP=${TMP:-/tmp/build}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# Input URL: http://prdownload.berlios.de/freenx/freenx-server-0.7.3.tar.gz
+SOURCE="$SRCDIR/${PRGNAM}-server-${VERSION}.tar.gz"
+SRCURL="http://download.berlios.de/${PRGNAM}/${PRGNAM}-server-${VERSION}.tar.gz"
+
+##
+## --- with a little luck, you won't have to edit below this point --- ##
+##
+
+# Exit the script on errors:
+set -e
+trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
+# Catch unitialized variables:
+set -u
+P1=${1:-1}
+
+# Create working directories:
+mkdir -p $OUTPUT # place for the package to be saved
+mkdir -p $TMP/tmp-$PRGNAM # location to build the source
+mkdir -p $PKG # place for the package to be built
+rm -rf $PKG/* # always erase old package's contents
+rm -rf $TMP/tmp-$PRGNAM/* # remove the remnants of previous build
+
+# Source file availability:
+if ! [ -f ${SOURCE} ]; then
+ if ! [ "x${SRCURL}" == "x" ]; then
+ # Check if the $SRCDIR is writable at all - if not, download to $OUTPUT
+ [ -w "$SRCDIR" ] || SOURCE="$OUTPUT/$(basename $SOURCE)"
+ echo "Source '$(basename ${SOURCE})' not available yet..."
+ echo "Will download file to $(dirname $SOURCE)"
+ wget -nv -T 20 -O "${SOURCE}" "${SRCURL}" || true
+ if [ $? -ne 0 -o ! -s "${SOURCE}" ]; then
+ echo "Downloading '$(basename ${SOURCE})' failed... aborting the build."
+ mv -f "${SOURCE}" "${SOURCE}".FAIL
+ exit 1
+ fi
+ else
+ echo "File '$(basename ${SOURCE})' not available... aborting the build."
+ exit 1
+ fi
fi
+if [ "$P1" == "--download" ]; then
+ echo "Download complete."
+ exit 0
+fi
# --- PACKAGE BUILDING ---
@@ -62,61 +128,71 @@ echo "++"
echo "|| $PRGNAM-$VERSION"
echo "++"
-rm -rf $PKG/*
-
-cd $PKG
-
-# Explode the package framework:
-if [ -f $CWD/_$PRGNAM.tar.gz ]; then
- explodepkg $CWD/_$PRGNAM.tar.gz
-fi
-
cd $TMP/tmp-$PRGNAM
-
-
-# --- TARBALL EXTRACTION,PATCH,MODIFY ---
-tar -zxvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-
-patch -p1 < $CWD/authkeys.patch
-patch -p1 < $CWD/esddsp.patch
-patch -p1 < $CWD/netcat.patch
-patch -p1 < $CWD/nx150backend.patch
-patch -p1 < $CWD/sessreg.patch
-
-chown -R root.root *
-find . -perm 777 -exec chmod 755 {} \;
-
-
-# --- BUILDING ---
+echo "Extracting the source archive(s) for $PRGNAM..."
+tar -xvf ${SOURCE}
+cd ${PRGNAM}-server-${VERSION}
+cat $CWD/authkeys.patch | patch -p1 --verbose | exit 1
+cat $CWD/netcat.patch | patch -p1 --verbose || exit 1
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
echo Building ...
-
-#
-# Install all the needed stuff to the package dir
-#
-mkdir -p $PKG/usr/bin
-mkdir -p $PKG/etc/nxserver
-mkdir -p $PKG/var/lib/nxserver/db/closed
-mkdir -p $PKG/var/lib/nxserver/db/running
-mkdir -p $PKG/var/lib/nxserver/db/failed
-
-chmod 700 $PKG/var/lib/nxserver
-chmod 700 $PKG/var/lib/nxserver/*
-chmod 700 $PKG/var/lib/nxserver/db/*
-
-cp -a nxclient nxnode nxkeygen nxnode-login nxserver nxprint nxsetup \
- nxloadconfig $PKG/usr/bin/
-(cd $PKG/usr/bin &&
- chmod 755 nxclient nxnode nxkeygen nxnode-login nxserver nxprint \
- nxsetup nxloadconfig
-)
-cp -a node.conf.sample $PKG/etc/nxserver
-chmod 755 $PKG/etc/nxserver/node.conf.sample
-
-
-# --- DOINST.SH SCRIPT ---
-mkdir -p $PKG/install
+cd nxserver-helper
+make
+cd ..
+
+cd nxviewer-passwd
+xmkmf
+make World
+cd ..
+
+cd nxredir
+make
+cd ..
+
+mkdir -p ${PKG}/usr/bin
+mkdir -p ${PKG}/etc/{nxserver,rc.d}
+mkdir -p ${PKG}/var/lib/nxserver/db/{closed,running,failed}
+chmod 700 ${PKG}/var/lib/nxserver
+chmod 700 ${PKG}/var/lib/nxserver/*
+chmod 700 ${PKG}/var/lib/nxserver/db/*
+
+install -m 755 nxserver-helper/nxserver-helper $PKG/usr/bin
+install -m 755 nxviewer-passwd/nxpasswd/nxpasswd $PKG/usr/bin
+install -m 755 nxredir/nxredir $PKG/usr/bin
+
+install -m 755 nxcups-gethost nxdesktop_helper nxdialog nxkeygen nxloadconfig \
+ nxnode nxnode-login nxprint nxserver nxsetup nxviewer_helper \
+ $PKG/usr/bin
+
+install -m 755 node.conf.sample $PKG/etc/nxserver
+cp -a $PKG/etc/nxserver/node.conf.{sample,new}
+install -m 755 init.d/freenx-server $PKG/etc/rc.d/rc.freenx.new
+
+# Add this to the doinst.sh:
+! [ -d $PKG/install ] && mkdir -p $PKG/install
+cat <<EOINS >> $PKG/install/doinst.sh
+# Handle the incoming configuration files:
+config() {
+ for infile in \$1; do
+ NEW="\$infile"
+ OLD="\`dirname \$NEW\`/\`basename \$NEW .new\`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r \$OLD ]; then
+ mv \$NEW \$OLD
+ elif [ "\`cat \$OLD | md5sum\`" = "\`cat \$NEW | md5sum\`" ]; then
+ # toss the redundant copy
+ rm \$NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+ done
+}
+
+config etc/nxserver/node.conf.new
+config etc/rc.d/rc.freenx.new
+
+chroot . <<EOCR 2>/dev/null
cat <<"EEOOTT" > $PKG/install/doinst.sh
export $(grep ^NX_DIR usr/bin/nxloadconfig)
export $(grep ^NX_HOME_DIR usr/bin/nxloadconfig)
@@ -140,143 +216,107 @@ if ! which expect 1>/dev/null 2>/dev/null ; then
echo "WARNING: FreeNX needs the 'expect' program to be installed."
fi
-touch ${NX_ETC_DIR/#\//}/passwords ${NX_ETC_DIR/#\//}/passwords.orig \
- ${NX_LOGFILE/#\//}
-chmod 600 ${NX_ETC_DIR/#\//}/pass* ${NX_LOGFILE/#\//}
+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
- ssh-keygen -f ${NX_ETC_DIR/#\//}/users.id_dsa -t dsa -N "" > /dev/null 2>&1
+if [ ! -e ${NX_ETC_DIR}/users.id_dsa ]; then
+ 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
+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 ! { chroot . getent passwd | egrep -q "^nx:"; }
-then
- chroot . useradd -m -d ${NX_HOME_DIR} -s /usr/bin/nxserver nx
- chroot . passwd -u nx 1>/dev/null
- mkdir -p ${NX_HOME_DIR/#\//}/.ssh
- chmod 700 ${NX_HOME_DIR/#\//}/.ssh
+if ! getent passwd | egrep -q "^nx:"; then
+ useradd -m -d ${NX_HOME_DIR} -s /usr/bin/nxserver nx
+ passwd -u nx 1>/dev/null
+ mkdir -p ${NX_HOME_DIR}/.ssh
+ chmod 700 ${NX_HOME_DIR}/.ssh
fi
-if [ ! -e ${NX_ETC_DIR/#\//}/client.id_dsa.key ] || \
- [ ! -e ${NX_ETC_DIR/#\//}/server.id_dsa.pub.key ]
-then
+if [ ! -e ${NX_ETC_DIR}/client.id_dsa.key ] || \
+ [ ! -e ${NX_ETC_DIR}/server.id_dsa.pub.key ]; then
# We are going to create a new SSH key for the FreeNX server.
# The NX client must import this key into it's configuration to be able to
# connect to the FreeNX server.
# If you're security minded, use this key exclusively, and remove the
- # NoMachine key from ${NX_HOME_DIR/#\//}/.ssh/authorized_keys.
- rm -f ${NX_ETC_DIR/#\//}/client.id_dsa.key
- rm -f ${NX_ETC_DIR/#\//}/server.id_dsa.pub.key
- 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
-
-# Put our fresh key files in place.
-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
-cat ${NX_HOME_DIR/#\//}/.ssh/server.id_dsa.pub.key \
- > ${NX_HOME_DIR/#\//}/.ssh/authorized_keys
-
-chmod 640 ${NX_HOME_DIR/#\//}/.ssh/authorized_keys
-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/#\//}
-
-# Add the Nomachine pubkey to ${NX_HOME_DIR/#\//}/.ssh/authorized_keys
-# This way, any NX client can connect to our FreeNX server without
-# having to import our own FreeNX private key.
-# If you want an "out-of-the-box" experience, leave the NoMachine key in
-# ${NX_HOME_DIR/#\//}/.ssh/authorized_keys. If you're paranoid, remove
-# this pubkey and accept only clients who have our custom FreeNX key.
-cat <<_EOT_ >> ${NX_HOME_DIR/#\//}/.ssh/authorized_keys
+ # NoMachine key from ${NX_HOME_DIR}/.ssh/authorized_keys.
+ rm -f ${NX_ETC_DIR}/client.id_dsa.key
+ rm -f ${NX_ETC_DIR}/server.id_dsa.pub.key
+ 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
+
+ # Put our fresh key files in place.
+ 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_keys
+ cat ${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key \
+ >> ${NX_HOME_DIR}/.ssh/authorized_keys
+ chmod 640 ${NX_HOME_DIR}/.ssh/authorized_keys
+ 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}
+
+ # Add the Nomachine pubkey to ${NX_HOME_DIR}/.ssh/authorized_keys
+ # This way, any NX client can connect to our FreeNX server without
+ # having to import our own FreeNX private key.
+ # If you want an "out-of-the-box" experience, leave the NoMachine key in
+ # ${NX_HOME_DIR}/.ssh/authorized_keys. If you're paranoid, remove
+ # this pubkey and accept only clients who have our custom FreeNX key.
+ cat <<_EOT_ >> ${NX_HOME_DIR}/.ssh/authorized_keys
no-port-forwarding,no-X11-forwarding,no-agent-forwarding,command="/usr/bin/nxserver" ssh-dss AAAAB3NzaC1kc3MAAACBAJe/0DNBePG9dYLWq7cJ0SqyRf1iiZN/IbzrmBvgPTZnBa5FT/0Lcj39sRYt1paAlhchwUmwwIiSZaON5JnJOZ6jKkjWIuJ9MdTGfdvtY1aLwDMpxUVoGwEaKWOyin02IPWYSkDQb6cceuG9NfPulS9iuytdx0zIzqvGqfvudtufAAAAFQCwosRXR2QA8OSgFWSO6+kGrRJKiwAAAIEAjgvVNAYWSrnFD+cghyJbyx60AAjKtxZ0r/Pn9k94Qt2rvQoMnGgt/zU0v/y4hzg+g3JNEmO1PdHh/wDPVOxlZ6Hb5F4IQnENaAZ9uTZiFGqhBO1c8Wwjiq/MFZy3jZaidarLJvVs8EeT4mZcWxwm7nIVD4lRU2wQ2lj4aTPcepMAAACANlgcCuA4wrC+3Cic9CFkqiwO/Rn1vk8dvGuEQqFJ6f6LVfPfRTfaQU7TGVLk2CzY4dasrwxJ1f6FsT8DHTNGnxELPKRuLstGrFY/PR7KeafeFZDf+fJ3mbX5nxrld3wi5titTnX+8s4IKv29HJguPvOK/SI7cjzA+SqNfD7qEo8= root@nettuno
_EOT_
+fi # end "no pre-existing NX ssh keys"
-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
+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/#\//}
+ chown -R nx:root ${NX_SESS_DIR}
fi
-chown -R nx:root ${NX_ETC_DIR/#\//}
-chown -R nx:root ${NX_HOME_DIR/#\//}
-chown nx:root ${NX_LOGFILE/#\//}
-EEOOTT
-# End of generating the install/doinst.sh script.
+chown -R nx:root ${NX_ETC_DIR}
+chown -R nx:root ${NX_HOME_DIR}
+chown nx:root ${NX_LOGFILE}
+EOCR
+EOINS
-# --- DOCUMENTATION ---
-
+# Add documentation:
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-DOCS="AUTHORS COPYING ChangeLog CONTRIB \
- $CWD/README.slackware $CWD/nomachine.id_dsa.key"
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-chmod -R a-w $PKG/usr/doc/$PRGNAM-$VERSION/*
-
-# Compress the man page(s)
-gzip -9f $PKG/usr/man/*/*
-
-# Strip binaries
-( cd $PKG
- find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
- find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-)
-
-
-# --- OWNERSHIP, RIGHTS ---
-
-chmod -R o-w $PKG
-chown root:bin $PKG/usr/bin/* $PKG/usr/sbin/* $PKG/bin/* $PKG/sbin/* \
- $PKG/usr/X11R6/bin/* $PKG/opt/kde/bin/* 2>/dev/null
-
-
-# --- PACKAGE DESCRIPTION ---
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true
+cp -a $SRCDIR/$(basename $0) $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc -type f -exec chmod 644 {} \;
+# Add a package description:
mkdir -p $PKG/install
-cat $CWD/${PRGNAM}.slack-desc > $PKG/install/slack-desc
-if [ -f $CWD/doinst.sh ]; then
- cat $CWD/doinst.sh > $PKG/install/doinst.sh
-fi
-
-
-# --- BUILDING ---
+cat $SRCDIR/slack-desc.$PRGNAM > $PKG/install/slack-desc
# Build the package:
cd $PKG
-makepkg --linkadd y --chown n $TMP/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.tgz \
- 2>&1 | tee $CWD/makepkg-${PRGNAM}.log
-(cd $TMP && md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.tgz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.tgz.md5)
-cat $CWD/${PRGNAM}.slack-desc | grep "^${PRGNAM}" > $TMP/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}.txt
-
-
-# --- CLEANUP ---
+makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.tgz 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+cd $OUTPUT
+md5sum ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.tgz > ${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.tgz.md5
+cd -
+cat $PKG/install/slack-desc | grep "^${PRGNAM}" > $OUTPUT/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txt
# Clean up the extra stuff:
-if [ "$1" = "--cleanup" ]; then
+if [ "$P1" = "--cleanup" ]; then
rm -rf $TMP/tmp-$PRGNAM
rm -rf $PKG
fi
diff --git a/freenx/build/netcat.patch b/freenx/build/netcat.patch
index 26f2f5db..91475d27 100644
--- a/freenx/build/netcat.patch
+++ b/freenx/build/netcat.patch
@@ -1,21 +1,22 @@
-diff -ur freenx-0.4.4.orig/node.conf.sample freenx-0.4.4/node.conf.sample
---- freenx-0.4.4.orig/node.conf.sample 2005-08-02 17:39:32.000000000 +0200
-+++ freenx-0.4.4/node.conf.sample 2005-09-01 20:50:29.000000000 +0200
-@@ -300,6 +300,7 @@
+diff -uarN freenx-server-0.7.3.orig/node.conf.sample freenx-server-0.7.3/node.conf.sample
+--- freenx-server-0.7.3.orig/node.conf.sample 2008-08-22 02:44:43.000000000 +0200
++++ freenx-server-0.7.3/node.conf.sample 2008-11-16 01:26:58.000000000 +0100
+@@ -539,7 +539,7 @@
+ #COMMAND_SMBUMOUNT_CIFS=/sbin/umount.cifs
# The key that contains the name of the complete path of the 'netcat' command.
- #COMMAND_NETCAT=netcat
-+COMMAND_NETCAT=nc
+-#COMMAND_NETCAT=netcat
++#COMMAND_NETCAT=nc
# The key that contains the name of the complete path of the 'ssh' and
# 'ssh-keygen' command.
-diff -ur freenx-0.4.4.orig/nxloadconfig freenx-0.4.4/nxloadconfig
---- freenx-0.4.4.orig/nxloadconfig 2005-08-06 15:53:27.000000000 +0200
-+++ freenx-0.4.4/nxloadconfig 2005-09-01 20:50:56.000000000 +0200
-@@ -153,7 +153,7 @@
- COMMAND_XAUTH=/usr/X11R6/bin/xauth
- COMMAND_SMBMOUNT=smbmount
+diff -uarN freenx-server-0.7.3.orig/nxloadconfig freenx-server-0.7.3/nxloadconfig
+--- freenx-server-0.7.3.orig/nxloadconfig 2008-08-22 02:44:43.000000000 +0200
++++ freenx-server-0.7.3/nxloadconfig 2008-11-16 01:26:18.000000000 +0100
+@@ -195,7 +195,7 @@
COMMAND_SMBUMOUNT=smbumount
+ COMMAND_SMBMOUNT_CIFS=/sbin/mount.cifs
+ COMMAND_SMBUMOUNT_CIFS=/sbin/umount.cifs
-COMMAND_NETCAT=netcat
+COMMAND_NETCAT=nc
COMMAND_SSH=ssh