]>
Commit | Line | Data |
---|---|---|
1 | %define xversion 1.16.0 | |
2 | ||
3 | Summary: A TigerVNC remote display system | |
4 | Summary(pl.UTF-8): System zdalnego dostępu TigerVNC | |
5 | Name: tigervnc | |
6 | Version: 1.4.3 | |
7 | Release: 1 | |
8 | License: GPL v2 | |
9 | Group: X11/Applications/Networking | |
10 | Source0: https://github.com/TigerVNC/tigervnc/archive/v%{version}.tar.gz?/%{name}-%{version}.tar.gz | |
11 | # Source0-md5: 2177ee42fa1a3902b6feeaa7747f1c2a | |
12 | Source1: %{name}.desktop | |
13 | Source2: vncserver.init | |
14 | Source3: vncserver.sysconfig | |
15 | Source4: vncserver.target | |
16 | Source5: vncserver-service-generator | |
17 | Patch0: %{name}-cookie.patch | |
18 | Patch1: %{name}-ldnow.patch | |
19 | Patch3: %{name}-as-needed.patch | |
20 | Patch4: %{name}-ipv6.patch | |
21 | Patch5: %{name}-rh692048.patch | |
22 | Patch6: no-bashizm.patch | |
23 | Patch7: format-security.patch | |
24 | Patch8: tigervnc-xstartup.patch | |
25 | Patch9: xserver.patch | |
26 | Patch10: tigervnc-getmaster.patch | |
27 | Patch11: tigervnc-xserver-1.17.patch | |
28 | URL: http://www.tigervnc.com/ | |
29 | BuildRequires: ImageMagick | |
30 | BuildRequires: ImageMagick-coder-png | |
31 | BuildRequires: ImageMagick-coder-svg | |
32 | BuildRequires: Mesa-libGL-devel >= 7.8.1 | |
33 | BuildRequires: cpp | |
34 | BuildRequires: fltk-devel | |
35 | BuildRequires: gnutls-devel | |
36 | BuildRequires: libjpeg-turbo-devel | |
37 | BuildRequires: xorg-xserver-server-source >= %{xversion} | |
38 | BuildRequires: zlib-devel | |
39 | # xserver BRs, should match xorg-xserver-server.spec | |
40 | # for glx headers | |
41 | BuildRequires: OpenGL-GLX-devel | |
42 | BuildRequires: autoconf >= 2.57 | |
43 | BuildRequires: automake | |
44 | BuildRequires: libdrm-devel >= 2.4.5 | |
45 | BuildRequires: libtool | |
46 | BuildRequires: nasm | |
47 | BuildRequires: ncurses-devel | |
48 | BuildRequires: pam-devel | |
49 | BuildRequires: perl-base | |
50 | BuildRequires: pixman-devel >= 0.16.0 | |
51 | BuildRequires: pkgconfig >= 1:0.19 | |
52 | BuildRequires: rpmbuild(macros) >= 1.647 | |
53 | BuildRequires: xorg-app-mkfontscale | |
54 | BuildRequires: xorg-font-font-util >= 1.1 | |
55 | BuildRequires: xorg-lib-libX11-devel | |
56 | BuildRequires: xorg-lib-libXau-devel | |
57 | BuildRequires: xorg-lib-libXaw-devel | |
58 | BuildRequires: xorg-lib-libXdamage-devel | |
59 | BuildRequires: xorg-lib-libXdmcp-devel | |
60 | BuildRequires: xorg-lib-libXext-devel >= 1.0.99.4 | |
61 | BuildRequires: xorg-lib-libXfont-devel >= 1.4.2 | |
62 | BuildRequires: xorg-lib-libXi-devel >= 1.2.99.1 | |
63 | BuildRequires: xorg-lib-libXmu-devel | |
64 | BuildRequires: xorg-lib-libXpm-devel | |
65 | BuildRequires: xorg-lib-libXrender-devel | |
66 | BuildRequires: xorg-lib-libXres-devel | |
67 | BuildRequires: xorg-lib-libXt-devel >= 1.0.0 | |
68 | BuildRequires: xorg-lib-libXtst-devel >= 1.0.99.2 | |
69 | BuildRequires: xorg-lib-libXv-devel | |
70 | BuildRequires: xorg-lib-libXxf86dga-devel | |
71 | BuildRequires: xorg-lib-libXxf86misc-devel | |
72 | BuildRequires: xorg-lib-libXxf86vm-devel | |
73 | BuildRequires: xorg-lib-libfontenc-devel | |
74 | BuildRequires: xorg-lib-libpciaccess-devel >= 0.13 | |
75 | BuildRequires: xorg-lib-libxkbfile-devel | |
76 | BuildRequires: xorg-lib-libxkbui-devel >= 1.0.2 | |
77 | BuildRequires: xorg-lib-libxshmfence-devel >= 1.1 | |
78 | BuildRequires: xorg-lib-xtrans-devel >= 1.2.2 | |
79 | BuildRequires: xorg-proto-bigreqsproto-devel >= 1.1.0 | |
80 | BuildRequires: xorg-proto-damageproto-devel >= 1.1 | |
81 | BuildRequires: xorg-proto-dri3proto-devel >= 1.0 | |
82 | BuildRequires: xorg-proto-fixesproto-devel >= 4.1 | |
83 | BuildRequires: xorg-proto-fontcacheproto-devel | |
84 | BuildRequires: xorg-proto-fontsproto-devel | |
85 | BuildRequires: xorg-proto-glproto-devel >= 1.4.10 | |
86 | BuildRequires: xorg-proto-inputproto-devel >= 1.9.99.902 | |
87 | BuildRequires: xorg-proto-kbproto-devel >= 1.0.3 | |
88 | BuildRequires: xorg-proto-presentproto-devel >= 1.0 | |
89 | BuildRequires: xorg-proto-printproto-devel | |
90 | BuildRequires: xorg-proto-randrproto-devel >= 1.3 | |
91 | BuildRequires: xorg-proto-recordproto-devel | |
92 | BuildRequires: xorg-proto-renderproto-devel >= 0.11 | |
93 | BuildRequires: xorg-proto-resourceproto-devel | |
94 | BuildRequires: xorg-proto-scrnsaverproto-devel >= 1.1.0 | |
95 | BuildRequires: xorg-proto-videoproto-devel | |
96 | BuildRequires: xorg-proto-xcmiscproto-devel >= 1.2.0 | |
97 | BuildRequires: xorg-proto-xextproto-devel >= 1:7.0.99.3 | |
98 | BuildRequires: xorg-proto-xf86bigfontproto-devel >= 1.2.0 | |
99 | BuildRequires: xorg-proto-xf86dgaproto-devel >= 2.0.99.1 | |
100 | BuildRequires: xorg-proto-xf86driproto-devel >= 2.1.0 | |
101 | BuildRequires: xorg-proto-xf86miscproto-devel | |
102 | BuildRequires: xorg-proto-xf86vidmodeproto-devel >= 2.2.99.1 | |
103 | BuildRequires: xorg-proto-xproto-devel >= 7.0.22 | |
104 | BuildRequires: xorg-util-util-macros >= 1.10 | |
105 | Requires(post,postun): gtk-update-icon-cache | |
106 | Requires(post,postun): hicolor-icon-theme | |
107 | Requires: libjpeg-turbo | |
108 | Provides: vnc-client | |
109 | Conflicts: vnc | |
110 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
111 | ||
112 | %define _xserverver %(LC_ALL=C rpm -q --qf '%{V}' xorg-xserver-server-source 2> /dev/null) | |
113 | ||
114 | %description | |
115 | TigerVNC is a suite of VNC servers and clients that have a focus on | |
116 | performance and remote display functionality. Originally this software | |
117 | was based on the (never released) VNC 4 branch of TightVNC. | |
118 | ||
119 | %description -l pl.UTF-8 | |
120 | TigerVNC to zestaw serwerów i klientów VNC, które koncentrują się | |
121 | na wydajności i funkcjonalności zdalnego wyświetlania. Pierwotnie | |
122 | oprogramowanie oparte było na (nigdy nie wydanej) | |
123 | gałęzi VNC 4 TightVNC. | |
124 | ||
125 | %package server | |
126 | Summary: VNC X server - TigerVNC version | |
127 | Summary(pl.UTF-8): X serwer VNC - wersja TigerVNC | |
128 | Group: X11/Applications/Networking | |
129 | Requires(post,preun): /sbin/chkconfig | |
130 | Requires(post,preun,postun): systemd-units >= 38 | |
131 | Requires: xorg-app-rgb | |
132 | # for vncpasswd tool | |
133 | Requires: %{name}-utils = %{version}-%{release} | |
134 | # for mcookie | |
135 | Requires: util-linux | |
136 | Requires: libjpeg-turbo | |
137 | Requires: systemd-units >= 38 | |
138 | Requires: xkeyboard-config | |
139 | Requires: xorg-app-xauth | |
140 | Requires: xorg-app-xkbcomp | |
141 | Obsoletes: vnc-server | |
142 | ||
143 | %description server | |
144 | This package contains VNC X server in TigerVNC version. | |
145 | ||
146 | %description server -l pl.UTF-8 | |
147 | Ten pakiet zawiera X serwer VNC w wersji TigerVNC. | |
148 | ||
149 | %package utils | |
150 | Summary: Additional utilities for TigerVNC | |
151 | Summary(pl.UTF-8): Dodatkowe narzędzia do TigerVNC | |
152 | Group: X11/Applications/Networking | |
153 | Obsoletes: vnc-utils | |
154 | ||
155 | %description utils | |
156 | This package contains additional TigerVNC utilities: vncconfig and | |
157 | vncpasswd. vncconfig is used to configure and control a running | |
158 | instance of Xvnc, or any other X server with the VNC extension. | |
159 | vncpasswd generates password file (both on server and viewer side). | |
160 | ||
161 | %description utils -l pl.UTF-8 | |
162 | Ten pakiet zawiera dodatkowe narzędzia do tightvnc: vncconfig i | |
163 | vncpasswd. vncconfig służy do konfigurowania i kontroli działającej | |
164 | instancji Xvnc lub innego serwera X z rozszerzeniem VNC. | |
165 | vncpasswd służy to tworzenia pliku z hasłem (zarówno po | |
166 | stronie serwera, jak i przeglądarki). | |
167 | ||
168 | %package -n xorg-xserver-libvnc | |
169 | Summary: TigerVNC module for X.org server | |
170 | Summary(pl.UTF-8): Moduł TigerVNC dla servera X.org | |
171 | Group: X11/Servers | |
172 | %requires_eq_to xorg-xserver-server xorg-xserver-server-source | |
173 | Provides: xorg-xserver-module(vnc) | |
174 | ||
175 | %description -n xorg-xserver-libvnc | |
176 | This package contains libvnc.so module for X.org server, | |
177 | allowing others to access the desktop on your machine. | |
178 | ||
179 | %description -n xorg-xserver-libvnc -l pl.UTF-8 | |
180 | Ten pakiet zawiera moduł libvnc.so dla serwera X.org, | |
181 | pozwalający na zdalny dostęp do pulpitu. | |
182 | ||
183 | %prep | |
184 | %setup -q | |
185 | %patch0 -p1 | |
186 | %patch1 -p1 | |
187 | %patch3 -p1 | |
188 | %patch4 -p0 | |
189 | %patch5 -p1 | |
190 | %patch6 -p1 | |
191 | %patch7 -p1 | |
192 | %patch8 -p1 | |
193 | %patch10 -p1 | |
194 | %patch11 -p1 | |
195 | ||
196 | cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver | |
197 | cd unix/xserver | |
198 | %patch9 -p1 | |
199 | ||
200 | %build | |
201 | %cmake . | |
202 | %{__make} -j1 | |
203 | ||
204 | cd unix/xserver | |
205 | %{__aclocal} -I m4 | |
206 | %{__autoconf} | |
207 | %{__automake} | |
208 | export CXXFLAGS="%{rpmcxxflags} -fpermissive" | |
209 | %configure \ | |
210 | --with-os-name="PLD/Linux" \ | |
211 | --with-os-vendor="PLD/Team" \ | |
212 | --disable-config-dbus \ | |
213 | --disable-config-hal \ | |
214 | --disable-config-udev \ | |
215 | --without-xmlto \ | |
216 | --without-fop \ | |
217 | --without-doxygen \ | |
218 | --disable-devel-docs \ | |
219 | --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \ | |
220 | --disable-xorg \ | |
221 | --disable-xnest \ | |
222 | --disable-xvfb \ | |
223 | --disable-dmx \ | |
224 | --disable-xwin \ | |
225 | --disable-xephyr \ | |
226 | --disable-kdrive \ | |
227 | --disable-xfbdev \ | |
228 | --disable-dri \ | |
229 | --enable-dri2 \ | |
230 | --enable-dri3 \ | |
231 | --with-pic \ | |
232 | --disable-static \ | |
233 | --disable-xinerama \ | |
234 | --disable-composite \ | |
235 | --disable-wayland \ | |
236 | --disable-xwayland \ | |
237 | --enable-glx \ | |
238 | --enable-glx-tls \ | |
239 | --enable-aiglx \ | |
240 | --enable-dga \ | |
241 | --enable-glx-tls \ | |
242 | --enable-install-libxf86config \ | |
243 | --enable-record \ | |
244 | --disable-xfake \ | |
245 | --enable-secure-rpc \ | |
246 | --with-xkb-output=/var/lib/xkb \ | |
247 | --disable-unit-tests | |
248 | ||
249 | %{__make} -j1 | |
250 | cd - | |
251 | ||
252 | cd media | |
253 | %{__make} -j1 | |
254 | ||
255 | %install | |
256 | rm -rf $RPM_BUILD_ROOT | |
257 | install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{16x16,22x22,24x24,32x32,48x48,scalable}/apps \ | |
258 | $RPM_BUILD_ROOT%{_desktopdir} | |
259 | ||
260 | %{__make} install \ | |
261 | DESTDIR=$RPM_BUILD_ROOT | |
262 | ||
263 | cd unix/xserver/hw/vnc | |
264 | %{__make} install \ | |
265 | DESTDIR=$RPM_BUILD_ROOT | |
266 | cd - | |
267 | ||
268 | install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} | |
269 | ||
270 | install media/icons/tigervnc_16.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/16x16/apps/tigervnc.png | |
271 | install media/icons/tigervnc_22.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/22x22/apps/tigervnc.png | |
272 | install media/icons/tigervnc_24.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/tigervnc.png | |
273 | install media/icons/tigervnc_32.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/32x32/apps/tigervnc.png | |
274 | install media/icons/tigervnc_48.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/48x48/apps/tigervnc.png | |
275 | install media/icons/tigervnc.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps/tigervnc.svg | |
276 | ||
277 | install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} | |
278 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vncserver | |
279 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/vncserver | |
280 | ||
281 | install -d $RPM_BUILD_ROOT{%{systemdunitdir},/lib/systemd/system-generators} | |
282 | install -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.target | |
283 | install -p %{SOURCE5} $RPM_BUILD_ROOT/lib/systemd/system-generators/vncserver-service-generator | |
284 | ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.service | |
285 | ||
286 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir} | |
287 | ||
288 | %find_lang %{name} | |
289 | ||
290 | %clean | |
291 | rm -rf $RPM_BUILD_ROOT | |
292 | ||
293 | %post | |
294 | [ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database_post | |
295 | %update_icon_cache hicolor | |
296 | ||
297 | %postun | |
298 | [ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database_postun | |
299 | %update_icon_cache hicolor | |
300 | ||
301 | %post server | |
302 | /sbin/chkconfig --add vncserver | |
303 | %service vncserver restart "VNC server" | |
304 | NORESTART=1 | |
305 | %systemd_post vncserver.target | |
306 | ||
307 | %preun server | |
308 | if [ "$1" = "0" ]; then | |
309 | %service vncserver stop | |
310 | /sbin/chkconfig --del vncserver | |
311 | fi | |
312 | %systemd_preun vncserver.target | |
313 | ||
314 | %postun server | |
315 | %systemd_reload | |
316 | ||
317 | %triggerpostun server -- tigervnc-server < 1.3.0-5 | |
318 | [ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm | |
319 | [ ${RPM_ENABLE_SYSTEMD_SERVICE:-yes} = no ] && return 1 | |
320 | export SYSTEMD_LOG_LEVEL=warning SYSTEMD_LOG_TARGET=syslog | |
321 | if [ "$(echo /etc/rc.d/rc[0-6].d/S[0-9][0-9]vncserver)" != "/etc/rc.d/rc[0-6].d/S[0-9][0-9]vncserver" ]; then | |
322 | /bin/systemctl --quiet enable vncserver.target || : | |
323 | fi | |
324 | ||
325 | %files -f %{name}.lang | |
326 | %defattr(644,root,root,755) | |
327 | %doc README.txt doc/* | |
328 | %attr(755,root,root) %{_bindir}/vncviewer | |
329 | %{_mandir}/man1/vncviewer.1* | |
330 | %{_desktopdir}/tigervnc.desktop | |
331 | %{_iconsdir}/hicolor/*/apps/tigervnc.* | |
332 | ||
333 | %files server | |
334 | %defattr(644,root,root,755) | |
335 | %attr(755,root,root) %{_bindir}/Xvnc | |
336 | %attr(755,root,root) %{_bindir}/vncserver | |
337 | %attr(755,root,root) %{_bindir}/x0vncserver | |
338 | %attr(754,root,root) /etc/rc.d/init.d/vncserver | |
339 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vncserver | |
340 | %attr(755,root,root) /lib/systemd/system-generators/vncserver-service-generator | |
341 | %{systemdunitdir}/vncserver.target | |
342 | %{systemdunitdir}/vncserver.service | |
343 | %{_mandir}/man1/Xvnc.1* | |
344 | %{_mandir}/man1/vncserver.1* | |
345 | %{_mandir}/man1/x0vncserver.1* | |
346 | ||
347 | %files utils | |
348 | %defattr(644,root,root,755) | |
349 | %attr(755,root,root) %{_bindir}/vncconfig | |
350 | %attr(755,root,root) %{_bindir}/vncpasswd | |
351 | %{_mandir}/man1/vncconfig.1* | |
352 | %{_mandir}/man1/vncpasswd.1* | |
353 | ||
354 | %files -n xorg-xserver-libvnc | |
355 | %defattr(644,root,root,755) | |
356 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libvnc.so |