diff options
author | ponce <matteo.bernardini@sns.it> | 2010-12-09 10:29:01 -0600 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2010-12-09 10:29:01 -0600 |
commit | c8cbc6a05cd2c057761c473574aefff409751c4c (patch) | |
tree | 7d7e44b78e7c3d27d22f5e9eb5dd70de34583bd3 /network/freenx/freenx.SlackBuild | |
parent | 8cb50d13eaa0a31273698f99bd5f668cb75edd66 (diff) |
network/freenx: Added (Free implementation of the NX Server)
Thanks to Eric Hameleers (alienBOB) for the original script
on which this one is based.
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
Diffstat (limited to 'network/freenx/freenx.SlackBuild')
-rw-r--r-- | network/freenx/freenx.SlackBuild | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/network/freenx/freenx.SlackBuild b/network/freenx/freenx.SlackBuild new file mode 100644 index 0000000000000..99d62a49bab4d --- /dev/null +++ b/network/freenx/freenx.SlackBuild @@ -0,0 +1,132 @@ +#!/bin/sh +# $Id: freenx.SlackBuild,v 1.10 2009/01/27 20:22:26 root Exp root $ +# Copyright (c) 2008, 2009 Eric Hameleers, Eindhoven, The Netherlands +# 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. + +# 24/sep/2010 by ponce <matteo.bernardini@sns.it> +# * ported to SBo. + +PRGNAM=freenx +VERSION=${VERSION:-0.7.3} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} +CWD=$(pwd) + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +DOCS="AUTHORS COPYING ChangeLog CONTRIB nxcheckload.sample nxacl.sample \ + $CWD/nomachine.id_dsa.key" + +bailout() { + printf "\n\tYou must have an \"nx\" user and group to run this script.\n" + printf "\tSee $(pwd)/preinstall.sh for details (or just execute it).\n\n" + exit 1 +} + +if ! getent group nx 1>/dev/null ; then + bailout +elif ! getent passwd nx 1>/dev/null ; then + bailout +fi + +set -e + +mkdir -p $TMP/tmp-$PRGNAM $PKG $OUTPUT +rm -rf $TMP/tmp-$PRGNAM/* $PKG/* + +cd $TMP/tmp-$PRGNAM +tar xvf $CWD/${PRGNAM}-server-${VERSION}.tar.gz +cd ${PRGNAM}-server-${VERSION} +chown -R root:root . +chmod -R u+w,go+r-w,a-s . + +patch -p1 < $CWD/patches/authkeys.patch +patch -p1 < $CWD/patches/netcat.patch +patch -p1 < $CWD/patches/nxserver_multimedia.diff +patch -p1 < $CWD/patches/nxpaths.diff + +sed -i -e "s#/usr/lib\$#/usr/lib${LIBDIRSUFFIX}#" \ + -e "s#/usr/lib/#/usr/lib${LIBDIRSUFFIX}/#g" \ + $(grep -lr '/usr/lib' *) + +mkdir -p ${PKG}/usr/lib${LIBDIRSUFFIX}/cups/backend +mkdir -p ${PKG}/var/lib/nxserver/db/{closed,running,failed} +mkdir -p ${PKG}/etc/{logrotate.d,nxserver,rc.d} +mkdir -p ${PKG}/usr/bin + +make -C nxserver-helper +cd nxviewer-passwd ; xmkmf ; make World ; cd .. +make -C nxredir install DESTDIR=$PKG + +chmod 0755 ${PKG}/var/lib/nxserver +chmod 0700 ${PKG}/var/lib/nxserver/* +chmod 0700 ${PKG}/var/lib/nxserver/db/* + +install -m 0755 nxserver-helper/nxserver-helper $PKG/usr/bin +install -m 0755 nxviewer-passwd/nxpasswd/nxpasswd $PKG/usr/bin +install -m 0755 \ + nxcups-gethost nxdesktop_helper nxdialog nxkeygen nxloadconfig \ + nxnode nxnode-login nxprint nxserver nxsetup nxviewer_helper \ + $PKG/usr/bin + +install -m 0644 node.conf.sample $PKG/etc/nxserver +cp -a $PKG/etc/nxserver/node.conf.{sample,new} +install -m 0755 init.d/freenx-server $PKG/etc/rc.d/rc.freenx.new + +# Add a logrotate script: +install -m 644 $CWD/freenx.logrotate $PKG/etc/logrotate.d/freenx-server.new + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true +cat $CWD/$(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 {} \; + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |