1 |
%define srcname %{name}-libs |
2 |
|
3 |
%global _smp_ncpus_max 1 |
4 |
|
5 |
%define lib_major_xcompshad 3 |
6 |
%define lib_name_xcompshad %mklibname xcompshad %{lib_major_xcompshad} |
7 |
|
8 |
%define lib_major_nxx11 6 |
9 |
%define lib_name_nxx11 %mklibname nxX11_ %{lib_major_nxx11} |
10 |
|
11 |
%define lib_major_xcomp 3 |
12 |
%define lib_name_xcomp %mklibname xcomp %{lib_major_xcomp} |
13 |
|
14 |
Name: nx |
15 |
Version: 3.5.99.26 |
16 |
Release: %mkrel 1.1 |
17 |
Summary: NX core libraries |
18 |
License: GPLv2 |
19 |
Group: Networking/Remote access |
20 |
Url: https://github.com/ArcticaProject/nx-libs |
21 |
Source0: https://github.com/ArcticaProject/nx-libs/archive/%{version}/%{name}-libs-%{version}.tar.gz |
22 |
Patch0: nxlibs-ar.patch |
23 |
|
24 |
BuildRequires: autoconf |
25 |
BuildRequires: gcc-c++ |
26 |
BuildRequires: gccmakedep |
27 |
BuildRequires: imake |
28 |
BuildRequires: pkgconfig(libjpeg) |
29 |
BuildRequires: pkgconfig(libpng) |
30 |
BuildRequires: pkgconfig(zlib) |
31 |
BuildRequires: pkgconfig(liblzma) |
32 |
BuildRequires: pkgconfig(fontenc) |
33 |
BuildRequires: pkgconfig(libxml-2.0) |
34 |
BuildRequires: pkgconfig(xproto) |
35 |
BuildRequires: pkgconfig(libtirpc) |
36 |
BuildRequires: pkgconfig(xcomposite) |
37 |
BuildRequires: pkgconfig(xdamage) |
38 |
BuildRequires: pkgconfig(xdmcp) |
39 |
BuildRequires: pkgconfig(xfixes) |
40 |
BuildRequires: pkgconfig(xfont2) |
41 |
BuildRequires: pkgconfig(xinerama) |
42 |
BuildRequires: pkgconfig(xpm) |
43 |
BuildRequires: pkgconfig(xrandr) |
44 |
BuildRequires: pkgconfig(xtst) |
45 |
BuildRequires: pkgconfig(xkbcomp) |
46 |
BuildRequires: pkgconfig(fontutil) |
47 |
BuildRequires: pixman-devel |
48 |
BuildRequires: python3-devel |
49 |
BuildRequires: quilt |
50 |
|
51 |
%description |
52 |
NoMachine NX is the next-generation X compression and round-trip |
53 |
suppression scheme. It can operate remote X11 sessions over |
54 |
56k modem dial-up links or anything better. |
55 |
This package uses the patched and redistributed sources from the |
56 |
x2go project. |
57 |
|
58 |
%package -n %{lib_name_nxx11} |
59 |
Summary: Nx-X11 lib for NX |
60 |
Group: System/Libraries |
61 |
Provides: nxX11 = %{version}-%{release} |
62 |
|
63 |
%description -n %{lib_name_nxx11} |
64 |
NX-X11 lib for the NX framework |
65 |
|
66 |
%package -n %{lib_name_xcomp} |
67 |
Summary: Xcomp library for NX |
68 |
Group: System/Libraries |
69 |
Provides: xcomp = %{version}-%{release} |
70 |
|
71 |
%description -n %{lib_name_xcomp} |
72 |
Xcomp library for NX subsystem |
73 |
|
74 |
%package -n %{lib_name_xcompshad} |
75 |
Summary: Xcompshad library for NX |
76 |
Group: System/Libraries |
77 |
Provides: xcompext = %{version}-%{release} |
78 |
Provides: xcompshad = %{version}-%{release} |
79 |
|
80 |
%description -n %{lib_name_xcompshad} |
81 |
Xcompshad library needed by the NX framework |
82 |
|
83 |
%package -n nxproxy |
84 |
Summary: Provide the protocol compression and caching part of the NX scheme |
85 |
Group: Networking/Remote access |
86 |
|
87 |
%description -n nxproxy |
88 |
The nxproxy runs on the X server side of the wire and thus accompanies |
89 |
the nxagent running on X client side. It provides the protocol |
90 |
compression and caching part of the NX scheme. |
91 |
|
92 |
%package -n nxagent |
93 |
Summary: NX X server based on Xnest |
94 |
Group: Networking/Remote access |
95 |
Recommends: x11-data-xkbdata |
96 |
Provides: x2goagent = %{version}-%{release} |
97 |
Obsoletes: x2goagent < 3.5.99.0-1 |
98 |
|
99 |
%description -n nxagent |
100 |
The nxagent is an X server based on Xnest, but modified |
101 |
for the purpose of reducing roundtrips over high-latency |
102 |
networks significantly. It is run on the client side of X, |
103 |
that is, on the machine where X clients run. It connects, |
104 |
over the wire, to your regular X server, possibly through nxproxy. |
105 |
|
106 |
%package -n nxdialog |
107 |
Summary: NX Dialog |
108 |
Group: Networking/Remote access |
109 |
|
110 |
%description -n nxdialog |
111 |
NX is a software suite which implements very efficient compression of |
112 |
the X11 protocol. This increases performance when using X |
113 |
applications over a network, especially a slow one. |
114 |
|
115 |
This package provides the nxdialog helper script. |
116 |
|
117 |
|
118 |
%prep |
119 |
%setup -q -n %{srcname}-%{version} |
120 |
%autopatch -p1 |
121 |
|
122 |
# Fix prefix, libdir etc |
123 |
sed -i -e '/ProjectRoot/s|/usr/local|%{_prefix}|g' nx-X11/config/cf/site.def |
124 |
sed -i -e 's|/usr/local/lib|%{_libdir}|g' \ |
125 |
-e 's|/usr/local|%{_prefix}|g' \ |
126 |
-e '/LibDirName/s|lib$|%{_lib}|g' \ |
127 |
nx-X11/config/cf/Imake.tmpl |
128 |
|
129 |
$(rpm --eval '%%configure "${@}"'> tmp_configure) |
130 |
chmod a+x tmp_configure |
131 |
|
132 |
%build |
133 |
%make_build \ |
134 |
CONFIGURE="$PWD/tmp_configure" \ |
135 |
PREFIX=%{_prefix} \ |
136 |
LIBDIR=%{_libdir} \ |
137 |
IMAKE_DEFINES="-DUseTIRPC=YES" |
138 |
|
139 |
%install |
140 |
%make_install \ |
141 |
PREFIX=%{_prefix} \ |
142 |
LIBDIR=%{_libdir} \ |
143 |
INSTALL_DIR="install -dm0755" \ |
144 |
INSTALL_FILE="install -pm0644" \ |
145 |
INSTALL_PROGRAM="install -pm0755" |
146 |
|
147 |
ln -s ../X11/fonts %{buildroot}%{_datadir}/nx/fonts |
148 |
|
149 |
# Fix permissions on shared libraries |
150 |
chmod 755 %{buildroot}%{_libdir}/lib*.so* |
151 |
|
152 |
# Remove unneeded headers and development files |
153 |
rm -rf %{buildroot}%{_includedir} |
154 |
rm -f %{buildroot}%{_libdir}/*.so %{buildroot}%{_libdir}/pkgconfig/*.pc |
155 |
|
156 |
#Remove static libs and our shared libraries' .la files |
157 |
rm -f %{buildroot}%{_libdir}/*.{a,la} |
158 |
|
159 |
# Fix python scripts |
160 |
%py3_shebang_fix %{buildroot}%{_bindir}/nxdialog |
161 |
|
162 |
%files -n nxagent |
163 |
%license COPYING LICENSE LICENSE.nxcomp |
164 |
%doc ChangeLog doc/nxagent/README.keystrokes |
165 |
%dir %{_sysconfdir}/nxagent |
166 |
%config(noreplace) %{_sysconfdir}/nxagent/keystrokes.cfg |
167 |
%attr(0755,root,root) %{_bindir}/nxagent |
168 |
%dir %{_libdir}/nx |
169 |
%dir %{_libdir}/nx/bin |
170 |
%{_libdir}/nx/bin/nxagent |
171 |
%dir %{_datadir}/nx |
172 |
%{_datadir}/nx/fonts |
173 |
%{_datadir}/nx/VERSION.nxagent |
174 |
%{_datadir}/nx/SecurityPolicy |
175 |
%dir %{_datadir}/nx/X11 |
176 |
%{_datadir}/nx/X11/XErrorDB |
177 |
%{_datadir}/nx/X11/Xcms.txt |
178 |
%{_mandir}/man1/nxagent.1* |
179 |
|
180 |
%files -n nxproxy |
181 |
%attr(0755,root,root) %{_bindir}/nxproxy |
182 |
%dir %{_datadir}/nx |
183 |
%{_datadir}/nx/VERSION.nxproxy |
184 |
%{_mandir}/man1/nxproxy.1* |
185 |
|
186 |
%files -n nxdialog |
187 |
%doc nxdialog/README.md |
188 |
%{_bindir}/nxdialog |
189 |
%{_mandir}/man1/nxdialog.1* |
190 |
|
191 |
%files -n %{lib_name_nxx11} |
192 |
%{_libdir}/libNX_X11.so.%{lib_major_nxx11}* |
193 |
%dir %{_libdir}/nx/X11 |
194 |
%{_libdir}/nx/X11/libX11.so.%{lib_major_nxx11}* |
195 |
|
196 |
%files -n %{lib_name_xcomp} |
197 |
%{_libdir}/libXcomp.so.%{lib_major_xcomp}* |
198 |
|
199 |
%files -n %{lib_name_xcompshad} |
200 |
%{_libdir}/libXcompshad.so.%{lib_major_xcompshad}* |