[X2Go-Commits] nx-libs.git - master (branch) updated: redist-server/3.5.0.21-9-g8c78f32

X2Go dev team git-admin at x2go.org
Fri Dec 6 13:57:27 CET 2013


The branch, master has been updated
       via  8c78f32049cec9d33e57e0efd9fa887a26c18463 (commit)
      from  b413799fb9ca297d7697b1e9ddb88b1fafd209d8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 8c78f32049cec9d33e57e0efd9fa887a26c18463
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Fri Dec 6 13:55:53 2013 +0100

    Ship nx-libs.spec (RPM package definitions) in upstream project. (Thanks to the Fedora package maintainers). File differs from the Fedora file already.

-----------------------------------------------------------------------

Summary of changes:
 debian/changelog |    3 +
 nx-libs.spec     | 2766 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 2769 insertions(+)
 create mode 100644 nx-libs.spec

The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index 4765224..3465cc7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,9 @@ nx-libs (2:3.5.0.22-0x2go1) UNRELEASED; urgency=low
   * debian/control:
     + Add libfreetype6-dev to Build-Depends: field.
   * Refresh patch: 600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch.
+  * Ship nx-libs.spec (RPM package definitions) in upstream project. (Thanks
+    to the Fedora package maintainers). File differs from the Fedora file
+    already.
 
   [ Clemens Lang ]
   * Add patch 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full.patch. Fix
