summaryrefslogtreecommitdiff
path: root/testing
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-04-23 00:01:26 +0000
committerroot <root@rshg054.dnsready.net>2012-04-23 00:01:26 +0000
commit076ac7347687744daa2ca386a67a4ad111c71415 (patch)
treeb82f738122e9905a6dab679ab5f4cf7eb75e55f4 /testing
parentaf1e6c210b43ea6b8e043524edccb1d0befd257f (diff)
Mon Apr 23 00:01:26 UTC 2012
Diffstat (limited to 'testing')
-rw-r--r--testing/freenx/PKGBUILD95
-rw-r--r--testing/freenx/freenx-latest-svn.patch288
-rw-r--r--testing/freenx/freenx-server-0.7.3-nxipp.patch17
-rw-r--r--testing/freenx/freenx.install59
-rw-r--r--testing/freenx/keymap.patch32
-rw-r--r--testing/freenx/nxagent-startup.patch12
-rw-r--r--testing/freenx/remove-dialog.patch32
-rw-r--r--testing/gmime/PKGBUILD33
-rw-r--r--testing/libgsf/PKGBUILD28
-rw-r--r--testing/lv2/PKGBUILD6
-rw-r--r--testing/nx-common/NXproto.h.64bit.diff66
-rw-r--r--testing/nx-common/PKGBUILD51
-rw-r--r--testing/nx-common/nx-3.5.0-libpng15.patch30
-rw-r--r--testing/nx-common/nxcompsh-gcc43.patch19
-rw-r--r--testing/nx/PKGBUILD108
-rw-r--r--testing/nx/nx-x11.ld.so.conf.d1
16 files changed, 874 insertions, 3 deletions
diff --git a/testing/freenx/PKGBUILD b/testing/freenx/PKGBUILD
new file mode 100644
index 000000000..0e5aaf81b
--- /dev/null
+++ b/testing/freenx/PKGBUILD
@@ -0,0 +1,95 @@
+# $Id: PKGBUILD 156628 2012-04-21 23:25:55Z andyrtr $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+#Contributed: eliott <eliott@solarblue.net>, Andre Naumann <anaumann@SPARCed.org>
+
+pkgname=freenx
+pkgver=0.7.3
+pkgrel=11
+pkgdesc="Free Software (GPL) Implementation of the NX Server"
+arch=(i686 x86_64)
+url="http://freenx.berlios.de"
+license=('GPL')
+depends=('nx-common' 'nx-x11' 'nxagent' 'nxproxy' 'gnu-netcat' 'inetutils' 'openssh' 'expect' 'python'
+ 'xorg-xauth' 'xorg-fonts-misc' 'coreutils' 'xorg-xmessage' 'xorg-xrdb' 'xorg-xpr' 'xorg-xset' 'xorg-sessreg')
+optdepends=('cups: adds printing support')
+makedepends=('imake')
+options=('!makeflags')
+conflicts=('nxserver')
+provides=('nxserver')
+backup=(etc/nxserver/node.conf)
+install=freenx.install
+source=(http://download.berlios.de/freenx/$pkgname-server-$pkgver.tar.gz
+ keymap.patch
+ nxagent-startup.patch
+ freenx-latest-svn.patch
+ remove-dialog.patch
+ freenx-server-0.7.3-nxipp.patch)
+md5sums=('856f597e139018f7ed62713c9d6c9ed5'
+ 'f0867659c925f6363fb2b7661f349248'
+ '30dc16d8e2093ff71d5834a169ad9d00'
+ '788f30322783cf2c2dc833e2e4d5e8ad'
+ 'cae1773312506eeefe6a8de07c492bd8'
+ 'b3244c52a6bafc6d9b528eb4d4426e36')
+
+build() {
+ # patch and install nxserver
+ cd $srcdir/$pkgname-server-$pkgver
+ # add latest svn fixes
+ patch -Np3 -i ../freenx-latest-svn.patch
+ # patch from inside nx
+ patch < gentoo-nomachine.diff
+ # patch broken keymap remapping
+ patch -Np0 -i ${srcdir}/keymap.patch
+ # patch nxagent startup to avoid login issues
+ patch -Np0 -i ${srcdir}/nxagent-startup.patch
+ # check for cups existance and then symlinks the backend
+ patch -Np1 -i ${srcdir}/freenx-server-0.7.3-nxipp.patch
+ # remove broken dialog function
+ patch -Np0 -i ${srcdir}/remove-dialog.patch
+ sed -i -e 's,authorized_keys2,authorized_keys,g' nxloadconfig
+ sed -i -e 's,\/usr\/NX,\/usr\/lib/nx,g' nxloadconfig node.conf.sample
+ sed -i -e 's,netcat,nc,g' nxloadconfig
+ sed -i -e 's/utmp/nx/g' nxsetup
+ sed -i -e 's,/usr/X11R6/bin/xauth,/usr/bin/xauth,g' nxloadconfig
+ sed -i -e 's,COMMAND_FOOMATIC="/usr/lib/cups/driver/foomatic-ppdfile",COMMAND_FOOMATIC="/usr/bin/foomatic-ppdfile",g' nxloadconfig
+ sed -i -e 's,COMMAND_MD5SUM="openssl md5",COMMAND_MD5SUM="md5sum",g' nxloadconfig node.conf.sample
+ sed -i -e 's|AGENT_EXTRA_OPTIONS_X=""|AGENT_EXTRA_OPTIONS_X="-co /usr/share/X11/rgb -fp /usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 -xkbdir /usr/share/X11/xkb"|g' nxloadconfig
+ sed -i -e 's/ENABLE_AUTORECONNECT_BEFORE_140="1"/ENABLE_AUTORECONNECT_BEFORE_140="0"/g' nxloadconfig
+ sed -i -e 's,/etc/init.d/ssh,/etc/rc.d/sshd,g' nxsetup
+ sed -i -e 's,libXcomp.so,libXcomp.so.3,g' nxloadconfig
+ sed -i -e 's,libXcompext.so,libXcompext.so.3,g' nxloadconfig
+ sed -i -e 's,libXrender.so.1.2,libXrender.so.1.2.2:$APPLICATION_LIBRARY_PATH/libXcompsh.so.3:$APPLICATION_LIBRARY_PATH/libXcompshad.so.3,g' nxloadconfig
+ sed -i -e 's:NX_ETC_DIR\=$NX_DIR\/etc:NX_ETC_DIR=\/etc\/nxserver:g' nxloadconfig
+ sed -i -e 's:NX_SESS_DIR=$NX_DIR\/var\/db:NX_SESS_DIR=\/var\/lib\/nxserver\/db:g' nxloadconfig
+ sed -i -e 's:NX_HOME_DIR=$NX_DIR:NX_HOME_DIR=\/var\/lib\/nxserver:g' nxloadconfig
+ sed -i -e 's:NOMACHINE_NX_HOME_DIR="/usr/lib/nx/home/nx":NOMACHINE_NX_HOME_DIR="/var/lib/nxserver/home/nx":g' nxloadconfig node.conf.sample
+ sed -i -e 's:\/usr\/NX:\/usr\/lib\/nx:g' nxdialog
+
+ # fix key generation
+ sed -i -e 's,AUTOMATIC="no",AUTOMATIC="yes",g' nxsetup
+
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-server-$pkgver
+
+ make install DESTDIR="${pkgdir}"
+
+ # create symlinks
+ install -dm755 ${pkgdir}/usr/bin
+ cd ${pkgdir}/usr/bin
+ for file in ${pkgdir}/usr/lib/nx/bin/*; do
+ ln -sv /usr/lib/nx/bin/`basename $file` .
+ done
+
+ mv $pkgdir/etc/nxserver/node.conf.sample $pkgdir/etc/nxserver/node.conf
+
+ # create some missing nxserver directories
+ mkdir -m700 -p $pkgdir/var/lib/nxserver/{home/nx,db}
+ mkdir -m700 -p $pkgdir/usr/lib/nx/share
+
+ # remove files that are part of nxclient
+ rm -f ${pkgdir}/usr/lib/nx/bin/nxprint
+ rm -f ${pkgdir}/usr/bin/nxprint
+}
diff --git a/testing/freenx/freenx-latest-svn.patch b/testing/freenx/freenx-latest-svn.patch
new file mode 100644
index 000000000..bcc8ddd17
--- /dev/null
+++ b/testing/freenx/freenx-latest-svn.patch
@@ -0,0 +1,288 @@
+diff -ur freenx-server-0.7.3//ChangeLog ../trunk/freenx-server//ChangeLog
+--- freenx-server-0.7.3//ChangeLog 2008-08-22 02:44:43.000000000 +0200
++++ ../trunk/freenx-server//ChangeLog 2011-01-26 23:23:36.850005855 +0100
+@@ -1,3 +1,20 @@
++xx.11.2008 FreeNX 0.7.4
++ * Opened the 0.7.4 development.
++ * Fixed missing export of NX_ETC_DIR in Makefile,
++ so node.conf.sample is installed correctly.
++ (fabianx@bat.berlios.de)
++ * Fixed broken round-robin load balance algorithm.
++ (fabianx@bat.berlios.de)
++ * Fixed --terminate|--suspend|--force-terminate for
++ load balancing case.
++ (fabianx@bat.berlios.de)
++ * Fixed --terminate|--suspend|--force-terminate for
++ usermode case.
++ (fabianx@bat.berlios.de)
++ * Fixed non-encrypted session mode. You might need to
++ set EXTERNAL_PROXY_IP in node.conf.
++ (fabianx@bat.berlios.de)
++
+ 18.08.2008 FreeNX 0.7.3 "Priscilla One Year Edition"
+ * Opened the 0.7.3 development.
+ * Added logging of failed authentication attempts
+diff -ur freenx-server-0.7.3//Makefile ../trunk/freenx-server//Makefile
+--- freenx-server-0.7.3//Makefile 2008-08-18 04:16:25.000000000 +0200
++++ ../trunk/freenx-server//Makefile 2011-01-26 23:23:36.856672521 +0100
+@@ -8,7 +8,7 @@
+ all:
+ cd nxviewer-passwd && xmkmf && make Makefiles && make depend
+ source nxloadconfig &&\
+- export PATH_BIN PATH_LIB CUPS_BACKEND NX_VERSION &&\
++ export PATH_BIN PATH_LIB CUPS_BACKEND NX_VERSION NX_ETC_DIR &&\
+ for i in $(SUBDIRS) ; \
+ do\
+ echo "making" all "in $$i..."; \
+@@ -44,5 +44,5 @@
+
+ install:
+ source nxloadconfig &&\
+- export PATH_BIN PATH_LIB CUPS_BACKEND NX_VERSION &&\
++ export PATH_BIN PATH_LIB CUPS_BACKEND NX_VERSION NX_ETC_DIR &&\
+ $(MAKE) nxenv_install
+diff -ur freenx-server-0.7.3//node.conf.sample ../trunk/freenx-server//node.conf.sample
+--- freenx-server-0.7.3//node.conf.sample 2008-08-22 02:44:43.000000000 +0200
++++ ../trunk/freenx-server//node.conf.sample 2011-01-26 23:23:36.850005855 +0100
+@@ -37,7 +37,7 @@
+ #
+ # https://mail.kde.org/mailman/listinfo/freenx-knx
+ #
+-# SVN: $Id: node.conf.sample 580 2008-08-22 00:44:43Z fabianx $
++# SVN: $Id: node.conf.sample 613 2008-09-01 20:42:31Z fabianx $
+
+ #########################################################################
+ # General FreeNX directives
+@@ -47,6 +47,11 @@
+ # different than the default hostname (as returned by `hostname`)
+ #SERVER_NAME="$(hostname)"
+
++# The node ip which is used by NX Node in unecnrypted session mode.
++# Set it if you want to use a specific external ip or the autodetection
++# is not working.
++#EXTERNAL_PROXY_IP=""
++
+ # The port number where local 'sshd' is listening.
+ #SSHD_PORT=22
+
+diff -ur freenx-server-0.7.3//nxloadconfig ../trunk/freenx-server//nxloadconfig
+--- freenx-server-0.7.3//nxloadconfig 2008-08-22 02:44:43.000000000 +0200
++++ ../trunk/freenx-server//nxloadconfig 2011-01-26 23:23:36.856672521 +0100
+@@ -5,7 +5,7 @@
+ #
+ # License: GPL, version 2
+ #
+-# SVN: $Id: nxloadconfig 580 2008-08-22 00:44:43Z fabianx $
++# SVN: $Id: nxloadconfig 613 2008-09-01 20:42:31Z fabianx $
+ #
+ # ========================================================================
+
+@@ -52,7 +52,7 @@
+ # DO NOT TOUCH unless you REALLY know what you are doing
+ #########################################################################
+
+-NX_VERSION=3.2.0-73
++NX_VERSION=3.2.0-74-SVN
+ NX_LICENSE="OS (GPL, using backend: %BACKEND%)"
+
+ # Where can different nx components be found
+@@ -85,6 +85,7 @@
+ # General FreeNX directives
+
+ SERVER_NAME="$(hostname)"
++EXTERNAL_PROXY_IP=""
+ SSHD_PORT=22
+
+ # Authentication / Security directives
+diff -ur freenx-server-0.7.3//nxnode ../trunk/freenx-server//nxnode
+--- freenx-server-0.7.3//nxnode 2008-08-22 02:44:43.000000000 +0200
++++ ../trunk/freenx-server//nxnode 2011-01-26 23:23:36.853339188 +0100
+@@ -13,7 +13,7 @@
+ #
+ # License: GNU GPL, version 2
+ #
+-# SVN: $Id: nxnode 580 2008-08-22 00:44:43Z fabianx $
++# SVN: $Id: nxnode 613 2008-09-01 20:42:31Z fabianx $
+ #
+ # 21.06.2004: - Full reconnection support
+
+@@ -1184,6 +1184,17 @@
+ [ -z "$userip" -a "$host" = "127.0.0.1" ] && userip="127.0.0.1"
+ [ -z "$userip" ] && userip="*"
+ fi
++
++ # We need our own external IP
++ proxyip="$EXTERNAL_PROXY_IP"
++
++ if [ -z "$proxyip" -a -n "$host" ]
++ then
++ [ "$host" = "127.0.0.1" ] && host=$(hostname)
++ proxyip=$(ping -c1 "$host" | grep 'PING' | cut -d'(' -f2 | cut -d')' -f1)
++ fi
++
++ [ -z "$proxyip" ] && proxyip="127.0.0.1"
+
+ # ok, lets make the session dir first:
+
+@@ -1316,7 +1327,7 @@
+ NX> 705 Session display: $display
+ NX> 703 Session type: $type
+ NX> 701 Proxy cookie: $proxy_cookie
+-NX> 702 Proxy IP: $userip
++NX> 702 Proxy IP: $proxyip
+ NX> 706 Agent cookie: $cookie
+ NX> 704 Session cache: $type
+ NX> 707 SSL tunneling: $ssl_tunnel
+diff -ur freenx-server-0.7.3//nxserver ../trunk/freenx-server//nxserver
+--- freenx-server-0.7.3//nxserver 2008-08-22 02:44:43.000000000 +0200
++++ ../trunk/freenx-server//nxserver 2011-01-26 23:23:36.856672521 +0100
+@@ -11,7 +11,7 @@
+ #
+ # License: GNU GPL, version 2
+ #
+-# SVN: $Id: nxserver 580 2008-08-22 00:44:43Z fabianx $
++# SVN: $Id: nxserver 612 2008-08-25 03:28:15Z fabianx $
+ #
+
+ # Read the config file
+@@ -1192,7 +1192,7 @@
+ # Lock held
+
+ SERVER_LB_NR=$(cat $NX_SESS_DIR/round-robin 2>/dev/null)
+- let SERVER_LB_NR=(SERVER_LB_NR+1) % SERVER_LB_NR_OF_HOSTS
++ let SERVER_LB_NR=(SERVER_LB_NR+1)%SERVER_LB_NR_OF_HOSTS
+ echo $SERVER_LB_NR >$NX_SESS_DIR/round-robin
+
+ # Exit critical section
+@@ -1961,71 +1961,71 @@
+ session_history "$user" "$sessid"
+ }
+
+-cmd_terminate()
++cmd_execute()
+ {
+- CMD_PARAMS=$(cmd_parse_3_params "$2")
+- [ -z "$CMD_PARAMS" ] && exit 1
+- for i in $CMD_PARAMS;
++ cmd_host="$1"
++ cmd_user="$2"
++ cmd_cmd="$3"
++
++ if [ "$ENABLE_USERMODE_AUTHENTICATION" = "1" ]
++ then
++ sh -c "$cmd_cmd"
++ elif [ "$cmd_host" = "127.0.0.1" -o "$cmd_host" = "localhost" ]
++ then
++ su - "$cmd_user" -c "$cmd_cmd"
++ else
++ ssh "$cmd_host" su - "$cmd_user" -c "'$cmd_cmd'"
++ fi
++}
++
++cmd_terminate_or_send()
++{
++ CMD="$1"
++
++ if [ "$CMD" = "--broadcast" ]
++ then
++ CMD_PARAMS=$(session_find_all)
++ [ -z "$CMD_PARAMS" ] && cmd_abort "Error: No running session could be found."
++ else
++ CMD_PARAMS=$(cmd_parse_3_params "$2")
++ [ -z "$CMD_PARAMS" ] && exit 1
++ shift
++ fi
++ shift
++
++ for i in $CMD_PARAMS
+ do
+ CMDLINE=$(session_get_cmdline $i)
+ cmd_sessionid=$(getparam sessionId)
++ cmd_display=$(getparam display)
+ cmd_user=$(getparam userName)
+ cmd_type=$(getparam type)
+ cmd_status=$(getparam status)
++ cmd_host=$(getparam host)
+
+ # is it a "good" session?
+- case "$1" in
++ case "$CMD" in
+ --suspend)
+ if [ "$cmd_status" = "Running" ] && stringinstring "unix-" "$cmd_type"
+ then
+- echo "sessionid=$cmd_sessionid" | su - "$cmd_user" -c "$PATH_BIN/nxnode --suspend"
++ echo "sessionid=$cmd_sessionid" | cmd_execute "$cmd_host" "$cmd_user" "$PATH_BIN/nxnode --suspend"
+ fi
+ ;;
+ --terminate)
+- echo "sessionid=$cmd_sessionid" | su - "$cmd_user" -c "$PATH_BIN/nxnode --terminate"
++ echo "sessionid=$cmd_sessionid" | cmd_execute "$cmd_host" "$cmd_user" "$PATH_BIN/nxnode --terminate"
+ ;;
+ --force-terminate)
+- echo "sessionid=$cmd_sessionid" | su - "$cmd_user" -c "$PATH_BIN/nxnode --terminate"
++ echo "sessionid=$cmd_sessionid" | cmd_execute "$cmd_host" "$cmd_user" "$PATH_BIN/nxnode --terminate"
+ session_close $cmd_sessionid
+ ;;
+- esac
+- done
+-
+-}
+-
+-cmd_send()
+-{
+- if [ "$1" = "--broadcast" ]
+- then
+- CMD_PARAMS=$(session_find_all)
+- [ -z "$CMD_PARAMS" ] && cmd_abort "Error: No running session could be found."
+- else
+- CMD_PARAMS=$(cmd_parse_3_params "$2")
+- [ -z "$CMD_PARAMS" ] && exit 1
+- shift
+- fi
+- shift
+- for i in $CMD_PARAMS;
+- do
+- CMDLINE=$(session_get_cmdline $i)
+- cmd_display=$(getparam display)
+- cmd_user=$(getparam userName)
+- cmd_type=$(getparam type)
+- cmd_status=$(getparam status)
+- cmd_host=$(getparam host)
+-
+- # is it a "good" session?
+- if [ "$cmd_status" = "Running" ] && stringinstring "unix-" "$cmd_type"
+- then
+- if [ "$cmd_host" = "127.0.0.1" -o "$cmd_host" = "localhost" ]
++ --send|--broadcast)
++ # is it a "good" session?
++ if [ "$cmd_status" = "Running" ] && stringinstring "unix-" "$cmd_type"
+ then
+- su - "$cmd_user" -c "$PATH_BIN/nxdialog --dialog ok --caption \"NX Administrator Message\" --message \"$@\" -display \":$cmd_display\" &"
+- else
+- ssh $cmd_host su - "$cmd_user" -c "'$PATH_BIN/nxdialog --dialog ok --caption \"NX Administrator Message\" --message \"$@\" -display \":$cmd_display\" &'"
++ cmd_execute "$cmd_host" "$cmd_user" "$PATH_BIN/nxdialog --dialog ok --caption \"NX Administrator Message\" --message \"$@\" -display \":$cmd_display\" &"
+ fi
+- fi
++ esac
+ done
+- #nxnode_start --send "$CMD_PARAMS"
+ }
+
+ #
+@@ -2099,13 +2099,13 @@
+ cmd_history "$@"
+ ;;
+ --terminate|--suspend|--force-terminate)
+- cmd_terminate "$@"
++ cmd_terminate_or_send "$@"
+ ;;
+ --cleanup)
+- cmd_terminate "--force-terminate" "*"
++ cmd_terminate_or_send "--force-terminate" "*"
+ ;;
+ --send|--broadcast)
+- cmd_send "$@"
++ cmd_terminate_or_send "$@"
+ ;;
+ *)
+ cmd_abort "Error: Function $CMD not implemented yet."
diff --git a/testing/freenx/freenx-server-0.7.3-nxipp.patch b/testing/freenx/freenx-server-0.7.3-nxipp.patch
new file mode 100644
index 000000000..81b286593
--- /dev/null
+++ b/testing/freenx/freenx-server-0.7.3-nxipp.patch
@@ -0,0 +1,17 @@
+diff -up freenx-server-0.7.3/nxsetup~ freenx-server-0.7.3/nxsetup
+--- freenx-server-0.7.3/nxsetup~ 2011-12-30 23:04:53.515194711 +0200
++++ freenx-server-0.7.3/nxsetup 2011-12-30 23:05:55.499954085 +0200
+@@ -366,11 +366,10 @@ EOF
+
+ echo "done"
+
+- if [ -d "$CUPS_BACKEND" ]
++ if [ -d "$CUPS_BACKEND" ] && [ ! -f "$CUPS_IPP_BACKEND" ]
+ then
+ echo -n "Setting up cups nxipp backend ..."
+- cp -af "$CUPS_BACKEND/ipp" "$CUPS_IPP_BACKEND"
+- chmod 755 "$CUPS_IPP_BACKEND"
++ ln -sf "$CUPS_BACKEND/ipp" "$CUPS_IPP_BACKEND"
+ echo "done"
+ fi
+ }
diff --git a/testing/freenx/freenx.install b/testing/freenx/freenx.install
new file mode 100644
index 000000000..0f3260166
--- /dev/null
+++ b/testing/freenx/freenx.install
@@ -0,0 +1,59 @@
+post_install() {
+ # Make sure the group and user "nx" exists on this system and have the correct values
+ if grep -q "^nx:" /etc/group &> /dev/null ; then
+ groupmod -g 85 -n nx nx &> /dev/null
+ else
+ groupadd -g 85 nx &> /dev/null
+ fi
+
+ if grep -q "^nx:" /etc/passwd 2> /dev/null ; then
+ usermod -s /usr/bin/nxserver -c "NX user" -d /var/lib/nxserver/home/nx -u 85 -g nx nx &> /dev/null
+ else
+ useradd -s /usr/bin/nxserver -c "NX user" -d /var/lib/nxserver/home/nx -u 85 -g nx -r nx &> /dev/null
+ fi
+
+ # setting up freenx
+ echo 'Generating keys ...'
+ /usr/lib/nx/bin/nxsetup --install 2>&1 >/dev/null
+
+ echo "ATTENTION FREENX:"
+ echo "For correct setup please take a look at the wiki:"
+ echo "http://wiki.archlinux.org/index.php/FreeNX"
+}
+
+post_upgrade() {
+ # Make sure the group and user "nx" exists on this system and have the correct values
+ if grep -q "^nx:" /etc/group &> /dev/null ; then
+ groupmod -g 85 -n nx nx &> /dev/null
+ else
+ groupadd -g 85 nx &> /dev/null
+ fi
+
+ if grep -q "^nx:" /etc/passwd 2> /dev/null ; then
+ usermod -s /usr/bin/nxserver -c "NX user" -d /var/lib/nxserver/home/nx -u 85 -g nx nx &> /dev/null
+ else
+ useradd -s /usr/bin/nxserver -c "NX user" -d /var/lib/nxserver/home/nx -u 85 -g nx -r nx &> /dev/null
+ fi
+
+ # setting up freenx
+ echo "Rerunning nxsetup ..."
+ /usr/lib/nx/bin/nxsetup --install 2>&1 >/dev/null
+
+ if [ "`vercmp $2 0.7.3-10.1`" -lt 0 ]; then
+ # important upgrade notice
+ echo "*** config file location has been moved ***"
+ echo "Please apply your local settings from /opt/NX/etc/node.conf.pacsave"
+ echo "into /etc/nxserver/node.conf. A new key set is required."
+ echo "Please copy to your clients the new client key:"
+ echo "\"/var/lib/nxserver/home/nx/.ssh/client.id_dsa.key\""
+ echo "When you have FreeNX server running clean up with \"rm -rf /opt/NX\"."
+ fi
+}
+
+# arg 1: the old package version
+pre_remove() {
+ /usr/lib/nx/bin/nxsetup --uninstall --purge 2>&1 >/dev/null
+# usr/sbin/groupdel nx &>/dev/null
+ userdel nx &> /dev/null
+ groupdel nx &> /dev/null || /bin/true
+}
diff --git a/testing/freenx/keymap.patch b/testing/freenx/keymap.patch
new file mode 100644
index 000000000..a0bb678e4
--- /dev/null
+++ b/testing/freenx/keymap.patch
@@ -0,0 +1,32 @@
+=== modified file 'nxnode'
+--- nxnode 2009-01-14 04:22:40 +0000
++++ nxnode 2009-01-14 04:24:02 +0000
+@@ -555,7 +555,8 @@
+
+ # Start the agent
+
+- PATH="$PATH_BIN:$PATH" $PATH_BIN/nxagent $P $R -name "NX - $user@$SERVER_NAME:$display - $session (GPL Edition)" -option "$USER_FAKE_HOME/.nx/C-$sess_id/options" $K $G $B $FP $AGENT_EXTRA_OPTIONS_X :$display 2>&3 &
++ #PATH="$PATH_BIN:$PATH" $PATH_BIN/nxagent $P $R -name "NX - $user@$SERVER_NAME:$display - $session (GPL Edition)" -option "$USER_FAKE_HOME/.nx/C-$sess_id/options" $K $G $B $FP $AGENT_EXTRA_OPTIONS_X :$display 2>&3 &
++ PATH="$PATH_BIN:$PATH" $PATH_BIN/nxagent $R -name "NX - $user@$SERVER_NAME:$display - $session (GPL Edition)" -option "$USER_FAKE_HOME/.nx/C-$sess_id/options" $B $FP $AGENT_EXTRA_OPTIONS_X :$display 2>&3 &
+ fi
+
+ #
+@@ -1094,6 +1095,8 @@
+ # Rootless fix from 2x nxserver 1.5.0
+ realtype=$type
+ [ "$type" = "unix-application" -o "$type" = "unix-default" ] && realtype="unix-desktop"
++ [ "$type" = "unix-gnome" ] && realtype="gnome"
++ [ "$type" = "unix-kde" ] && realtype="kde"
+
+ # NX 2.1.0 file-sharing port options
+ client=$(getparam client)
+@@ -1272,7 +1275,7 @@
+ umask 0077
+
+ cat << EOF > "$USER_FAKE_HOME/.nx/C-$sess_id/options"
+-${keyboard:+keyboard=$keyboard,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype,cleanup=0,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${clipboard:+,clipboard=$clipboard}${menu:+,menu=$menu}:$display
++nx/nx,${keyboard:+keyboard=$keyboard,}${kbtype:+kbtype=$kbtype,}${kbload:+kbload=$kbload,}${keymap:+keymap=$keymap,}${geometry:+geometry=$geometry,}${client:+client=$client,}${resize:+resize=$resize,}${CACHE}${IMAGES}${PACK}link=$link,nodelay=$nodelay,type=$realtype${clipboard:+,clipboard=$clipboard}${composite:+composite=$composite},cleanup=0,product=LFE/None/LFEN/None,shmem=1,${backingstore:+backingstore=$backingstore,}shpix=1,${ACCEPT}cookie=$proxy_cookie,id=$sess_id,samba=$samba,media=$media${sync:+,sync=$sync}${cups:+,cups=$cups}${keybd:+,keybd=$keybd}${aux:+,aux=$aux}${http:+,http=$http}${rdpcolors:+,rdpcolors=$rdpcolors}${rdpcache:+,rdpcache=$rdpcache}${fullscreen:+,fullscreen=1}${menu:+,menu=$menu}:$display
+ EOF
+ umask $OLD_UMASK
+ #samba=$samba,
+
diff --git a/testing/freenx/nxagent-startup.patch b/testing/freenx/nxagent-startup.patch
new file mode 100644
index 000000000..e3c5497c1
--- /dev/null
+++ b/testing/freenx/nxagent-startup.patch
@@ -0,0 +1,12 @@
+--- nxnode~ 2010-04-30 15:42:46.000000000 +0200
++++ nxnode 2010-04-30 15:42:46.000000000 +0200
+@@ -328,6 +328,9 @@
+ NODE_WM_PID=$!
+ fi
+
++ # Patch - delay to allow nxagent to complete launching
++ sleep 4
++
+ echo "Xft.dpi: 96" | DISPLAY=:$display xrdb -merge >>"$USER_FAKE_HOME/.nx/C-$sess_id/session" 2>&1
+ [ -d /etc/X11/Xresources ] && xrdb -display :$display -merge /etc/X11/Xresources/* >>"$USER_FAKE_HOME/.nx/C-$sess_id/session" 2>&1
+
diff --git a/testing/freenx/remove-dialog.patch b/testing/freenx/remove-dialog.patch
new file mode 100644
index 000000000..054f1f6c4
--- /dev/null
+++ b/testing/freenx/remove-dialog.patch
@@ -0,0 +1,32 @@
+--- nxdialog~ 2011-02-01 09:05:28.993333438 +0100
++++ nxdialog 2011-02-01 09:05:29.010000106 +0100
+@@ -85,29 +85,6 @@
+ then
+ dialog_interface="xdialog"
+ DIALOG=/usr/bin/Xdialog # just in case that we have no good path
+-elif [ -x /usr/bin/dialog ]
+-then
+- #JJK: Added 'dialog_interface=dialog' option because Xdialog not standard
+- #JJK: on some distros such as Fedora and xmessage won't handle long
+- #JJK: lists of ppd files while the combination of 'dialog' and 'xterm'
+- #JJK: should be present on most setups.
+-
+- dialog_interface="dialog"
+- DIALOG=/usr/bin/dialog
+- if [ -z "$NXCLIENT_FIRST_TIME" ]
+- then
+- # Run only once in case of subdialogs. Capture result in tempfile
+- TMPFILE=$(mktemp /tmp/nxclient.XXXXX)
+- export NXCLIENT_FIRST_TIME=1
+-
+- xterm -geometry 120x24+100+100 +sb -title "NXclient" -e \
+- /bin/bash -c "$DIALOG --infobox 'Please wait...' 3 25; $0 $INPUTS | tee $TMPFILE" || exit 1
+-
+- #Need to recover the last line output (and not remove non-printing chars, because --stdout is used)
+- tail -1 $TMPFILE
+- rm -f $TMPFILE
+- exit 0
+- fi
+ else
+ dialog_interface="xmessage"
+ xmessage=$(which xmessage 2>/dev/null)
diff --git a/testing/gmime/PKGBUILD b/testing/gmime/PKGBUILD
new file mode 100644
index 000000000..144cc95b4
--- /dev/null
+++ b/testing/gmime/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 156594 2012-04-21 11:48:59Z ibiru $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Ben <ben@benmazer.net>
+
+pkgname=gmime
+pkgver=2.6.8
+pkgrel=1
+pkgdesc="Core mime parsing library"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://spruce.sourceforge.net/gmime/"
+depends=('glib2' 'gpgme' 'zlib')
+makedepends=('gtk-sharp-2')
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz)
+sha256sums=('cf434bc52329554b403ce08344a9c429f5807bbd67b2f1a6857daa145a2830d7')
+
+build() {
+ # get rid of that .wapi errors in fakeroot
+ export MONO_SHARED_DIR="$srcdir/weird"
+ mkdir -p "$MONO_SHARED_DIR"
+
+ cd "$pkgname-$pkgver"
+
+ ./configure --prefix=/usr --enable-smime \
+ --disable-static
+ make
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/testing/libgsf/PKGBUILD b/testing/libgsf/PKGBUILD
new file mode 100644
index 000000000..d9e44d8ae
--- /dev/null
+++ b/testing/libgsf/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 156592 2012-04-21 11:46:06Z ibiru $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+
+pkgname=libgsf
+pkgver=1.14.23
+pkgrel=1
+arch=(i686 x86_64)
+pkgdesc="The GNOME Structured File Library is a utility library for reading and writing structured file formats"
+url="http://www.gnome.org/"
+license=('GPL' 'LGPL')
+options=('!libtool')
+depends=('libxml2' 'gdk-pixbuf2' 'bzip2')
+makedepends=('intltool' 'gobject-introspection')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/1.14/$pkgname-$pkgver.tar.xz)
+sha256sums=('bfc1c6178f5319d5e6d854c380ce26542f9a103a5ff31c9d25a834e0be52fb17')
+
+build() {
+ cd "$pkgname-$pkgver"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package_libgsf() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/testing/lv2/PKGBUILD b/testing/lv2/PKGBUILD
index 4304bb131..16aef9dae 100644
--- a/testing/lv2/PKGBUILD
+++ b/testing/lv2/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 156537 2012-04-20 17:48:38Z schiv $
+# $Id: PKGBUILD 156605 2012-04-21 17:24:19Z schiv $
# Maintainer: Ray Rashif <schiv@archlinux.org>
pkgname=lv2
pkgver=1.0.0
-pkgrel=1
+pkgrel=2
pkgdesc="Successor to the LADSPA audio plug-in standard"
url="http://lv2plug.in/"
license=('LGPL' 'custom')
arch=('i686' 'x86_64')
makedepends=('python2' 'libsndfile' 'gtk2')
optdepends=('libsndfile: lv2-eg-sampler'
- 'gkt2: lv2-eg-sampler')
+ 'gtk2: lv2-eg-sampler')
provides=('lv2core')
conflicts=('lv2core')
replaces=('lv2core')
diff --git a/testing/nx-common/NXproto.h.64bit.diff b/testing/nx-common/NXproto.h.64bit.diff
new file mode 100644
index 000000000..ac326ebcd
--- /dev/null
+++ b/testing/nx-common/NXproto.h.64bit.diff
@@ -0,0 +1,66 @@
+--- nxcomp.old/NXproto.h 2006-06-19 19:55:56.000000000 +0200
++++ nxcomp/NXproto.h 2007-02-12 18:17:41.000000000 +0100
+@@ -26,6 +26,30 @@
+ #include <X11/Xmd.h>
+ #include <X11/Xproto.h>
+
++/*
++ Copied from Xproto.h
++ */
++
++/* For the purpose of the structure definitions in this file,
++we must redefine the following types in terms of Xmd.h's types, which may
++include bit fields. All of these are #undef'd at the end of this file,
++restoring the definitions in X.h. */
++
++#define Window CARD32
++#define Drawable CARD32
++#define Font CARD32
++#define Pixmap CARD32
++#define Cursor CARD32
++#define Colormap CARD32
++#define GContext CARD32
++#define Atom CARD32
++#define VisualID CARD32
++#define Time CARD32
++#define KeyCode CARD8
++#define KeySym CARD32
++
++/* End copied from Xproto.h */
++
+ #define sz_xNXGetControlParametersReq 4
+ #define sz_xNXGetCleanupParametersReq 4
+ #define sz_xNXGetImageParametersReq 4
+@@ -343,9 +367,9 @@
+ CARD8 dstDepth;
+ CARD32 srcLength B32;
+ CARD32 dstLength B32;
+- INT16 srcX B16, srcY B16;
++ CARD16 srcX B16, srcY B16;
+ CARD16 srcWidth B16, srcHeight B16;
+- INT16 dstX B16, dstY B16;
++ CARD16 dstX B16, dstY B16;
+ CARD16 dstWidth B16, dstHeight B16;
+ } xNXPutPackedImageReq;
+
+@@ -463,4 +487,20 @@
+ }
+ #endif
+
++/* Copied from Xproto.h */
++
++/* restore these definitions back to the typedefs in X.h */
++#undef Window
++#undef Drawable
++#undef Font
++#undef Pixmap
++#undef Cursor
++#undef Colormap
++#undef GContext
++#undef Atom
++#undef VisualID
++#undef Time
++#undef KeyCode
++#undef KeySym
++
+ #endif /* NXproto_H */
diff --git a/testing/nx-common/PKGBUILD b/testing/nx-common/PKGBUILD
new file mode 100644
index 000000000..bace88ed4
--- /dev/null
+++ b/testing/nx-common/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id: PKGBUILD 156626 2012-04-21 23:25:51Z andyrtr $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# Contributed: eliott <eliott@solarblue.net>, Andre Naumann <anaumann@SPARCed.org>
+
+pkgname=nx-common
+pkgver=3.5.0
+pkgrel=5
+pkgdesc="NoMachine NX common package for client and server"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://nomachine.com/"
+depends=('libjpeg-turbo' 'libpng' 'openssl' 'gcc-libs' 'libxcomp') # 'bash'
+makedepends=('xorg-server-devel' 'nx-headers')
+source=(http://64.34.161.181/download/$pkgver/sources/nxcompsh-$pkgver-1.tar.gz
+ http://64.34.161.181/download/$pkgver/sources/nxssh-$pkgver-2.tar.gz
+ nxcompsh-gcc43.patch)
+options=('!libtool')
+md5sums=('84ade443b79ea079380b754aba9d392e'
+ 'f52fcdb38e09f8dcfb9ff0344dfbbbd6'
+ 'b6c279654dac421fc3dd1a27d66ff53c')
+
+build() {
+ # nxcompsh
+ cd ${srcdir}/nxcompsh
+ patch -Np1 -i ${srcdir}/nxcompsh-gcc43.patch
+ ./configure --prefix=/usr/lib/nx
+ make
+
+ # nxssh
+ cd ${srcdir}/nxssh
+ sed -i "s:NX.h:nx/NX.h:g" clientloop.c packet.c proxy.c
+ ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
+ make
+}
+
+package() {
+ install -dm755 ${pkgdir}/usr/{bin,lib/nx}
+
+ # nxcompsh
+ cd ${srcdir}/nxcompsh
+ cp -a libXcompsh.so* ${pkgdir}/usr/lib/nx
+ cd ${pkgdir}/usr/lib/
+ ln -sv /usr/lib/nx/libXcompsh.so{,.3,.3.5.0} .
+ # ^ really needed?
+
+ # nxssh
+ cd ${srcdir}/nxssh
+ install -D -m755 nxssh ${pkgdir}/usr/lib/nx/bin/nxssh
+ cd ${pkgdir}/usr/bin
+ ln -sv /usr/lib/nx/bin/nxssh .
+}
diff --git a/testing/nx-common/nx-3.5.0-libpng15.patch b/testing/nx-common/nx-3.5.0-libpng15.patch
new file mode 100644
index 000000000..c8f2a9559
--- /dev/null
+++ b/testing/nx-common/nx-3.5.0-libpng15.patch
@@ -0,0 +1,30 @@
+diff -ur nxcomp.orig/Pgn.cpp nxcomp/Pgn.cpp
+--- nxcomp.orig/Pgn.cpp 2010-03-01 19:18:59.000000000 +0200
++++ nxcomp/Pgn.cpp 2011-09-13 16:35:12.000000000 +0300
+@@ -414,7 +414,7 @@
+
+ png_read_info(pngPtr, infoPtr);
+
+- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
++ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
+ {
+ png_set_expand(pngPtr);
+ }
+@@ -565,7 +565,7 @@
+
+ png_read_info( pngPtr, infoPtr ) ;
+
+- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
++ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
+ {
+ png_set_expand(pngPtr);
+ }
+@@ -709,7 +709,7 @@
+ png_read_info(pngPtr, infoPtr) ;
+
+
+- if (infoPtr -> color_type == PNG_COLOR_TYPE_PALETTE)
++ if (png_get_color_type(pngPtr, infoPtr) == PNG_COLOR_TYPE_PALETTE)
+ {
+ png_set_expand(pngPtr);
+ }
diff --git a/testing/nx-common/nxcompsh-gcc43.patch b/testing/nx-common/nxcompsh-gcc43.patch
new file mode 100644
index 000000000..681a0dab5
--- /dev/null
+++ b/testing/nx-common/nxcompsh-gcc43.patch
@@ -0,0 +1,19 @@
+--- nxcompsh/Misc.h~ 2007-06-04 13:39:49.000000000 +0200
++++ nxcompsh/Misc.h 2008-04-12 12:46:24.000000000 +0200
+@@ -18,10 +18,12 @@
+ #ifndef Misc_H
+ #define Misc_H
+
+-#include <iostream.h>
++#include <iostream>
+
+-#include <errno.h>
+-#include <string.h>
++#include <cerrno>
++#include <cstring>
++
++using namespace std;
+
+ //
+ // Error handling macros.
+
diff --git a/testing/nx/PKGBUILD b/testing/nx/PKGBUILD
new file mode 100644
index 000000000..6db55bcd4
--- /dev/null
+++ b/testing/nx/PKGBUILD
@@ -0,0 +1,108 @@
+# $Id: PKGBUILD 156624 2012-04-21 23:25:48Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgbase=nx
+pkgname=('libxcomp' 'nxproxy' 'nx-x11' 'nx-xcompext' 'nxagent' 'nx-headers')
+pkgver=3.5.0.12
+pkgrel=1
+arch=('i686' 'x86_64')
+url="http://wiki.x2go.org/"
+license=('GPL')
+options=('!makeflags')
+makedepends=('libjpeg-turbo' 'libpng' 'bash' 'perl' # runtime dependencies from subpackages
+ 'xproto' 'freetype2' 'libxaw' 'libxrender' 'libxp' 'libxpm' 'libxdamage' 'libxrandr' 'libxcomposite' 'libxtst' 'xorg-sessreg' # makedepends
+ )
+source=(http://code.x2go.org/releases/source/nx-libs/nx-libs_$pkgver-full.tar.gz
+ nx-x11.ld.so.conf.d)
+md5sums=('a2011e034a318016cf2260c30a567301'
+ 'f2ec60c7e2d81bef2f7292d2b33681a6')
+
+build() {
+ cd "${srcdir}/nx-libs_$pkgver"
+ make CONFIGURE="./configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --includedir=/usr/include"
+ # fake install
+ mkdir $srcdir/fakeinstall
+ make DESTDIR="$srcdir/fakeinstall" install
+}
+
+package_libxcomp() {
+
+ pkgdesc="NX X compression library"
+ depends=('libjpeg-turbo' 'libpng' 'gcc-libs')
+
+ install -dm755 ${pkgdir}/usr/lib/nx/lib
+ cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcomp.so* ${pkgdir}/usr/lib/nx/lib
+ cd ${pkgdir}/usr/lib/
+ ln -sv /usr/lib/nx/lib/libXcomp.so{,.3,.3.5.0} .
+}
+
+package_nxproxy() {
+
+ pkgdesc="NX proxy"
+ depends=('libxcomp')
+
+ install -dm755 ${pkgdir}/usr/{bin,share/man/man1,lib/nx}
+ cp -a ${srcdir}/fakeinstall/usr/bin/nxproxy ${pkgdir}/usr/lib/nx
+ # the wrapper
+ cp -a ${srcdir}/nx-libs_$pkgver/bin/nxproxy ${pkgdir}/usr/bin
+ chmod +x ${pkgdir}/usr/bin/nxproxy
+ cp -a ${srcdir}/fakeinstall/usr/share/man/man1/nxproxy.1 ${pkgdir}/usr/share/man/man1
+}
+
+package_nx-xcompext() {
+
+ pkgdesc="Xcompext/Xcompshad library for NX"
+ depends=('libxcomp' 'nx-x11')
+
+ install -dm755 ${pkgdir}/usr/lib/nx
+ #cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcompext.so* ${pkgdir}/usr/lib/nx
+ cp -a ${srcdir}/fakeinstall/usr/lib/nx/libXcompext.so.3.5.0 ${pkgdir}/usr/lib/nx
+ cd ${pkgdir}/usr/lib/nx
+ ln -sv libXcompext.so.3.5.0 libXcompext.so.3
+ ln -sv libXcompext.so.3.5.0 libXcompext.so
+ cd ${pkgdir}/usr/lib/
+ ln -sv /usr/lib/nx/libXcompext.so{,.3,.3.5.0} .
+}
+
+package_nx-x11() {
+
+ pkgdesc="NX-X11 lib for the NX framework"
+ depends=('libxcomp')
+
+ install -dm755 ${pkgdir}/{etc/ld.so.conf.d,usr/bin,usr/lib/nx}
+ cp -aR ${srcdir}/fakeinstall/usr/lib/NX3/lib*/nx/lib*.so* ${pkgdir}/usr/lib/nx
+
+ cp -a ${srcdir}/fakeinstall/usr/lib/NX3/bin/nxauth ${pkgdir}/usr/lib/nx
+ # the wrapper
+ cp -a ${srcdir}/nx-libs_$pkgver/bin/nxauth ${pkgdir}/usr/bin
+ chmod +x ${pkgdir}/usr/bin/nxauth
+
+ install -m 644 "$srcdir/nx-x11.ld.so.conf.d" "$pkgdir/etc/ld.so.conf.d/nx.conf"
+}
+
+package_nxagent() {
+
+ pkgdesc="NX X server based on Xnest"
+ depends=('nx-xcompext')
+
+ install -dm755 ${pkgdir}/usr/{bin,lib/nx}
+ cp -aR ${srcdir}/fakeinstall/usr/lib/NX3/bin/nxagent ${pkgdir}/usr/lib/nx
+ # the wrapper
+ cp -a ${srcdir}/nx-libs_$pkgver/bin/nxagent ${pkgdir}/usr/bin
+ chmod +x ${pkgdir}/usr/bin/nxagent
+ # required nxcompshad libs
+ cp -a ${srcdir}/nx-libs_$pkgver/nxcompshad/libXcompshad.so.3.5.0 ${pkgdir}/usr/lib/nx
+ cd ${pkgdir}/usr/lib/nx
+ ln -sv libXcompshad.so.3.5.0 libXcompshad.so.3
+ ln -sv libXcompshad.so.3.5.0 libXcompshad.so
+ cd ${pkgdir}/usr/lib/
+ ln -sv /usr/lib/nx/libXcompshad.so{,.3,.3.5.0} .
+}
+
+package_nx-headers() {
+
+ pkgdesc="NX headers"
+
+ install -dm755 ${pkgdir}/usr/include/nx
+ cp -aR ${srcdir}/fakeinstall/usr/include/nx/* ${pkgdir}/usr/include/nx
+}
diff --git a/testing/nx/nx-x11.ld.so.conf.d b/testing/nx/nx-x11.ld.so.conf.d
new file mode 100644
index 000000000..5d15cb6e2
--- /dev/null
+++ b/testing/nx/nx-x11.ld.so.conf.d
@@ -0,0 +1 @@
+/usr/lib/nx/