diff options
author | Stuart Herbert <stuart@gentoo.org> | 2004-08-30 21:25:50 +0000 |
---|---|---|
committer | Stuart Herbert <stuart@gentoo.org> | 2004-08-30 21:25:50 +0000 |
commit | 20039782e2fd69a4f5f95cda28121292b830e3d9 (patch) | |
tree | 94223561d4856c7ea53d6edcc42031f31fdce503 /eclass/nxserver-1.4.eclass | |
parent | Marked ~amd64. (diff) | |
download | historical-20039782e2fd69a4f5f95cda28121292b830e3d9.tar.gz historical-20039782e2fd69a4f5f95cda28121292b830e3d9.tar.bz2 historical-20039782e2fd69a4f5f95cda28121292b830e3d9.zip |
Version bump
Diffstat (limited to 'eclass/nxserver-1.4.eclass')
-rw-r--r-- | eclass/nxserver-1.4.eclass | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/eclass/nxserver-1.4.eclass b/eclass/nxserver-1.4.eclass new file mode 100644 index 000000000000..bf14ce1138c9 --- /dev/null +++ b/eclass/nxserver-1.4.eclass @@ -0,0 +1,145 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/eclass/nxserver-1.4.eclass,v 1.1 2004/08/30 21:25:50 stuart Exp $ +# +# eclass for handling the different nxserver binaries available +# from nomachine's website +# +# now handles freenx as well + +inherit rpm eutils + +ECLASS="nxserver" +INHERITED="$INHERITED $ECLASS" + +HOMEPAGE="http://www.nomachine.com/" +IUSE="" +LICENSE="nomachine" +SLOT="0" +KEYWORDS="~x86 -ppc -sparc -alpha -mips" +RESTRICT="nomirror strip" + +SRC_URI="nxserver-${MY_PV}.i386.rpm" +DEPEND="$DEPEND + >=net-misc/nxclient-1.3.2" + +RDEPEND="$RDEPEND + >=media-libs/jpeg-6b-r3 + >=sys-libs/glibc-2.3.2-r1 + >=sys-libs/zlib-1.1.4-r1 + virtual/x11 + >=net-misc/openssh-3.6.1_p2 + >=dev-lang/perl-5.8.0-r12" + +DEPEND="$DEPEND + >=sys-apps/shadow-4.0.3-r6 + >=net-misc/openssh-3.6.1_p2 + >=net-misc/nxssh-1.3.2 + >=net-misc/nxproxy-1.3.2 + net-misc/nx-x11" + +S="${WORKDIR}" + +DESCRIPTION="an X11/RDP/VNC proxy server especially well suited to low bandwidth links such as wireless, WANS, and worse" + +EXPORT_FUNCTIONS src_compile src_install pkg_postinst + +nxserver_src_compile() { + return; +} + +nxserver_src_install() { + einfo "Installing" + find usr/NX/lib -type l -exec rm {} \; + + # NX changed the name of the passwords sample file in 1.3.0 + + for x in passwd.sample passwords.sample ; do + if [ -f usr/NX/etc/$x ]; then + mv usr/NX/etc/$x usr/NX/etc/`basename $x .sample` + fi + done + + tar -cf - * | ( cd ${D} ; tar -xf - ) + + dodir /usr/NX/var + dodir /usr/NX/var/sessions + touch ${D}/usr/NX/var/sessions/NOT_EMPTY + + insinto /etc/env.d + doins ${FILESDIR}/1.3.0/50nxserver +} + +nxserver_pkg_postinst() { + + # arg - the 'nx' user's home directory keeps moving + # + # release user homedir + # 1.2.2 nx /usr/NX/home/nx + # 1.3.0 nx /usr/NX/home + # 1.3.2 nx /usr/NX/home/nx + # 1.4.0 nx /usr/NX/home/nx + + l_szPasswd=passwd + + if [ -f /usr/NX/etc/passwd -a -f /usr/NX/etc/passwords ]; then + mv /usr/NX/etc/passwd /usr/NX/etc/passwords + fi + if [ -f /usr/NX/etc/passwords ]; then + l_szPasswd=passwords + fi + + # end of upgrade support + + einfo "Adding user 'nx' for the NX server" + enewuser nx -1 /usr/NX/bin/nxserver /usr/NX/home/nx + + # we do this to move the home directory of older installs + + einfo "Setting home directory of user 'nx' to /usr/NX/home/nx" + usermod -d /usr/NX/home/nx nx + + einfo "Changing permissions for files under /usr/NX" + chown nx:root /usr/NX/etc/$l_szPasswd + chmod 0600 /usr/NX/etc/$l_szPasswd + chown -R nx:root /usr/NX/home/nx + chown -R nx:root /usr/NX/var + + einfo "Generating SSH keys for the 'nx' user" + if [ ! -f /usr/NX/etc/users.id_dsa ]; then + ssh-keygen -q -t dsa -N '' -f /usr/NX/etc/users.id_dsa + fi + chown nx:root /usr/NX/etc/users.id_dsa + if [ -f /usr/NX/home/nx.ssh/server.id_dsa.pub.key ] ; then + cp -f /usr/NX/home/nx/.ssh/server.id_dsa.pub.key /usr/NX/home/nx/.ssh/authorized_keys2 + fi + + if [ ! -f /usr/NX/var/broadcast.txt ]; then + einfo "Creating NX user registration database" + touch /usr/NX/var/broadcast.txt + chown nx:root /usr/NX/var/broadcast.txt + + ewarn "None of your system users are registered to use the NX Server." + ewarn "To authorise a user, run:" + ewarn "'/usr/NX/bin/nxserver --useradd <username>'" + fi + + if [ ! -f /usr/NX/etc/key.txt ] ; then + ewarn + ewarn "You need to place your NX key.txt file into /usr/NX/etc/" + ewarn "If you don't have one already, you can get an evaluation" + ewarn "key, or purchase a full license, from www.nomachine.com" + ewarn + fi + + if [ ! -f /usr/NX/etc/node.conf ] ; then + ewarn + ewarn "To complete the installation, you must create a file called" + ewarn "'/usr/NX/etc/node.conf'. An example configuration file can" + ewarn "be found in /usr/NX/etc" + ewarn + fi + + # regen the ld.so cache, because Portage sometimes doesn't + ldconfig -v > /dev/null +} |