diff options
author | root <root@rshg054.dnsready.net> | 2012-04-23 00:01:26 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-04-23 00:01:26 +0000 |
commit | 076ac7347687744daa2ca386a67a4ad111c71415 (patch) | |
tree | b82f738122e9905a6dab679ab5f4cf7eb75e55f4 /testing | |
parent | af1e6c210b43ea6b8e043524edccb1d0befd257f (diff) |
Mon Apr 23 00:01:26 UTC 2012
Diffstat (limited to 'testing')
-rw-r--r-- | testing/freenx/PKGBUILD | 95 | ||||
-rw-r--r-- | testing/freenx/freenx-latest-svn.patch | 288 | ||||
-rw-r--r-- | testing/freenx/freenx-server-0.7.3-nxipp.patch | 17 | ||||
-rw-r--r-- | testing/freenx/freenx.install | 59 | ||||
-rw-r--r-- | testing/freenx/keymap.patch | 32 | ||||
-rw-r--r-- | testing/freenx/nxagent-startup.patch | 12 | ||||
-rw-r--r-- | testing/freenx/remove-dialog.patch | 32 | ||||
-rw-r--r-- | testing/gmime/PKGBUILD | 33 | ||||
-rw-r--r-- | testing/libgsf/PKGBUILD | 28 | ||||
-rw-r--r-- | testing/lv2/PKGBUILD | 6 | ||||
-rw-r--r-- | testing/nx-common/NXproto.h.64bit.diff | 66 | ||||
-rw-r--r-- | testing/nx-common/PKGBUILD | 51 | ||||
-rw-r--r-- | testing/nx-common/nx-3.5.0-libpng15.patch | 30 | ||||
-rw-r--r-- | testing/nx-common/nxcompsh-gcc43.patch | 19 | ||||
-rw-r--r-- | testing/nx/PKGBUILD | 108 | ||||
-rw-r--r-- | testing/nx/nx-x11.ld.so.conf.d | 1 |
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/ |