diff --git a/nx-libs.spec b/nx-libs.spec
new file mode 100644
index 0000000..24d4602
--- /dev/null
+++ b/nx-libs.spec
@@ -0,0 +1,2766 @@
+%global _hardened_build 1
+
+Name:           nx-libs
+Version:        3.5.0.22
+Release:        0x2go1%{?dist}
+Summary:        NX X11 protocol compression libraries
+
+Group:          System Environment/Libraries
+License:        GPLv2+
+URL:            http://x2go.org/
+Source0:        http://code.x2go.org/releases/source/%{name}/%{name}-%{version}-full.tar.gz
+# git clone git://code.x2go.org/nx-libs
+# cd nx-libs
+# debian/roll-tarballs.sh HEAD server
+# mv _releases_/source/nx-libs/nx-libs-HEAD-full.tar.gz .
+#Source0:       ns-libs-HEAD-full.tar.gz
+# Remove bundled libraries
+#Patch0:         nx-libs-bundled.patch
+
+BuildRequires:  autoconf
+BuildRequires:  expat-devel
+BuildRequires:  fontconfig-devel
+BuildRequires:  freetype-devel
+BuildRequires:  libfontenc-devel
+BuildRequires:  libjpeg-devel
+BuildRequires:  libpng-devel
+BuildRequires:  libxml2-devel
+BuildRequires:  zlib-devel
+
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+This package provides the core nx-X11 libraries customized for
+nxagent/x2goagent.
+
+
+%package -n libNX_X11
+Group:          System Environment/Libraries
+Summary:        Core NX protocol client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+
+%package -n libNX_X11-devel
+Group:          Development/Libraries
+Summary:        Development files for the Core NX protocol library
+Requires:       libNX_X11%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11-devel
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX authorization protocol library
+Requires:       libNX_Xau%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau-devel
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau
+Group:          System Environment/Libraries
+Summary:        NX authorization protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+
+%package -n libNX_Xcomposite
+Group:          System Environment/Libraries
+Summary:        NX protocol Composite extension client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xcomposite
+The Composite extension causes a entire sub-tree of the window
+hierarchy to be rendered to an off-screen buffer. Applications can
+then take the contents of that buffer and do whatever they like. The
+off-screen buffer can be automatically merged into the parent window
+or merged by external programs, called compositing managers.
+
+
+%package -n libNX_Xdamage
+Group:          System Environment/Libraries
+Summary:        NX Damage Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdamage
+The X Damage Extension allows applications to track modified regions
+of drawables.
+
+
+%package -n libNX_Xdmcp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NXDM Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp-devel
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xdmcp
+Group:          System Environment/Libraries
+Summary:        NX Display Manager Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+
+%package -n libNX_Xext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Common Extensions library
+Requires:       libNX_Xext%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext-devel
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xext
+Group:          System Environment/Libraries
+Summary:        Common extensions to the NX protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+
+%package -n libNX_Xfixes-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Xfixes extension library
+Requires:       libNX_Xfixes%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes-devel
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xfixes
+Group:          System Environment/Libraries
+Summary:        NX miscellaneous "fixes" extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+
+%package -n libNX_Xinerama
+Group:          System Environment/Libraries
+Summary:        Xinerama extension to the NX Protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xinerama
+Xinerama is an extension to the X Window System which enables
+multi-headed X applications and window managers to use two or more
+physical displays as one large virtual display.
+
+
+%package -n libNX_Xpm-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Pixmap image file format library
+Requires:       libNX_Xpm%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm-devel
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xpm
+Group:          System Environment/Libraries
+Summary:        NX Pixmap image file format library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+
+%package -n libNX_Xrandr
+Group:          System Environment/Libraries
+Summary:        NX Resize, Rotate and Reflection extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrandr
+The X Resize, Rotate and Reflect Extension (RandR) allows clients to
+dynamically change X screens, so as to resize, to change the
+orientation and layout of the root window of a screen.
+
+
+%package -n libNX_Xrender-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Render Extension library
+Requires:       libNX_Xrender%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender-devel
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xrender
+Group:          System Environment/Libraries
+Summary:        NX Rendering Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+
+%package -n libNX_Xtst
+Group:          System Environment/Libraries
+Summary:        Xlib-based client API for the XTEST and RECORD extensions on NX
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xtst
+The XTEST extension is a minimal set of client and server extensions
+required to completely test the X11 server with no user intervention.
+This extension is not intended to support general journaling and
+playback of user actions.
+
+The RECORD extension supports the recording and reporting of all core
+X protocol and arbitrary X extension protocol.
+
+
+%package -n libXcomp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX differential compression library
+Requires:       libXcomp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel = %{version}-%{release}
+
+%description -n libXcomp-devel
+The NX differential compression library's development files.
+
+
+%package -n libXcomp
+Group:          System Environment/Libraries
+Summary:        NX differential compression library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcomp
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package contains the NX differential compression library for X11.
+
+
+%package -n libXcompext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX compression extensions library
+Requires:       libXcompext%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext-devel
+The NX compression extensions library's development files.
+
+
+%package -n libXcompext
+Group:          System Environment/Libraries
+Summary:        NX protocol compression extensions library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the library to support additional features to
+the core NX library.
+
+
+%package -n libXcompshad-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX session shadowing library
+Requires:       libXcompshad%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad-devel
+The NX session shadowing library's development files.
+
+
+%package -n libXcompshad
+Group:          System Environment/Libraries
+Summary:        NX session shadowing Library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the session shadowing library.
+
+
+%package devel
+Group:          Development/Libraries
+Summary:        Include files and libraries for NX development
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xfixes-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xpm-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xrender-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nx-proto-devel
+Group:          Development/Libraries
+Summary:        Include files for NX development
+
+%description -n nx-proto-devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nxagent
+Group:          Applications/System
+Summary:        NX agent
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxagent
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+nxagent is an agent providing NX transport of X sessions. The
+application is based on the well-known Xnest server. nxagent, like
+Xnest, is an X server for its own clients, and at the same time, an X
+client for a system's local X server.
+
+The main scope of nxagent is to eliminate X round-trips or transform
+them into asynchronous replies. nxagent works together with nxproxy.
+nxproxy itself does not make any effort to minimize round-trips by
+itself, this is demanded of nxagent.
+
+Being an X server, nxagent is able to resolve all the property/atoms
+related requests locally, ensuring that the most common source of
+round-trips are nearly reduced to zero.
+
+
+%package -n nxauth
+Group:          Applications/System
+Summary:        NX xauth
+
+%description -n nxauth
+This package provides the NX xauth binary.
+
+
+%package -n nxproxy
+Group:          Applications/System
+Summary:        NX proxy
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxproxy
+This package provides the NX proxy (client) binary.
+
+
+%package -n x2goagent
+Group:          Applications/System
+Summary:        X2go agent
+Requires:       nxagent
+Requires:       x2goserver
+
+%description -n x2goagent
+X2go agent functionality has been completely incorporated into
+nxagent's code base. If the nxagent binary is executed under the name
+of "x2goagent", the X2go functionalities get activated.
+
+The x2goagent package is a wrapper that activates X2Go branding in
+nxagent. Please refer to the nxagent package's description for more
+information on NX.
+
+
+%prep
+%setup -q
+# Install into /usr
+sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def
+# Use rpm optflags
+sed -i -e 's#-O3#%{optflags}#' nx-X11/config/cf/host.def
+# Use multilib dirs
+# We're installing binaries into %%{_libdir}/nx/bin rather than %%{_libexedir}/nx
+# becuase upstream expects libraries and binaries in the same directory
+sed -i -e 's,/lib/nx,/%{_lib}/nx,' Makefile nx-X11/config/cf/X11.tmpl
+sed -i -e 's,/lib/x2go,/%{_lib}/x2go,' Makefile
+sed -i -e 's,/usr/lib/,/usr/%{_lib}/,' bin/*
+# Fix FSF address
+find -name LICENSE | xargs sed -i \
+  -e 's/59 Temple Place/51 Franklin Street/' -e 's/Suite 330/Fifth Floor/' \
+  -e 's/MA  02111-1307/MA  02110-1301/'
+# Fix source permissions
+find -type f -name '*.[hc]' | xargs chmod -x
+
+# Bundled nx-X11/extras
+# Xpm - Is needed and needs to get linked to libXcomp
+# Mesa - Used by the X server
+
+# Xcursor - Other code still references files in it
+# Xfont - Statically linked to nxarget, others?
+# Xpm
+rm -r nx-X11/lib/{FS,ICE,SM,Xaw,Xft,Xt,Xmu,Xmuu}
+
+
+%build
+cat >"my_configure" <<'EOF'
+%configure
+EOF
+chmod a+x my_configure;
+export SHLIBGLOBALSFLAGS="%{__global_ldflags}"
+make %{?_smp_mflags} CONFIGURE="$PWD/my_configure" USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx
+
+
+%install
+make install \
+        DESTDIR=%{buildroot} \
+        PREFIX=%{_prefix} \
+        USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx \
+        INSTALL_DIR="install -dm0755" \
+        INSTALL_FILE="install -pm0644" \
+        INSTALL_PROGRAM="install -pm0755"
+
+# Remove static libs
+rm %{buildroot}%{_libdir}/nx/*.a
+
+# Make sure x2goagent is linked relative and on 64-bit
+mkdir -p %{buildroot}%{_libdir}/x2go/bin
+ln -sf ../../nx/bin/nxagent %{buildroot}%{_libdir}/x2go/bin/x2goagent
+
+# Fix permissions on shared libraries
+chmod 755  %{buildroot}%{_libdir}/nx/{,X11/}lib*.so*
+
+# Linker
+mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
+echo %{_libdir}/nx > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+echo %{_libdir}/nx/X11 >> %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+
+#Remove extras, GL, and other unneeded headers
+rm -r %{buildroot}%{_includedir}/nx/{extras,GL}
+rm -r %{buildroot}%{_includedir}/nx/X11/bitmaps
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XInput.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XK*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/*Xv*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/Xtrans
+
+
+%post -p /sbin/ldconfig
+%post -n libNX_X11 -p /sbin/ldconfig
+%post -n libNX_Xau -p /sbin/ldconfig
+%post -n libNX_Xcomposite -p /sbin/ldconfig
+%post -n libNX_Xdamage -p /sbin/ldconfig
+%post -n libNX_Xdmcp -p /sbin/ldconfig
+%post -n libNX_Xext -p /sbin/ldconfig
+%post -n libNX_Xfixes -p /sbin/ldconfig
+%post -n libNX_Xinerama -p /sbin/ldconfig
+%post -n libNX_Xpm -p /sbin/ldconfig
+%post -n libNX_Xrandr -p /sbin/ldconfig
+%post -n libNX_Xrender -p /sbin/ldconfig
+%post -n libNX_Xtst -p /sbin/ldconfig
+%post -n libXcomp -p /sbin/ldconfig
+%post -n libXcompext -p /sbin/ldconfig
+%post -n libXcompshad -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+%postun -n libNX_X11 -p /sbin/ldconfig
+%postun -n libNX_Xau -p /sbin/ldconfig
+%postun -n libNX_Xcomposite -p /sbin/ldconfig
+%postun -n libNX_Xdamage -p /sbin/ldconfig
+%postun -n libNX_Xdmcp -p /sbin/ldconfig
+%postun -n libNX_Xext -p /sbin/ldconfig
+%postun -n libNX_Xfixes -p /sbin/ldconfig
+%postun -n libNX_Xinerama -p /sbin/ldconfig
+%postun -n libNX_Xpm -p /sbin/ldconfig
+%postun -n libNX_Xrandr -p /sbin/ldconfig
+%postun -n libNX_Xrender -p /sbin/ldconfig
+%postun -n libNX_Xtst -p /sbin/ldconfig
+%postun -n libXcomp -p /sbin/ldconfig
+%postun -n libXcompext -p /sbin/ldconfig
+%postun -n libXcompshad -p /sbin/ldconfig
+
+%files
+%doc nx-X11/{COPYING,LICENSE,README}
+%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+%dir %{_libdir}/nx
+%{_datadir}/nx/SecurityPolicy
+
+%files -n libNX_X11
+%{_libdir}/nx/X11/libNX_X11.so.6*
+
+%files -n libNX_X11-devel
+%{_libdir}/nx/X11/libNX_X11.so
+%dir %{_includedir}/nx
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/ImUtil.h
+%{_includedir}/nx/X11/XKBlib.h
+%{_includedir}/nx/X11/Xcms.h
+%{_includedir}/nx/X11/Xlib.h
+%{_includedir}/nx/X11/XlibConf.h
+%{_includedir}/nx/X11/Xlibint.h
+%{_includedir}/nx/X11/Xlocale.h
+%{_includedir}/nx/X11/Xregion.h
+%{_includedir}/nx/X11/Xresource.h
+%{_includedir}/nx/X11/Xutil.h
+%{_includedir}/nx/X11/cursorfont.h
+
+%files -n libNX_Xau-devel
+%{_libdir}/nx/X11/libNX_Xau.so
+%{_includedir}/nx/X11/Xauth.h
+
+%files -n libNX_Xau
+%{_libdir}/nx/X11/libNX_Xau.so.6*
+
+%files -n libNX_Xcomposite
+%{_libdir}/nx/X11/libNX_Xcomposite.so.1*
+
+%files -n libNX_Xdamage
+%{_libdir}/nx/X11/libNX_Xdamage.so.1*
+
+%files -n libNX_Xdmcp-devel
+%{_libdir}/nx/X11/libNX_Xdmcp.so
+%{_includedir}/nx/X11/Xdmcp.h
+
+%files -n libNX_Xdmcp
+%{_libdir}/nx/X11/libNX_Xdmcp.so.6*
+
+%files -n libNX_Xext-devel
+%{_libdir}/nx/X11/libNX_Xext.so
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/MITMisc.h
+%{_includedir}/nx/X11/extensions/XEVI.h
+%{_includedir}/nx/X11/extensions/XEVIstr.h
+%{_includedir}/nx/X11/extensions/XLbx.h
+%{_includedir}/nx/X11/extensions/XShm.h
+%{_includedir}/nx/X11/extensions/Xag.h
+%{_includedir}/nx/X11/extensions/Xagsrv.h
+%{_includedir}/nx/X11/extensions/Xagstr.h
+%{_includedir}/nx/X11/extensions/Xcup.h
+%{_includedir}/nx/X11/extensions/Xcupstr.h
+%{_includedir}/nx/X11/extensions/Xdbe.h
+%{_includedir}/nx/X11/extensions/Xdbeproto.h
+%{_includedir}/nx/X11/extensions/Xext.h
+%{_includedir}/nx/X11/extensions/dpms.h
+%{_includedir}/nx/X11/extensions/dpmsstr.h
+%{_includedir}/nx/X11/extensions/extutil.h
+%{_includedir}/nx/X11/extensions/lbxstr.h
+%{_includedir}/nx/X11/extensions/mitmiscstr.h
+%{_includedir}/nx/X11/extensions/multibuf.h
+%{_includedir}/nx/X11/extensions/multibufst.h
+%{_includedir}/nx/X11/extensions/security.h
+%{_includedir}/nx/X11/extensions/securstr.h
+%{_includedir}/nx/X11/extensions/shape.h
+%{_includedir}/nx/X11/extensions/sync.h
+%{_includedir}/nx/X11/extensions/xtestext1.h
+%{_includedir}/nx/X11/extensions/xteststr.h
+
+%files -n libNX_Xext
+%{_libdir}/nx/X11/libNX_Xext.so.6*
+
+%files -n libNX_Xfixes-devel
+%{_libdir}/nx/X11/libNX_Xfixes.so
+%{_includedir}/nx/X11/extensions/Xfixes.h
+
+%files -n libNX_Xfixes
+%{_libdir}/nx/X11/libNX_Xfixes.so.3*
+
+%files -n libNX_Xinerama
+%{_libdir}/nx/X11/libNX_Xinerama.so.1*
+
+%files -n libNX_Xpm-devel
+%{_libdir}/nx/X11/libNX_Xpm.so
+%{_includedir}/nx/X11/xpm.h
+
+%files -n libNX_Xpm
+%{_libdir}/nx/X11/libNX_Xpm.so.4*
+
+%files -n libNX_Xrandr
+%{_libdir}/nx/X11/libNX_Xrandr.so.2*
+
+%files -n libNX_Xrender-devel
+%{_libdir}/nx/X11/libNX_Xrender.so
+%{_includedir}/nx/X11/extensions/Xrender.h
+
+%files -n libNX_Xrender
+%{_libdir}/nx/X11/libNX_Xrender.so.1*
+
+%files -n libNX_Xtst
+%{_libdir}/nx/X11/libNX_Xtst.so.6*
+
+%files -n libXcomp-devel
+%_libdir/nx/libXcomp.so
+%{_includedir}/nx/MD5.h
+%{_includedir}/nx/NX.h
+%{_includedir}/nx/NXalert.h
+%{_includedir}/nx/NXmitshm.h
+%{_includedir}/nx/NXpack.h
+%{_includedir}/nx/NXproto.h
+%{_includedir}/nx/NXrender.h
+%{_includedir}/nx/NXvars.h
+
+%files -n libXcomp
+%doc nxcomp/{COPYING,LICENSE,README}
+%_libdir/nx/libXcomp.so.3*
+
+%files -n libXcompext-devel
+%_libdir/nx/libXcompext.so
+%{_includedir}/nx/NXlib.h
+%{_includedir}/nx/NXlibint.h
+
+%files -n libXcompext
+%doc nxcompext/{COPYING,LICENSE,README}
+%_libdir/nx/libXcompext.so.3*
+
+%files -n libXcompshad-devel
+%_libdir/nx/libXcompshad.so
+%{_includedir}/nx/Core.h
+%{_includedir}/nx/Input.h
+%{_includedir}/nx/Logger.h
+%{_includedir}/nx/Manager.h
+%{_includedir}/nx/Misc.h
+%{_includedir}/nx/Poller.h
+%{_includedir}/nx/Regions.h
+%{_includedir}/nx/Shadow.h
+%{_includedir}/nx/Updater.h
+%{_includedir}/nx/Win.h
+%{_includedir}/nx/X11.h
+
+%files -n libXcompshad
+%doc nxcompshad/{CHANGELOG,COPYING,LICENSE}
+%_libdir/nx/libXcompshad.so.3*
+
+%files devel
+%{_libdir}/nx/X11/libNX_Xcomposite.so
+%{_libdir}/nx/X11/libNX_Xdamage.so
+%{_libdir}/nx/X11/libNX_Xinerama.so
+%{_libdir}/nx/X11/libNX_Xrandr.so
+%{_libdir}/nx/X11/libNX_Xtst.so
+%{_includedir}/nx/X11/X10.h
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/XRes.h
+%{_includedir}/nx/X11/extensions/XTest.h
+%{_includedir}/nx/X11/extensions/Xcomposite.h
+%{_includedir}/nx/X11/extensions/Xdamage.h
+%{_includedir}/nx/X11/extensions/Xevie.h
+%{_includedir}/nx/X11/extensions/Xinerama.h
+%{_includedir}/nx/X11/extensions/Xrandr.h
+%{_includedir}/nx/X11/extensions/dmxext.h
+%{_includedir}/nx/X11/extensions/lbxbuf.h
+%{_includedir}/nx/X11/extensions/lbxbufstr.h
+%{_includedir}/nx/X11/extensions/lbxdeltastr.h
+%{_includedir}/nx/X11/extensions/lbximage.h
+%{_includedir}/nx/X11/extensions/lbxopts.h
+%{_includedir}/nx/X11/extensions/lbxzlib.h
+%{_includedir}/nx/X11/extensions/panoramiXext.h
+%{_includedir}/nx/X11/extensions/record.h
+%{_includedir}/nx/X11/extensions/xf86dga1.h
+%{_includedir}/nx/X11/extensions/xf86vmode.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/bdfint.h
+%{_includedir}/nx/X11/fonts/bitmap.h
+%{_includedir}/nx/X11/fonts/bufio.h
+%{_includedir}/nx/X11/fonts/fntfil.h
+%{_includedir}/nx/X11/fonts/fntfilio.h
+%{_includedir}/nx/X11/fonts/fntfilst.h
+%{_includedir}/nx/X11/fonts/fontencc.h
+%{_includedir}/nx/X11/fonts/fontmisc.h
+%{_includedir}/nx/X11/fonts/fontmod.h
+%{_includedir}/nx/X11/fonts/fontshow.h
+%{_includedir}/nx/X11/fonts/fontutil.h
+%{_includedir}/nx/X11/fonts/fontxlfd.h
+%{_includedir}/nx/X11/fonts/pcf.h
+%{_includedir}/nx/X11/misc.h
+%{_includedir}/nx/X11/os.h
+
+%files -n nx-proto-devel
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/DECkeysym.h
+%{_includedir}/nx/X11/HPkeysym.h
+%{_includedir}/nx/X11/Sunkeysym.h
+%{_includedir}/nx/X11/X.h
+%{_includedir}/nx/X11/XF86keysym.h
+%{_includedir}/nx/X11/XWDFile.h
+%{_includedir}/nx/X11/Xalloca.h
+%{_includedir}/nx/X11/Xarch.h
+%{_includedir}/nx/X11/Xatom.h
+%{_includedir}/nx/X11/Xdefs.h
+%{_includedir}/nx/X11/Xfuncproto.h
+%{_includedir}/nx/X11/Xfuncs.h
+%{_includedir}/nx/X11/Xmd.h
+%{_includedir}/nx/X11/Xos.h
+%{_includedir}/nx/X11/Xos_r.h
+%{_includedir}/nx/X11/Xosdefs.h
+%{_includedir}/nx/X11/Xpoll.h
+%{_includedir}/nx/X11/Xproto.h
+%{_includedir}/nx/X11/Xprotostr.h
+%{_includedir}/nx/X11/Xthreads.h
+%{_includedir}/nx/X11/ap_keysym.h
+%{_includedir}/nx/X11/keysym.h
+%{_includedir}/nx/X11/keysymdef.h
+%{_includedir}/nx/X11/extensions/Print.h
+%{_includedir}/nx/X11/extensions/Printstr.h
+%{_includedir}/nx/X11/extensions/XI.h
+%{_includedir}/nx/X11/extensions/XIproto.h
+%{_includedir}/nx/X11/extensions/XResproto.h
+%{_includedir}/nx/X11/extensions/Xeviestr.h
+%{_includedir}/nx/X11/extensions/bigreqstr.h
+%{_includedir}/nx/X11/extensions/composite.h
+%{_includedir}/nx/X11/extensions/compositeproto.h
+%{_includedir}/nx/X11/extensions/damageproto.h
+%{_includedir}/nx/X11/extensions/damagewire.h
+%{_includedir}/nx/X11/extensions/dmxproto.h
+%{_includedir}/nx/X11/extensions/panoramiXproto.h
+%{_includedir}/nx/X11/extensions/randr.h
+%{_includedir}/nx/X11/extensions/randrproto.h
+%{_includedir}/nx/X11/extensions/recordstr.h
+%{_includedir}/nx/X11/extensions/render.h
+%{_includedir}/nx/X11/extensions/renderproto.h
+%{_includedir}/nx/X11/extensions/shapestr.h
+%{_includedir}/nx/X11/extensions/shmstr.h
+%{_includedir}/nx/X11/extensions/syncstr.h
+%{_includedir}/nx/X11/extensions/xcmiscstr.h
+%{_includedir}/nx/X11/extensions/xf86bigfont.h
+%{_includedir}/nx/X11/extensions/xf86bigfstr.h
+%{_includedir}/nx/X11/extensions/xf86dga.h
+%{_includedir}/nx/X11/extensions/xf86dga1str.h
+%{_includedir}/nx/X11/extensions/xf86dgastr.h
+%{_includedir}/nx/X11/extensions/xf86misc.h
+%{_includedir}/nx/X11/extensions/xf86mscstr.h
+%{_includedir}/nx/X11/extensions/xf86vmstr.h
+%{_includedir}/nx/X11/extensions/xfixesproto.h
+%{_includedir}/nx/X11/extensions/xfixeswire.h
+%{_includedir}/nx/X11/extensions/xtrapbits.h
+%{_includedir}/nx/X11/extensions/xtrapddmi.h
+%{_includedir}/nx/X11/extensions/xtrapdi.h
+%{_includedir}/nx/X11/extensions/xtrapemacros.h
+%{_includedir}/nx/X11/extensions/xtraplib.h
+%{_includedir}/nx/X11/extensions/xtraplibp.h
+%{_includedir}/nx/X11/extensions/xtrapproto.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/FS.h
+%{_includedir}/nx/X11/fonts/FSproto.h
+%{_includedir}/nx/X11/fonts/font.h
+%{_includedir}/nx/X11/fonts/fontstruct.h
+%{_includedir}/nx/X11/fonts/fsmasks.h
+
+%files -n nxagent
+%dir %{_sysconfdir}/nxagent
+%config(noreplace) %{_sysconfdir}/nxagent/keystrokes.cfg
+%{_bindir}/nxagent
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxagent
+
+%files -n nxauth
+%{_bindir}/nxauth
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxauth
+
+%files -n nxproxy
+%{_bindir}/nxproxy
+%{_mandir}/man1/nxproxy.1*
+
+%files -n x2goagent
+#%%{_sysconfdir}/x2go is owned by x2goserver, which this requires
+%config(noreplace) %{_sysconfdir}/x2go/keystrokes.cfg
+%{_bindir}/x2goagent
+%{_libdir}/x2go/bin/x2goagent
+%{_datadir}/pixmaps/x2go.xpm
+%{_datadir}/x2go/
+
+
+%changelog
+* Thu Oct 10 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-4
+- Do not build/ship unneeded xlib18n libs
+
+* Wed Sep 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-3
+- Fix nx obsoletes version
+
+* Tue Sep 3 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-2
+- Have nxagent and nxproxy also obsolete/provide nx
+
+* Fri Aug 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-1
+- Update to 3.5.0.21
+- Many bundled libs removed upstream
+- Drop initgroups patch applied upstream
+- Fix macro in comments
+- Remove execute permissions from source files
+- Add %%postun ldconfig scripts
+- Rename nx-devel nx-libs-devel
+
+* Thu Aug 29 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-7
+- Add patch to call initgroups()
+
+* Thu Jul 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-6
+- Drop building and/or shipping a bunch of unneeded libraries
+
+* Thu Jun 13 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-5
+- Add more explicit verioned requires
+- Drop unnecessary directory ownership by sub-packages
+- Remove many bundled libraries
+
+* Tue Jun 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-4
+- Fix 775 library permissions
+- Move nx/X11 .so files to -devel
+- Fix nx obsoletes
+- Mark ld.so.conf.d files config(noreplace)
+- Fix requires
+
+* Fri May 31 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-3
+- Fix quoting when creating my_configure script
+
+* Thu May 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-2
+- Use optflags for compiling, __global_ldflags for linking
+
+* Thu Apr 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-1
+- Update to 3.5.0.20
+
+* Mon Mar 25 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.18-1
+- Initial package
+%global _hardened_build 1
+
+Name:           nx-libs
+Version:        3.5.0.21
+Release:        4%{?dist}
+Summary:        NX X11 protocol compression libraries
+
+Group:          System Environment/Libraries
+License:        GPLv2+
+URL:            http://x2go.org/
+Source0:        http://code.x2go.org/releases/source/%{name}/%{name}-%{version}-full.tar.gz
+# git clone git://code.x2go.org/nx-libs
+# cd nx-libs
+# debian/roll-tarballs.sh HEAD server
+# mv _releases_/source/nx-libs/nx-libs-HEAD-full.tar.gz .
+#Source0:       ns-libs-HEAD-full.tar.gz
+# Remove bundled libraries
+Patch0:         nx-libs-bundled.patch
+
+BuildRequires:  autoconf
+BuildRequires:  expat-devel
+BuildRequires:  fontconfig-devel
+BuildRequires:  freetype-devel
+BuildRequires:  libfontenc-devel
+BuildRequires:  libjpeg-devel
+BuildRequires:  libpng-devel
+BuildRequires:  libxml2-devel
+BuildRequires:  zlib-devel
+
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+This package provides the core nx-X11 libraries customized for
+nxagent/x2goagent.
+
+
+%package -n libNX_X11
+Group:          System Environment/Libraries
+Summary:        Core NX protocol client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+
+%package -n libNX_X11-devel
+Group:          Development/Libraries
+Summary:        Development files for the Core NX protocol library
+Requires:       libNX_X11%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11-devel
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX authorization protocol library
+Requires:       libNX_Xau%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau-devel
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau
+Group:          System Environment/Libraries
+Summary:        NX authorization protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+
+%package -n libNX_Xcomposite
+Group:          System Environment/Libraries
+Summary:        NX protocol Composite extension client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xcomposite
+The Composite extension causes a entire sub-tree of the window
+hierarchy to be rendered to an off-screen buffer. Applications can
+then take the contents of that buffer and do whatever they like. The
+off-screen buffer can be automatically merged into the parent window
+or merged by external programs, called compositing managers.
+
+
+%package -n libNX_Xdamage
+Group:          System Environment/Libraries
+Summary:        NX Damage Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdamage
+The X Damage Extension allows applications to track modified regions
+of drawables.
+
+
+%package -n libNX_Xdmcp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NXDM Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp-devel
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xdmcp
+Group:          System Environment/Libraries
+Summary:        NX Display Manager Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+
+%package -n libNX_Xext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Common Extensions library
+Requires:       libNX_Xext%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext-devel
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xext
+Group:          System Environment/Libraries
+Summary:        Common extensions to the NX protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+
+%package -n libNX_Xfixes-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Xfixes extension library
+Requires:       libNX_Xfixes%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes-devel
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xfixes
+Group:          System Environment/Libraries
+Summary:        NX miscellaneous "fixes" extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+
+%package -n libNX_Xinerama
+Group:          System Environment/Libraries
+Summary:        Xinerama extension to the NX Protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xinerama
+Xinerama is an extension to the X Window System which enables
+multi-headed X applications and window managers to use two or more
+physical displays as one large virtual display.
+
+
+%package -n libNX_Xpm-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Pixmap image file format library
+Requires:       libNX_Xpm%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm-devel
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xpm
+Group:          System Environment/Libraries
+Summary:        NX Pixmap image file format library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+
+%package -n libNX_Xrandr
+Group:          System Environment/Libraries
+Summary:        NX Resize, Rotate and Reflection extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrandr
+The X Resize, Rotate and Reflect Extension (RandR) allows clients to
+dynamically change X screens, so as to resize, to change the
+orientation and layout of the root window of a screen.
+
+
+%package -n libNX_Xrender-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Render Extension library
+Requires:       libNX_Xrender%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender-devel
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xrender
+Group:          System Environment/Libraries
+Summary:        NX Rendering Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+
+%package -n libNX_Xtst
+Group:          System Environment/Libraries
+Summary:        Xlib-based client API for the XTEST and RECORD extensions on NX
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xtst
+The XTEST extension is a minimal set of client and server extensions
+required to completely test the X11 server with no user intervention.
+This extension is not intended to support general journaling and
+playback of user actions.
+
+The RECORD extension supports the recording and reporting of all core
+X protocol and arbitrary X extension protocol.
+
+
+%package -n libXcomp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX differential compression library
+Requires:       libXcomp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel = %{version}-%{release}
+
+%description -n libXcomp-devel
+The NX differential compression library's development files.
+
+
+%package -n libXcomp
+Group:          System Environment/Libraries
+Summary:        NX differential compression library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcomp
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package contains the NX differential compression library for X11.
+
+
+%package -n libXcompext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX compression extensions library
+Requires:       libXcompext%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext-devel
+The NX compression extensions library's development files.
+
+
+%package -n libXcompext
+Group:          System Environment/Libraries
+Summary:        NX protocol compression extensions library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the library to support additional features to
+the core NX library.
+
+
+%package -n libXcompshad-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX session shadowing library
+Requires:       libXcompshad%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad-devel
+The NX session shadowing library's development files.
+
+
+%package -n libXcompshad
+Group:          System Environment/Libraries
+Summary:        NX session shadowing Library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the session shadowing library.
+
+
+%package devel
+Group:          Development/Libraries
+Summary:        Include files and libraries for NX development
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xfixes-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xpm-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xrender-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nx-proto-devel
+Group:          Development/Libraries
+Summary:        Include files for NX development
+
+%description -n nx-proto-devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nxagent
+Group:          Applications/System
+Summary:        NX agent
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxagent
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+nxagent is an agent providing NX transport of X sessions. The
+application is based on the well-known Xnest server. nxagent, like
+Xnest, is an X server for its own clients, and at the same time, an X
+client for a system's local X server.
+
+The main scope of nxagent is to eliminate X round-trips or transform
+them into asynchronous replies. nxagent works together with nxproxy.
+nxproxy itself does not make any effort to minimize round-trips by
+itself, this is demanded of nxagent.
+
+Being an X server, nxagent is able to resolve all the property/atoms
+related requests locally, ensuring that the most common source of
+round-trips are nearly reduced to zero.
+
+
+%package -n nxauth
+Group:          Applications/System
+Summary:        NX xauth
+
+%description -n nxauth
+This package provides the NX xauth binary.
+
+
+%package -n nxproxy
+Group:          Applications/System
+Summary:        NX proxy
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxproxy
+This package provides the NX proxy (client) binary.
+
+
+%package -n x2goagent
+Group:          Applications/System
+Summary:        X2go agent
+Requires:       nxagent
+Requires:       x2goserver
+
+%description -n x2goagent
+X2go agent functionality has been completely incorporated into
+nxagent's code base. If the nxagent binary is executed under the name
+of "x2goagent", the X2go functionalities get activated.
+
+The x2goagent package is a wrapper that activates X2Go branding in
+nxagent. Please refer to the nxagent package's description for more
+information on NX.
+
+
+%prep
+%setup -q
+%patch0 -p1 -b .bundled
+# Install into /usr
+sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def
+# Use rpm optflags
+sed -i -e 's#-O3#%{optflags}#' nx-X11/config/cf/host.def
+# Use multilib dirs
+# We're installing binaries into %%{_libdir}/nx/bin rather than %%{_libexedir}/nx
+# becuase upstream expects libraries and binaries in the same directory
+sed -i -e 's,/lib/nx,/%{_lib}/nx,' Makefile nx-X11/config/cf/X11.tmpl
+sed -i -e 's,/lib/x2go,/%{_lib}/x2go,' Makefile
+sed -i -e 's,/usr/lib/,/usr/%{_lib}/,' bin/*
+# Fix FSF address
+find -name LICENSE | xargs sed -i \
+  -e 's/59 Temple Place/51 Franklin Street/' -e 's/Suite 330/Fifth Floor/' \
+  -e 's/MA  02111-1307/MA  02110-1301/'
+# Fix source permissions
+find -type f -name '*.[hc]' | xargs chmod -x
+
+# Bundled nx-X11/extras
+# Xpm - Is needed and needs to get linked to libXcomp
+# Mesa - Used by the X server
+
+# Xcursor - Other code still references files in it
+# Xfont - Statically linked to nxarget, others?
+# Xpm
+rm -r nx-X11/lib/{FS,ICE,SM,Xaw,Xft,Xt,Xmu,Xmuu}
+
+
+%build
+cat >"my_configure" <<'EOF'
+%configure
+EOF
+chmod a+x my_configure;
+export SHLIBGLOBALSFLAGS="%{__global_ldflags}"
+make %{?_smp_mflags} CONFIGURE="$PWD/my_configure" USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx
+
+
+%install
+make install \
+        DESTDIR=%{buildroot} \
+        PREFIX=%{_prefix} \
+        USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx \
+        INSTALL_DIR="install -dm0755" \
+        INSTALL_FILE="install -pm0644" \
+        INSTALL_PROGRAM="install -pm0755"
+
+# Remove static libs
+rm %{buildroot}%{_libdir}/nx/*.a
+
+# Make sure x2goagent is linked relative and on 64-bit
+mkdir -p %{buildroot}%{_libdir}/x2go/bin
+ln -sf ../../nx/bin/nxagent %{buildroot}%{_libdir}/x2go/bin/x2goagent
+
+# Fix permissions on shared libraries
+chmod 755  %{buildroot}%{_libdir}/nx/{,X11/}lib*.so*
+
+# Linker
+mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
+echo %{_libdir}/nx > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+echo %{_libdir}/nx/X11 >> %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+
+#Remove extras, GL, and other unneeded headers
+rm -r %{buildroot}%{_includedir}/nx/{extras,GL}
+rm -r %{buildroot}%{_includedir}/nx/X11/bitmaps
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XInput.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XK*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/*Xv*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/Xtrans
+
+
+%post -p /sbin/ldconfig
+%post -n libNX_X11 -p /sbin/ldconfig
+%post -n libNX_Xau -p /sbin/ldconfig
+%post -n libNX_Xcomposite -p /sbin/ldconfig
+%post -n libNX_Xdamage -p /sbin/ldconfig
+%post -n libNX_Xdmcp -p /sbin/ldconfig
+%post -n libNX_Xext -p /sbin/ldconfig
+%post -n libNX_Xfixes -p /sbin/ldconfig
+%post -n libNX_Xinerama -p /sbin/ldconfig
+%post -n libNX_Xpm -p /sbin/ldconfig
+%post -n libNX_Xrandr -p /sbin/ldconfig
+%post -n libNX_Xrender -p /sbin/ldconfig
+%post -n libNX_Xtst -p /sbin/ldconfig
+%post -n libXcomp -p /sbin/ldconfig
+%post -n libXcompext -p /sbin/ldconfig
+%post -n libXcompshad -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+%postun -n libNX_X11 -p /sbin/ldconfig
+%postun -n libNX_Xau -p /sbin/ldconfig
+%postun -n libNX_Xcomposite -p /sbin/ldconfig
+%postun -n libNX_Xdamage -p /sbin/ldconfig
+%postun -n libNX_Xdmcp -p /sbin/ldconfig
+%postun -n libNX_Xext -p /sbin/ldconfig
+%postun -n libNX_Xfixes -p /sbin/ldconfig
+%postun -n libNX_Xinerama -p /sbin/ldconfig
+%postun -n libNX_Xpm -p /sbin/ldconfig
+%postun -n libNX_Xrandr -p /sbin/ldconfig
+%postun -n libNX_Xrender -p /sbin/ldconfig
+%postun -n libNX_Xtst -p /sbin/ldconfig
+%postun -n libXcomp -p /sbin/ldconfig
+%postun -n libXcompext -p /sbin/ldconfig
+%postun -n libXcompshad -p /sbin/ldconfig
+
+%files
+%doc nx-X11/{COPYING,LICENSE,README}
+%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+%dir %{_libdir}/nx
+%{_datadir}/nx/SecurityPolicy
+
+%files -n libNX_X11
+%{_libdir}/nx/X11/libNX_X11.so.6*
+
+%files -n libNX_X11-devel
+%{_libdir}/nx/X11/libNX_X11.so
+%dir %{_includedir}/nx
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/ImUtil.h
+%{_includedir}/nx/X11/XKBlib.h
+%{_includedir}/nx/X11/Xcms.h
+%{_includedir}/nx/X11/Xlib.h
+%{_includedir}/nx/X11/XlibConf.h
+%{_includedir}/nx/X11/Xlibint.h
+%{_includedir}/nx/X11/Xlocale.h
+%{_includedir}/nx/X11/Xregion.h
+%{_includedir}/nx/X11/Xresource.h
+%{_includedir}/nx/X11/Xutil.h
+%{_includedir}/nx/X11/cursorfont.h
+
+%files -n libNX_Xau-devel
+%{_libdir}/nx/X11/libNX_Xau.so
+%{_includedir}/nx/X11/Xauth.h
+
+%files -n libNX_Xau
+%{_libdir}/nx/X11/libNX_Xau.so.6*
+
+%files -n libNX_Xcomposite
+%{_libdir}/nx/X11/libNX_Xcomposite.so.1*
+
+%files -n libNX_Xdamage
+%{_libdir}/nx/X11/libNX_Xdamage.so.1*
+
+%files -n libNX_Xdmcp-devel
+%{_libdir}/nx/X11/libNX_Xdmcp.so
+%{_includedir}/nx/X11/Xdmcp.h
+
+%files -n libNX_Xdmcp
+%{_libdir}/nx/X11/libNX_Xdmcp.so.6*
+
+%files -n libNX_Xext-devel
+%{_libdir}/nx/X11/libNX_Xext.so
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/MITMisc.h
+%{_includedir}/nx/X11/extensions/XEVI.h
+%{_includedir}/nx/X11/extensions/XEVIstr.h
+%{_includedir}/nx/X11/extensions/XLbx.h
+%{_includedir}/nx/X11/extensions/XShm.h
+%{_includedir}/nx/X11/extensions/Xag.h
+%{_includedir}/nx/X11/extensions/Xagsrv.h
+%{_includedir}/nx/X11/extensions/Xagstr.h
+%{_includedir}/nx/X11/extensions/Xcup.h
+%{_includedir}/nx/X11/extensions/Xcupstr.h
+%{_includedir}/nx/X11/extensions/Xdbe.h
+%{_includedir}/nx/X11/extensions/Xdbeproto.h
+%{_includedir}/nx/X11/extensions/Xext.h
+%{_includedir}/nx/X11/extensions/dpms.h
+%{_includedir}/nx/X11/extensions/dpmsstr.h
+%{_includedir}/nx/X11/extensions/extutil.h
+%{_includedir}/nx/X11/extensions/lbxstr.h
+%{_includedir}/nx/X11/extensions/mitmiscstr.h
+%{_includedir}/nx/X11/extensions/multibuf.h
+%{_includedir}/nx/X11/extensions/multibufst.h
+%{_includedir}/nx/X11/extensions/security.h
+%{_includedir}/nx/X11/extensions/securstr.h
+%{_includedir}/nx/X11/extensions/shape.h
+%{_includedir}/nx/X11/extensions/sync.h
+%{_includedir}/nx/X11/extensions/xtestext1.h
+%{_includedir}/nx/X11/extensions/xteststr.h
+
+%files -n libNX_Xext
+%{_libdir}/nx/X11/libNX_Xext.so.6*
+
+%files -n libNX_Xfixes-devel
+%{_libdir}/nx/X11/libNX_Xfixes.so
+%{_includedir}/nx/X11/extensions/Xfixes.h
+
+%files -n libNX_Xfixes
+%{_libdir}/nx/X11/libNX_Xfixes.so.3*
+
+%files -n libNX_Xinerama
+%{_libdir}/nx/X11/libNX_Xinerama.so.1*
+
+%files -n libNX_Xpm-devel
+%{_libdir}/nx/X11/libNX_Xpm.so
+%{_includedir}/nx/X11/xpm.h
+
+%files -n libNX_Xpm
+%{_libdir}/nx/X11/libNX_Xpm.so.4*
+
+%files -n libNX_Xrandr
+%{_libdir}/nx/X11/libNX_Xrandr.so.2*
+
+%files -n libNX_Xrender-devel
+%{_libdir}/nx/X11/libNX_Xrender.so
+%{_includedir}/nx/X11/extensions/Xrender.h
+
+%files -n libNX_Xrender
+%{_libdir}/nx/X11/libNX_Xrender.so.1*
+
+%files -n libNX_Xtst
+%{_libdir}/nx/X11/libNX_Xtst.so.6*
+
+%files -n libXcomp-devel
+%_libdir/nx/libXcomp.so
+%{_includedir}/nx/MD5.h
+%{_includedir}/nx/NX.h
+%{_includedir}/nx/NXalert.h
+%{_includedir}/nx/NXmitshm.h
+%{_includedir}/nx/NXpack.h
+%{_includedir}/nx/NXproto.h
+%{_includedir}/nx/NXrender.h
+%{_includedir}/nx/NXvars.h
+
+%files -n libXcomp
+%doc nxcomp/{COPYING,LICENSE,README}
+%_libdir/nx/libXcomp.so.3*
+
+%files -n libXcompext-devel
+%_libdir/nx/libXcompext.so
+%{_includedir}/nx/NXlib.h
+%{_includedir}/nx/NXlibint.h
+
+%files -n libXcompext
+%doc nxcompext/{COPYING,LICENSE,README}
+%_libdir/nx/libXcompext.so.3*
+
+%files -n libXcompshad-devel
+%_libdir/nx/libXcompshad.so
+%{_includedir}/nx/Core.h
+%{_includedir}/nx/Input.h
+%{_includedir}/nx/Logger.h
+%{_includedir}/nx/Manager.h
+%{_includedir}/nx/Misc.h
+%{_includedir}/nx/Poller.h
+%{_includedir}/nx/Regions.h
+%{_includedir}/nx/Shadow.h
+%{_includedir}/nx/Updater.h
+%{_includedir}/nx/Win.h
+%{_includedir}/nx/X11.h
+
+%files -n libXcompshad
+%doc nxcompshad/{CHANGELOG,COPYING,LICENSE}
+%_libdir/nx/libXcompshad.so.3*
+
+%files devel
+%{_libdir}/nx/X11/libNX_Xcomposite.so
+%{_libdir}/nx/X11/libNX_Xdamage.so
+%{_libdir}/nx/X11/libNX_Xinerama.so
+%{_libdir}/nx/X11/libNX_Xrandr.so
+%{_libdir}/nx/X11/libNX_Xtst.so
+%{_includedir}/nx/X11/X10.h
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/XRes.h
+%{_includedir}/nx/X11/extensions/XTest.h
+%{_includedir}/nx/X11/extensions/Xcomposite.h
+%{_includedir}/nx/X11/extensions/Xdamage.h
+%{_includedir}/nx/X11/extensions/Xevie.h
+%{_includedir}/nx/X11/extensions/Xinerama.h
+%{_includedir}/nx/X11/extensions/Xrandr.h
+%{_includedir}/nx/X11/extensions/dmxext.h
+%{_includedir}/nx/X11/extensions/lbxbuf.h
+%{_includedir}/nx/X11/extensions/lbxbufstr.h
+%{_includedir}/nx/X11/extensions/lbxdeltastr.h
+%{_includedir}/nx/X11/extensions/lbximage.h
+%{_includedir}/nx/X11/extensions/lbxopts.h
+%{_includedir}/nx/X11/extensions/lbxzlib.h
+%{_includedir}/nx/X11/extensions/panoramiXext.h
+%{_includedir}/nx/X11/extensions/record.h
+%{_includedir}/nx/X11/extensions/xf86dga1.h
+%{_includedir}/nx/X11/extensions/xf86vmode.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/bdfint.h
+%{_includedir}/nx/X11/fonts/bitmap.h
+%{_includedir}/nx/X11/fonts/bufio.h
+%{_includedir}/nx/X11/fonts/fntfil.h
+%{_includedir}/nx/X11/fonts/fntfilio.h
+%{_includedir}/nx/X11/fonts/fntfilst.h
+%{_includedir}/nx/X11/fonts/fontencc.h
+%{_includedir}/nx/X11/fonts/fontmisc.h
+%{_includedir}/nx/X11/fonts/fontmod.h
+%{_includedir}/nx/X11/fonts/fontshow.h
+%{_includedir}/nx/X11/fonts/fontutil.h
+%{_includedir}/nx/X11/fonts/fontxlfd.h
+%{_includedir}/nx/X11/fonts/pcf.h
+%{_includedir}/nx/X11/misc.h
+%{_includedir}/nx/X11/os.h
+
+%files -n nx-proto-devel
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/DECkeysym.h
+%{_includedir}/nx/X11/HPkeysym.h
+%{_includedir}/nx/X11/Sunkeysym.h
+%{_includedir}/nx/X11/X.h
+%{_includedir}/nx/X11/XF86keysym.h
+%{_includedir}/nx/X11/XWDFile.h
+%{_includedir}/nx/X11/Xalloca.h
+%{_includedir}/nx/X11/Xarch.h
+%{_includedir}/nx/X11/Xatom.h
+%{_includedir}/nx/X11/Xdefs.h
+%{_includedir}/nx/X11/Xfuncproto.h
+%{_includedir}/nx/X11/Xfuncs.h
+%{_includedir}/nx/X11/Xmd.h
+%{_includedir}/nx/X11/Xos.h
+%{_includedir}/nx/X11/Xos_r.h
+%{_includedir}/nx/X11/Xosdefs.h
+%{_includedir}/nx/X11/Xpoll.h
+%{_includedir}/nx/X11/Xproto.h
+%{_includedir}/nx/X11/Xprotostr.h
+%{_includedir}/nx/X11/Xthreads.h
+%{_includedir}/nx/X11/ap_keysym.h
+%{_includedir}/nx/X11/keysym.h
+%{_includedir}/nx/X11/keysymdef.h
+%{_includedir}/nx/X11/extensions/Print.h
+%{_includedir}/nx/X11/extensions/Printstr.h
+%{_includedir}/nx/X11/extensions/XI.h
+%{_includedir}/nx/X11/extensions/XIproto.h
+%{_includedir}/nx/X11/extensions/XResproto.h
+%{_includedir}/nx/X11/extensions/Xeviestr.h
+%{_includedir}/nx/X11/extensions/bigreqstr.h
+%{_includedir}/nx/X11/extensions/composite.h
+%{_includedir}/nx/X11/extensions/compositeproto.h
+%{_includedir}/nx/X11/extensions/damageproto.h
+%{_includedir}/nx/X11/extensions/damagewire.h
+%{_includedir}/nx/X11/extensions/dmxproto.h
+%{_includedir}/nx/X11/extensions/panoramiXproto.h
+%{_includedir}/nx/X11/extensions/randr.h
+%{_includedir}/nx/X11/extensions/randrproto.h
+%{_includedir}/nx/X11/extensions/recordstr.h
+%{_includedir}/nx/X11/extensions/render.h
+%{_includedir}/nx/X11/extensions/renderproto.h
+%{_includedir}/nx/X11/extensions/shapestr.h
+%{_includedir}/nx/X11/extensions/shmstr.h
+%{_includedir}/nx/X11/extensions/syncstr.h
+%{_includedir}/nx/X11/extensions/xcmiscstr.h
+%{_includedir}/nx/X11/extensions/xf86bigfont.h
+%{_includedir}/nx/X11/extensions/xf86bigfstr.h
+%{_includedir}/nx/X11/extensions/xf86dga.h
+%{_includedir}/nx/X11/extensions/xf86dga1str.h
+%{_includedir}/nx/X11/extensions/xf86dgastr.h
+%{_includedir}/nx/X11/extensions/xf86misc.h
+%{_includedir}/nx/X11/extensions/xf86mscstr.h
+%{_includedir}/nx/X11/extensions/xf86vmstr.h
+%{_includedir}/nx/X11/extensions/xfixesproto.h
+%{_includedir}/nx/X11/extensions/xfixeswire.h
+%{_includedir}/nx/X11/extensions/xtrapbits.h
+%{_includedir}/nx/X11/extensions/xtrapddmi.h
+%{_includedir}/nx/X11/extensions/xtrapdi.h
+%{_includedir}/nx/X11/extensions/xtrapemacros.h
+%{_includedir}/nx/X11/extensions/xtraplib.h
+%{_includedir}/nx/X11/extensions/xtraplibp.h
+%{_includedir}/nx/X11/extensions/xtrapproto.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/FS.h
+%{_includedir}/nx/X11/fonts/FSproto.h
+%{_includedir}/nx/X11/fonts/font.h
+%{_includedir}/nx/X11/fonts/fontstruct.h
+%{_includedir}/nx/X11/fonts/fsmasks.h
+
+%files -n nxagent
+%dir %{_sysconfdir}/nxagent
+%config(noreplace) %{_sysconfdir}/nxagent/keystrokes.cfg
+%{_bindir}/nxagent
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxagent
+
+%files -n nxauth
+%{_bindir}/nxauth
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxauth
+
+%files -n nxproxy
+%{_bindir}/nxproxy
+%{_mandir}/man1/nxproxy.1*
+
+%files -n x2goagent
+#%%{_sysconfdir}/x2go is owned by x2goserver, which this requires
+%config(noreplace) %{_sysconfdir}/x2go/keystrokes.cfg
+%{_bindir}/x2goagent
+%{_libdir}/x2go/bin/x2goagent
+%{_datadir}/pixmaps/x2go.xpm
+%{_datadir}/x2go/
+
+
+%changelog
+* Thu Oct 10 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-4
+- Do not build/ship unneeded xlib18n libs
+
+* Wed Sep 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-3
+- Fix nx obsoletes version
+
+* Tue Sep 3 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-2
+- Have nxagent and nxproxy also obsolete/provide nx
+
+* Fri Aug 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-1
+- Update to 3.5.0.21
+- Many bundled libs removed upstream
+- Drop initgroups patch applied upstream
+- Fix macro in comments
+- Remove execute permissions from source files
+- Add %%postun ldconfig scripts
+- Rename nx-devel nx-libs-devel
+
+* Thu Aug 29 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-7
+- Add patch to call initgroups()
+
+* Thu Jul 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-6
+- Drop building and/or shipping a bunch of unneeded libraries
+
+* Thu Jun 13 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-5
+- Add more explicit verioned requires
+- Drop unnecessary directory ownership by sub-packages
+- Remove many bundled libraries
+
+* Tue Jun 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-4
+- Fix 775 library permissions
+- Move nx/X11 .so files to -devel
+- Fix nx obsoletes
+- Mark ld.so.conf.d files config(noreplace)
+- Fix requires
+
+* Fri May 31 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-3
+- Fix quoting when creating my_configure script
+
+* Thu May 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-2
+- Use optflags for compiling, __global_ldflags for linking
+
+* Thu Apr 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-1
+- Update to 3.5.0.20
+
+* Mon Mar 25 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.18-1
+- Initial package
+%global _hardened_build 1
+
+Name:           nx-libs
+Version:        3.5.0.21
+Release:        4%{?dist}
+Summary:        NX X11 protocol compression libraries
+
+Group:          System Environment/Libraries
+License:        GPLv2+
+URL:            http://x2go.org/
+Source0:        http://code.x2go.org/releases/source/%{name}/%{name}-%{version}-full.tar.gz
+# git clone git://code.x2go.org/nx-libs
+# cd nx-libs
+# debian/roll-tarballs.sh HEAD server
+# mv _releases_/source/nx-libs/nx-libs-HEAD-full.tar.gz .
+#Source0:       ns-libs-HEAD-full.tar.gz
+# Remove bundled libraries
+Patch0:         nx-libs-bundled.patch
+
+BuildRequires:  autoconf
+BuildRequires:  expat-devel
+BuildRequires:  fontconfig-devel
+BuildRequires:  freetype-devel
+BuildRequires:  libfontenc-devel
+BuildRequires:  libjpeg-devel
+BuildRequires:  libpng-devel
+BuildRequires:  libxml2-devel
+BuildRequires:  zlib-devel
+
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+This package provides the core nx-X11 libraries customized for
+nxagent/x2goagent.
+
+
+%package -n libNX_X11
+Group:          System Environment/Libraries
+Summary:        Core NX protocol client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+
+%package -n libNX_X11-devel
+Group:          Development/Libraries
+Summary:        Development files for the Core NX protocol library
+Requires:       libNX_X11%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_X11-devel
+The X Window System is a network-transparent window system that was
+designed at MIT. X display servers run on computers with either
+monochrome or color bitmap display hardware. The server distributes
+user input to and accepts output requests from various client
+programs located either on the same machine or elsewhere in the
+network. Xlib is a C subroutine library that application programs
+(clients) use to interface with the window system by means of a
+stream connection.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX authorization protocol library
+Requires:       libNX_Xau%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau-devel
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xau
+Group:          System Environment/Libraries
+Summary:        NX authorization protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xau
+libXau provides mechanisms for individual access to an X Window
+System display. It uses existing core protocol and library hooks for
+specifying authorization data in the connection setup block to
+restrict use of the display to only those clients that show that they
+know a server-specific key called a "magic cookie".
+
+
+%package -n libNX_Xcomposite
+Group:          System Environment/Libraries
+Summary:        NX protocol Composite extension client library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xcomposite
+The Composite extension causes a entire sub-tree of the window
+hierarchy to be rendered to an off-screen buffer. Applications can
+then take the contents of that buffer and do whatever they like. The
+off-screen buffer can be automatically merged into the parent window
+or merged by external programs, called compositing managers.
+
+
+%package -n libNX_Xdamage
+Group:          System Environment/Libraries
+Summary:        NX Damage Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdamage
+The X Damage Extension allows applications to track modified regions
+of drawables.
+
+
+%package -n libNX_Xdmcp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NXDM Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp-devel
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xdmcp
+Group:          System Environment/Libraries
+Summary:        NX Display Manager Control Protocol library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xdmcp
+The X Display Manager Control Protocol (XDMCP) provides a uniform
+mechanism for an autonomous display to request login service from a
+remote host. By autonomous, we mean the display consists of hardware
+and processes that are independent of any particular host where login
+service is desired. An X terminal (screen, keyboard, mouse,
+processor, network interface) is a prime example of an autonomous
+display.
+
+
+%package -n libNX_Xext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Common Extensions library
+Requires:       libNX_Xext%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext-devel
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xext
+Group:          System Environment/Libraries
+Summary:        Common extensions to the NX protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xext
+The Xext library contains a handful of X11 extensions:
+- Double Buffer extension (DBE/Xdbe)
+- Display Power Management Signaling (DPMS) extension
+- X11 Nonrectangular Window Shape extension (Xshape)
+- The MIT Shared Memory extension (MIT-SHM/Xshm)
+- TOG-CUP (colormap) protocol extension (Xcup)
+- X Extended Visual Information extension (XEvi)
+- X11 Double-Buffering, Multi-Buffering, and Stereo extension (Xmbuf)
+
+
+%package -n libNX_Xfixes-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Xfixes extension library
+Requires:       libNX_Xfixes%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes-devel
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xfixes
+Group:          System Environment/Libraries
+Summary:        NX miscellaneous "fixes" extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xfixes
+The X Fixes extension provides applications with work-arounds for
+various limitations in the core protocol.
+
+
+%package -n libNX_Xinerama
+Group:          System Environment/Libraries
+Summary:        Xinerama extension to the NX Protocol
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xinerama
+Xinerama is an extension to the X Window System which enables
+multi-headed X applications and window managers to use two or more
+physical displays as one large virtual display.
+
+
+%package -n libNX_Xpm-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Pixmap image file format library
+Requires:       libNX_Xpm%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm-devel
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xpm
+Group:          System Environment/Libraries
+Summary:        NX Pixmap image file format library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xpm
+libXpm facilitates working with XPM (X PixMap), a format for
+storing/retrieving X pixmaps to/from files.
+
+
+%package -n libNX_Xrandr
+Group:          System Environment/Libraries
+Summary:        NX Resize, Rotate and Reflection extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrandr
+The X Resize, Rotate and Reflect Extension (RandR) allows clients to
+dynamically change X screens, so as to resize, to change the
+orientation and layout of the root window of a screen.
+
+
+%package -n libNX_Xrender-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX Render Extension library
+Requires:       libNX_Xrender%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender-devel
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+This package contains all necessary include files and libraries
+needed to develop applications that require these.
+
+
+%package -n libNX_Xrender
+Group:          System Environment/Libraries
+Summary:        NX Rendering Extension library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xrender
+The Xrender library is designed as a lightweight library interface to
+the Render extension.
+
+
+%package -n libNX_Xtst
+Group:          System Environment/Libraries
+Summary:        Xlib-based client API for the XTEST and RECORD extensions on NX
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libNX_Xtst
+The XTEST extension is a minimal set of client and server extensions
+required to completely test the X11 server with no user intervention.
+This extension is not intended to support general journaling and
+playback of user actions.
+
+The RECORD extension supports the recording and reporting of all core
+X protocol and arbitrary X extension protocol.
+
+
+%package -n libXcomp-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX differential compression library
+Requires:       libXcomp%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel = %{version}-%{release}
+
+%description -n libXcomp-devel
+The NX differential compression library's development files.
+
+
+%package -n libXcomp
+Group:          System Environment/Libraries
+Summary:        NX differential compression library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcomp
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package contains the NX differential compression library for X11.
+
+
+%package -n libXcompext-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX compression extensions library
+Requires:       libXcompext%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext-devel
+The NX compression extensions library's development files.
+
+
+%package -n libXcompext
+Group:          System Environment/Libraries
+Summary:        NX protocol compression extensions library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompext
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the library to support additional features to
+the core NX library.
+
+
+%package -n libXcompshad-devel
+Group:          Development/Libraries
+Summary:        Development files for the NX session shadowing library
+Requires:       libXcompshad%{?_isa} = %{version}-%{release}
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad-devel
+The NX session shadowing library's development files.
+
+
+%package -n libXcompshad
+Group:          System Environment/Libraries
+Summary:        NX session shadowing Library
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description -n libXcompshad
+NX is a software suite from NoMachine which implements very efficient
+compression of the X11 protocol. This increases performance when
+using X applications over a network, especially a slow one.
+
+This package provides the session shadowing library.
+
+
+%package devel
+Group:          Development/Libraries
+Summary:        Include files and libraries for NX development
+Requires:       libNX_X11-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xau-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xdmcp-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xext-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xfixes-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xpm-devel%{?_isa} = %{version}-%{release}
+Requires:       libNX_Xrender-devel%{?_isa} = %{version}-%{release}
+Requires:       nx-proto-devel%{?_isa} = %{version}-%{release}
+Requires:       %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nx-proto-devel
+Group:          Development/Libraries
+Summary:        Include files for NX development
+
+%description -n nx-proto-devel
+This package contains all necessary include files and libraries
+needed to develop X11 applications that require these.
+
+
+%package -n nxagent
+Group:          Applications/System
+Summary:        NX agent
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxagent
+NX is a software suite which implements very efficient compression of
+the X11 protocol. This increases performance when using X
+applications over a network, especially a slow one.
+
+nxagent is an agent providing NX transport of X sessions. The
+application is based on the well-known Xnest server. nxagent, like
+Xnest, is an X server for its own clients, and at the same time, an X
+client for a system's local X server.
+
+The main scope of nxagent is to eliminate X round-trips or transform
+them into asynchronous replies. nxagent works together with nxproxy.
+nxproxy itself does not make any effort to minimize round-trips by
+itself, this is demanded of nxagent.
+
+Being an X server, nxagent is able to resolve all the property/atoms
+related requests locally, ensuring that the most common source of
+round-trips are nearly reduced to zero.
+
+
+%package -n nxauth
+Group:          Applications/System
+Summary:        NX xauth
+
+%description -n nxauth
+This package provides the NX xauth binary.
+
+
+%package -n nxproxy
+Group:          Applications/System
+Summary:        NX proxy
+Obsoletes:      nx < 3.5.0-19
+Provides:       nx = %{version}-%{release}
+Obsoletes:      nx%{?_isa} < 3.5.0-19
+Provides:       nx%{?_isa} = %{version}-%{release}
+
+%description -n nxproxy
+This package provides the NX proxy (client) binary.
+
+
+%package -n x2goagent
+Group:          Applications/System
+Summary:        X2go agent
+Requires:       nxagent
+Requires:       x2goserver
+
+%description -n x2goagent
+X2go agent functionality has been completely incorporated into
+nxagent's code base. If the nxagent binary is executed under the name
+of "x2goagent", the X2go functionalities get activated.
+
+The x2goagent package is a wrapper that activates X2Go branding in
+nxagent. Please refer to the nxagent package's description for more
+information on NX.
+
+
+%prep
+%setup -q
+%patch0 -p1 -b .bundled
+# Install into /usr
+sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def
+# Use rpm optflags
+sed -i -e 's#-O3#%{optflags}#' nx-X11/config/cf/host.def
+# Use multilib dirs
+# We're installing binaries into %%{_libdir}/nx/bin rather than %%{_libexedir}/nx
+# becuase upstream expects libraries and binaries in the same directory
+sed -i -e 's,/lib/nx,/%{_lib}/nx,' Makefile nx-X11/config/cf/X11.tmpl
+sed -i -e 's,/lib/x2go,/%{_lib}/x2go,' Makefile
+sed -i -e 's,/usr/lib/,/usr/%{_lib}/,' bin/*
+# Fix FSF address
+find -name LICENSE | xargs sed -i \
+  -e 's/59 Temple Place/51 Franklin Street/' -e 's/Suite 330/Fifth Floor/' \
+  -e 's/MA  02111-1307/MA  02110-1301/'
+# Fix source permissions
+find -type f -name '*.[hc]' | xargs chmod -x
+
+# Bundled nx-X11/extras
+# Xpm - Is needed and needs to get linked to libXcomp
+# Mesa - Used by the X server
+
+# Xcursor - Other code still references files in it
+# Xfont - Statically linked to nxarget, others?
+# Xpm
+rm -r nx-X11/lib/{FS,ICE,SM,Xaw,Xft,Xt,Xmu,Xmuu}
+
+
+%build
+cat >"my_configure" <<'EOF'
+%configure
+EOF
+chmod a+x my_configure;
+export SHLIBGLOBALSFLAGS="%{__global_ldflags}"
+make %{?_smp_mflags} CONFIGURE="$PWD/my_configure" USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx
+
+
+%install
+make install \
+        DESTDIR=%{buildroot} \
+        PREFIX=%{_prefix} \
+        USRLIBDIR=%{_libdir}/nx SHLIBDIR=%{_libdir}/nx \
+        INSTALL_DIR="install -dm0755" \
+        INSTALL_FILE="install -pm0644" \
+        INSTALL_PROGRAM="install -pm0755"
+
+# Remove static libs
+rm %{buildroot}%{_libdir}/nx/*.a
+
+# Make sure x2goagent is linked relative and on 64-bit
+mkdir -p %{buildroot}%{_libdir}/x2go/bin
+ln -sf ../../nx/bin/nxagent %{buildroot}%{_libdir}/x2go/bin/x2goagent
+
+# Fix permissions on shared libraries
+chmod 755  %{buildroot}%{_libdir}/nx/{,X11/}lib*.so*
+
+# Linker
+mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
+echo %{_libdir}/nx > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+echo %{_libdir}/nx/X11 >> %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+
+#Remove extras, GL, and other unneeded headers
+rm -r %{buildroot}%{_includedir}/nx/{extras,GL}
+rm -r %{buildroot}%{_includedir}/nx/X11/bitmaps
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XInput.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/XK*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/extensions/*Xv*.h
+rm -r %{buildroot}%{_includedir}/nx/X11/Xtrans
+
+
+%post -p /sbin/ldconfig
+%post -n libNX_X11 -p /sbin/ldconfig
+%post -n libNX_Xau -p /sbin/ldconfig
+%post -n libNX_Xcomposite -p /sbin/ldconfig
+%post -n libNX_Xdamage -p /sbin/ldconfig
+%post -n libNX_Xdmcp -p /sbin/ldconfig
+%post -n libNX_Xext -p /sbin/ldconfig
+%post -n libNX_Xfixes -p /sbin/ldconfig
+%post -n libNX_Xinerama -p /sbin/ldconfig
+%post -n libNX_Xpm -p /sbin/ldconfig
+%post -n libNX_Xrandr -p /sbin/ldconfig
+%post -n libNX_Xrender -p /sbin/ldconfig
+%post -n libNX_Xtst -p /sbin/ldconfig
+%post -n libXcomp -p /sbin/ldconfig
+%post -n libXcompext -p /sbin/ldconfig
+%post -n libXcompshad -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+%postun -n libNX_X11 -p /sbin/ldconfig
+%postun -n libNX_Xau -p /sbin/ldconfig
+%postun -n libNX_Xcomposite -p /sbin/ldconfig
+%postun -n libNX_Xdamage -p /sbin/ldconfig
+%postun -n libNX_Xdmcp -p /sbin/ldconfig
+%postun -n libNX_Xext -p /sbin/ldconfig
+%postun -n libNX_Xfixes -p /sbin/ldconfig
+%postun -n libNX_Xinerama -p /sbin/ldconfig
+%postun -n libNX_Xpm -p /sbin/ldconfig
+%postun -n libNX_Xrandr -p /sbin/ldconfig
+%postun -n libNX_Xrender -p /sbin/ldconfig
+%postun -n libNX_Xtst -p /sbin/ldconfig
+%postun -n libXcomp -p /sbin/ldconfig
+%postun -n libXcompext -p /sbin/ldconfig
+%postun -n libXcompshad -p /sbin/ldconfig
+
+%files
+%doc nx-X11/{COPYING,LICENSE,README}
+%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+%dir %{_libdir}/nx
+%{_datadir}/nx/SecurityPolicy
+
+%files -n libNX_X11
+%{_libdir}/nx/X11/libNX_X11.so.6*
+
+%files -n libNX_X11-devel
+%{_libdir}/nx/X11/libNX_X11.so
+%dir %{_includedir}/nx
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/ImUtil.h
+%{_includedir}/nx/X11/XKBlib.h
+%{_includedir}/nx/X11/Xcms.h
+%{_includedir}/nx/X11/Xlib.h
+%{_includedir}/nx/X11/XlibConf.h
+%{_includedir}/nx/X11/Xlibint.h
+%{_includedir}/nx/X11/Xlocale.h
+%{_includedir}/nx/X11/Xregion.h
+%{_includedir}/nx/X11/Xresource.h
+%{_includedir}/nx/X11/Xutil.h
+%{_includedir}/nx/X11/cursorfont.h
+
+%files -n libNX_Xau-devel
+%{_libdir}/nx/X11/libNX_Xau.so
+%{_includedir}/nx/X11/Xauth.h
+
+%files -n libNX_Xau
+%{_libdir}/nx/X11/libNX_Xau.so.6*
+
+%files -n libNX_Xcomposite
+%{_libdir}/nx/X11/libNX_Xcomposite.so.1*
+
+%files -n libNX_Xdamage
+%{_libdir}/nx/X11/libNX_Xdamage.so.1*
+
+%files -n libNX_Xdmcp-devel
+%{_libdir}/nx/X11/libNX_Xdmcp.so
+%{_includedir}/nx/X11/Xdmcp.h
+
+%files -n libNX_Xdmcp
+%{_libdir}/nx/X11/libNX_Xdmcp.so.6*
+
+%files -n libNX_Xext-devel
+%{_libdir}/nx/X11/libNX_Xext.so
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/MITMisc.h
+%{_includedir}/nx/X11/extensions/XEVI.h
+%{_includedir}/nx/X11/extensions/XEVIstr.h
+%{_includedir}/nx/X11/extensions/XLbx.h
+%{_includedir}/nx/X11/extensions/XShm.h
+%{_includedir}/nx/X11/extensions/Xag.h
+%{_includedir}/nx/X11/extensions/Xagsrv.h
+%{_includedir}/nx/X11/extensions/Xagstr.h
+%{_includedir}/nx/X11/extensions/Xcup.h
+%{_includedir}/nx/X11/extensions/Xcupstr.h
+%{_includedir}/nx/X11/extensions/Xdbe.h
+%{_includedir}/nx/X11/extensions/Xdbeproto.h
+%{_includedir}/nx/X11/extensions/Xext.h
+%{_includedir}/nx/X11/extensions/dpms.h
+%{_includedir}/nx/X11/extensions/dpmsstr.h
+%{_includedir}/nx/X11/extensions/extutil.h
+%{_includedir}/nx/X11/extensions/lbxstr.h
+%{_includedir}/nx/X11/extensions/mitmiscstr.h
+%{_includedir}/nx/X11/extensions/multibuf.h
+%{_includedir}/nx/X11/extensions/multibufst.h
+%{_includedir}/nx/X11/extensions/security.h
+%{_includedir}/nx/X11/extensions/securstr.h
+%{_includedir}/nx/X11/extensions/shape.h
+%{_includedir}/nx/X11/extensions/sync.h
+%{_includedir}/nx/X11/extensions/xtestext1.h
+%{_includedir}/nx/X11/extensions/xteststr.h
+
+%files -n libNX_Xext
+%{_libdir}/nx/X11/libNX_Xext.so.6*
+
+%files -n libNX_Xfixes-devel
+%{_libdir}/nx/X11/libNX_Xfixes.so
+%{_includedir}/nx/X11/extensions/Xfixes.h
+
+%files -n libNX_Xfixes
+%{_libdir}/nx/X11/libNX_Xfixes.so.3*
+
+%files -n libNX_Xinerama
+%{_libdir}/nx/X11/libNX_Xinerama.so.1*
+
+%files -n libNX_Xpm-devel
+%{_libdir}/nx/X11/libNX_Xpm.so
+%{_includedir}/nx/X11/xpm.h
+
+%files -n libNX_Xpm
+%{_libdir}/nx/X11/libNX_Xpm.so.4*
+
+%files -n libNX_Xrandr
+%{_libdir}/nx/X11/libNX_Xrandr.so.2*
+
+%files -n libNX_Xrender-devel
+%{_libdir}/nx/X11/libNX_Xrender.so
+%{_includedir}/nx/X11/extensions/Xrender.h
+
+%files -n libNX_Xrender
+%{_libdir}/nx/X11/libNX_Xrender.so.1*
+
+%files -n libNX_Xtst
+%{_libdir}/nx/X11/libNX_Xtst.so.6*
+
+%files -n libXcomp-devel
+%_libdir/nx/libXcomp.so
+%{_includedir}/nx/MD5.h
+%{_includedir}/nx/NX.h
+%{_includedir}/nx/NXalert.h
+%{_includedir}/nx/NXmitshm.h
+%{_includedir}/nx/NXpack.h
+%{_includedir}/nx/NXproto.h
+%{_includedir}/nx/NXrender.h
+%{_includedir}/nx/NXvars.h
+
+%files -n libXcomp
+%doc nxcomp/{COPYING,LICENSE,README}
+%_libdir/nx/libXcomp.so.3*
+
+%files -n libXcompext-devel
+%_libdir/nx/libXcompext.so
+%{_includedir}/nx/NXlib.h
+%{_includedir}/nx/NXlibint.h
+
+%files -n libXcompext
+%doc nxcompext/{COPYING,LICENSE,README}
+%_libdir/nx/libXcompext.so.3*
+
+%files -n libXcompshad-devel
+%_libdir/nx/libXcompshad.so
+%{_includedir}/nx/Core.h
+%{_includedir}/nx/Input.h
+%{_includedir}/nx/Logger.h
+%{_includedir}/nx/Manager.h
+%{_includedir}/nx/Misc.h
+%{_includedir}/nx/Poller.h
+%{_includedir}/nx/Regions.h
+%{_includedir}/nx/Shadow.h
+%{_includedir}/nx/Updater.h
+%{_includedir}/nx/Win.h
+%{_includedir}/nx/X11.h
+
+%files -n libXcompshad
+%doc nxcompshad/{CHANGELOG,COPYING,LICENSE}
+%_libdir/nx/libXcompshad.so.3*
+
+%files devel
+%{_libdir}/nx/X11/libNX_Xcomposite.so
+%{_libdir}/nx/X11/libNX_Xdamage.so
+%{_libdir}/nx/X11/libNX_Xinerama.so
+%{_libdir}/nx/X11/libNX_Xrandr.so
+%{_libdir}/nx/X11/libNX_Xtst.so
+%{_includedir}/nx/X11/X10.h
+%dir %{_includedir}/nx/X11/extensions
+%{_includedir}/nx/X11/extensions/XRes.h
+%{_includedir}/nx/X11/extensions/XTest.h
+%{_includedir}/nx/X11/extensions/Xcomposite.h
+%{_includedir}/nx/X11/extensions/Xdamage.h
+%{_includedir}/nx/X11/extensions/Xevie.h
+%{_includedir}/nx/X11/extensions/Xinerama.h
+%{_includedir}/nx/X11/extensions/Xrandr.h
+%{_includedir}/nx/X11/extensions/dmxext.h
+%{_includedir}/nx/X11/extensions/lbxbuf.h
+%{_includedir}/nx/X11/extensions/lbxbufstr.h
+%{_includedir}/nx/X11/extensions/lbxdeltastr.h
+%{_includedir}/nx/X11/extensions/lbximage.h
+%{_includedir}/nx/X11/extensions/lbxopts.h
+%{_includedir}/nx/X11/extensions/lbxzlib.h
+%{_includedir}/nx/X11/extensions/panoramiXext.h
+%{_includedir}/nx/X11/extensions/record.h
+%{_includedir}/nx/X11/extensions/xf86dga1.h
+%{_includedir}/nx/X11/extensions/xf86vmode.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/bdfint.h
+%{_includedir}/nx/X11/fonts/bitmap.h
+%{_includedir}/nx/X11/fonts/bufio.h
+%{_includedir}/nx/X11/fonts/fntfil.h
+%{_includedir}/nx/X11/fonts/fntfilio.h
+%{_includedir}/nx/X11/fonts/fntfilst.h
+%{_includedir}/nx/X11/fonts/fontencc.h
+%{_includedir}/nx/X11/fonts/fontmisc.h
+%{_includedir}/nx/X11/fonts/fontmod.h
+%{_includedir}/nx/X11/fonts/fontshow.h
+%{_includedir}/nx/X11/fonts/fontutil.h
+%{_includedir}/nx/X11/fonts/fontxlfd.h
+%{_includedir}/nx/X11/fonts/pcf.h
+%{_includedir}/nx/X11/misc.h
+%{_includedir}/nx/X11/os.h
+
+%files -n nx-proto-devel
+%dir %{_includedir}/nx/X11
+%{_includedir}/nx/X11/DECkeysym.h
+%{_includedir}/nx/X11/HPkeysym.h
+%{_includedir}/nx/X11/Sunkeysym.h
+%{_includedir}/nx/X11/X.h
+%{_includedir}/nx/X11/XF86keysym.h
+%{_includedir}/nx/X11/XWDFile.h
+%{_includedir}/nx/X11/Xalloca.h
+%{_includedir}/nx/X11/Xarch.h
+%{_includedir}/nx/X11/Xatom.h
+%{_includedir}/nx/X11/Xdefs.h
+%{_includedir}/nx/X11/Xfuncproto.h
+%{_includedir}/nx/X11/Xfuncs.h
+%{_includedir}/nx/X11/Xmd.h
+%{_includedir}/nx/X11/Xos.h
+%{_includedir}/nx/X11/Xos_r.h
+%{_includedir}/nx/X11/Xosdefs.h
+%{_includedir}/nx/X11/Xpoll.h
+%{_includedir}/nx/X11/Xproto.h
+%{_includedir}/nx/X11/Xprotostr.h
+%{_includedir}/nx/X11/Xthreads.h
+%{_includedir}/nx/X11/ap_keysym.h
+%{_includedir}/nx/X11/keysym.h
+%{_includedir}/nx/X11/keysymdef.h
+%{_includedir}/nx/X11/extensions/Print.h
+%{_includedir}/nx/X11/extensions/Printstr.h
+%{_includedir}/nx/X11/extensions/XI.h
+%{_includedir}/nx/X11/extensions/XIproto.h
+%{_includedir}/nx/X11/extensions/XResproto.h
+%{_includedir}/nx/X11/extensions/Xeviestr.h
+%{_includedir}/nx/X11/extensions/bigreqstr.h
+%{_includedir}/nx/X11/extensions/composite.h
+%{_includedir}/nx/X11/extensions/compositeproto.h
+%{_includedir}/nx/X11/extensions/damageproto.h
+%{_includedir}/nx/X11/extensions/damagewire.h
+%{_includedir}/nx/X11/extensions/dmxproto.h
+%{_includedir}/nx/X11/extensions/panoramiXproto.h
+%{_includedir}/nx/X11/extensions/randr.h
+%{_includedir}/nx/X11/extensions/randrproto.h
+%{_includedir}/nx/X11/extensions/recordstr.h
+%{_includedir}/nx/X11/extensions/render.h
+%{_includedir}/nx/X11/extensions/renderproto.h
+%{_includedir}/nx/X11/extensions/shapestr.h
+%{_includedir}/nx/X11/extensions/shmstr.h
+%{_includedir}/nx/X11/extensions/syncstr.h
+%{_includedir}/nx/X11/extensions/xcmiscstr.h
+%{_includedir}/nx/X11/extensions/xf86bigfont.h
+%{_includedir}/nx/X11/extensions/xf86bigfstr.h
+%{_includedir}/nx/X11/extensions/xf86dga.h
+%{_includedir}/nx/X11/extensions/xf86dga1str.h
+%{_includedir}/nx/X11/extensions/xf86dgastr.h
+%{_includedir}/nx/X11/extensions/xf86misc.h
+%{_includedir}/nx/X11/extensions/xf86mscstr.h
+%{_includedir}/nx/X11/extensions/xf86vmstr.h
+%{_includedir}/nx/X11/extensions/xfixesproto.h
+%{_includedir}/nx/X11/extensions/xfixeswire.h
+%{_includedir}/nx/X11/extensions/xtrapbits.h
+%{_includedir}/nx/X11/extensions/xtrapddmi.h
+%{_includedir}/nx/X11/extensions/xtrapdi.h
+%{_includedir}/nx/X11/extensions/xtrapemacros.h
+%{_includedir}/nx/X11/extensions/xtraplib.h
+%{_includedir}/nx/X11/extensions/xtraplibp.h
+%{_includedir}/nx/X11/extensions/xtrapproto.h
+%dir %{_includedir}/nx/X11/fonts
+%{_includedir}/nx/X11/fonts/FS.h
+%{_includedir}/nx/X11/fonts/FSproto.h
+%{_includedir}/nx/X11/fonts/font.h
+%{_includedir}/nx/X11/fonts/fontstruct.h
+%{_includedir}/nx/X11/fonts/fsmasks.h
+
+%files -n nxagent
+%dir %{_sysconfdir}/nxagent
+%config(noreplace) %{_sysconfdir}/nxagent/keystrokes.cfg
+%{_bindir}/nxagent
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxagent
+
+%files -n nxauth
+%{_bindir}/nxauth
+%dir %{_libdir}/nx/bin
+%{_libdir}/nx/bin/nxauth
+
+%files -n nxproxy
+%{_bindir}/nxproxy
+%{_mandir}/man1/nxproxy.1*
+
+%files -n x2goagent
+#%%{_sysconfdir}/x2go is owned by x2goserver, which this requires
+%config(noreplace) %{_sysconfdir}/x2go/keystrokes.cfg
+%{_bindir}/x2goagent
+%{_libdir}/x2go/bin/x2goagent
+%{_datadir}/pixmaps/x2go.xpm
+%{_datadir}/x2go/
+
+
+%changelog
+* Thu Oct 10 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-4
+- Do not build/ship unneeded xlib18n libs
+
+* Wed Sep 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-3
+- Fix nx obsoletes version
+
+* Tue Sep 3 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-2
+- Have nxagent and nxproxy also obsolete/provide nx
+
+* Fri Aug 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.21-1
+- Update to 3.5.0.21
+- Many bundled libs removed upstream
+- Drop initgroups patch applied upstream
+- Fix macro in comments
+- Remove execute permissions from source files
+- Add %%postun ldconfig scripts
+- Rename nx-devel nx-libs-devel
+
+* Thu Aug 29 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-7
+- Add patch to call initgroups()
+
+* Thu Jul 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-6
+- Drop building and/or shipping a bunch of unneeded libraries
+
+* Thu Jun 13 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-5
+- Add more explicit verioned requires
+- Drop unnecessary directory ownership by sub-packages
+- Remove many bundled libraries
+
+* Tue Jun 11 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-4
+- Fix 775 library permissions
+- Move nx/X11 .so files to -devel
+- Fix nx obsoletes
+- Mark ld.so.conf.d files config(noreplace)
+- Fix requires
+
+* Fri May 31 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-3
+- Fix quoting when creating my_configure script
+
+* Thu May 30 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-2
+- Use optflags for compiling, __global_ldflags for linking
+
+* Thu Apr 4 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.20-1
+- Update to 3.5.0.20
+
+* Mon Mar 25 2013 Orion Poplawski <orion at cora.nwra.com> - 3.5.0.18-1
+- Initial package
+


hooks/post-receive
-- 
nx-libs.git (NX (redistributed))

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "nx-libs.git" (NX (redistributed)).




More information about the x2go-commits mailing list