1 %bcond_without h264 # H264 support
2 %bcond_without systemd # systemd
4 %define xversion 1.21.0
6 Summary: A TigerVNC remote display system
7 Summary(pl.UTF-8): System zdalnego dostępu TigerVNC
12 Group: X11/Applications/Networking
13 #Source0Download: https://github.com/TigerVNC/tigervnc/releases
14 Source0: https://github.com/TigerVNC/tigervnc/archive/v%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5: 3a794e3a063443e07250de8e99e2e05a
16 Source1: %{name}.desktop
17 Source2: vncserver.init
18 Source3: vncserver.sysconfig
19 Patch4: %{name}-shebang.patch
20 Patch100: xserver.patch
21 URL: https://tigervnc.org/
22 BuildRequires: ImageMagick
23 BuildRequires: ImageMagick-coder-png
24 BuildRequires: ImageMagick-coder-svg
25 BuildRequires: OpenGL-devel >= 1.2
26 BuildRequires: Mesa-dri-devel >= 7.8.1
28 BuildRequires: cmake >= 3.10.0
29 # libavcodec libavutil libswscale
30 %{?with_h264:BuildRequires: ffmpeg-devel}
31 BuildRequires: fltk-devel
32 BuildRequires: gettext-tools
33 BuildRequires: gnutls-devel
34 BuildRequires: libjpeg-turbo-devel
35 BuildRequires: libstdc++-devel
36 BuildRequires: nettle-devel
37 BuildRequires: xorg-xserver-server-source >= %{xversion}
38 BuildRequires: zlib-devel
39 # xserver BRs, should match xorg-xserver-server.spec
41 BuildRequires: OpenGL-GLX-devel
42 BuildRequires: autoconf >= 2.60
43 BuildRequires: automake
44 BuildRequires: libdrm-devel >= 2.4.89
45 BuildRequires: libselinux-devel >= 2.0.86
46 BuildRequires: libtool >= 2:2.2
47 BuildRequires: libunwind-devel
49 BuildRequires: ncurses-devel
50 BuildRequires: pam-devel
51 BuildRequires: perl-base
52 BuildRequires: pixman-devel >= 0.27.2
53 BuildRequires: pkgconfig >= 1:0.19
54 BuildRequires: rpmbuild(macros) >= 1.647
55 %{?with_systemd:BuildRequires: systemd-devel >= 1:209}
56 BuildRequires: xorg-app-mkfontscale
57 BuildRequires: xorg-font-font-util >= 1.1
58 BuildRequires: xorg-lib-libX11-devel
59 BuildRequires: xorg-lib-libXau-devel
60 BuildRequires: xorg-lib-libXaw-devel
61 BuildRequires: xorg-lib-libXdamage-devel
62 BuildRequires: xorg-lib-libXdmcp-devel
63 BuildRequires: xorg-lib-libXext-devel >= 1.0.99.4
64 BuildRequires: xorg-lib-libXfont2-devel >= 2.0.0
65 BuildRequires: xorg-lib-libXi-devel >= 1.2.99.1
66 BuildRequires: xorg-lib-libXmu-devel
67 BuildRequires: xorg-lib-libXpm-devel
68 BuildRequires: xorg-lib-libXrandr-devel
69 BuildRequires: xorg-lib-libXrender-devel
70 BuildRequires: xorg-lib-libXres-devel
71 BuildRequires: xorg-lib-libXt-devel >= 1.0.0
72 BuildRequires: xorg-lib-libXtst-devel >= 1.0.99.2
73 BuildRequires: xorg-lib-libXv-devel
74 BuildRequires: xorg-lib-libXxf86dga-devel
75 BuildRequires: xorg-lib-libXxf86vm-devel
76 BuildRequires: xorg-lib-libfontenc-devel
77 BuildRequires: xorg-lib-libpciaccess-devel >= 0.13
78 BuildRequires: xorg-lib-libxcvt-devel
79 BuildRequires: xorg-lib-libxkbfile-devel
80 BuildRequires: xorg-lib-libxshmfence-devel >= 1.1
81 BuildRequires: xorg-lib-xtrans-devel >= 1.3.5
82 BuildRequires: xorg-proto-bigreqsproto-devel >= 1.1.0
83 BuildRequires: xorg-proto-compositeproto-devel => 0.4
84 BuildRequires: xorg-proto-damageproto-devel >= 1.1
85 BuildRequires: xorg-proto-dri2proto-devel >= 2.8
86 BuildRequires: xorg-proto-dri3proto-devel >= 1.2
87 BuildRequires: xorg-proto-fixesproto-devel >= 6.0
88 BuildRequires: xorg-proto-fontcacheproto-devel
89 BuildRequires: xorg-proto-fontsproto-devel >= 2.1.3
90 BuildRequires: xorg-proto-glproto-devel >= 1.4.17
91 BuildRequires: xorg-proto-inputproto-devel >= 2.3.99.1
92 BuildRequires: xorg-proto-kbproto-devel >= 1.0.3
93 BuildRequires: xorg-proto-presentproto-devel >= 1.2
94 BuildRequires: xorg-proto-printproto-devel
95 BuildRequires: xorg-proto-randrproto-devel >= 1.6.0
96 BuildRequires: xorg-proto-recordproto-devel >= 1.14
97 BuildRequires: xorg-proto-renderproto-devel >= 0.11
98 BuildRequires: xorg-proto-resourceproto-devel >= 1.2.0
99 BuildRequires: xorg-proto-scrnsaverproto-devel >= 1.1.0
100 BuildRequires: xorg-proto-videoproto-devel
101 BuildRequires: xorg-proto-xcmiscproto-devel >= 1.2.0
102 BuildRequires: xorg-proto-xextproto-devel >= 1:7.3
103 BuildRequires: xorg-proto-xf86bigfontproto-devel >= 1.2.0
104 BuildRequires: xorg-proto-xf86dgaproto-devel >= 2.0.99.1
105 BuildRequires: xorg-proto-xf86driproto-devel >= 2.1.0
106 BuildRequires: xorg-proto-xf86miscproto-devel
107 BuildRequires: xorg-proto-xf86vidmodeproto-devel >= 2.2.99.1
108 BuildRequires: xorg-proto-xproto-devel >= 7.0.31
109 BuildRequires: xorg-util-util-macros >= 1.14
110 Requires(post,postun): gtk-update-icon-cache
111 Requires(post,postun): hicolor-icon-theme
112 Requires: libjpeg-turbo
115 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
117 %define _xserverver %(LC_ALL=C rpm -q --qf '%{V}' xorg-xserver-server-source 2> /dev/null)
120 TigerVNC is a suite of VNC servers and clients that have a focus on
121 performance and remote display functionality. Originally this software
122 was based on the (never released) VNC 4 branch of TightVNC.
124 %description -l pl.UTF-8
125 TigerVNC to zestaw serwerów i klientów VNC, które koncentrują się na
126 wydajności i funkcjonalności zdalnego wyświetlania. Pierwotnie
127 oprogramowanie oparte było na (nigdy nie wydanej) gałęzi VNC 4
131 Summary: VNC X server - TigerVNC version
132 Summary(pl.UTF-8): X serwer VNC - wersja TigerVNC
133 Group: X11/Applications/Networking
134 Requires(post,preun): /sbin/chkconfig
135 Requires(post,preun,postun): systemd-units >= 38
136 Requires: xorg-app-rgb
138 Requires: %{name}-utils = %{version}-%{release}
139 Requires: libjpeg-turbo
140 Requires: libselinux >= 2.0.86
141 Requires: pixman >= 0.27.2
142 Requires: systemd-units >= 38
145 Requires: xkeyboard-config
146 Requires: xorg-app-xauth
147 Requires: xorg-app-xkbcomp
148 Requires: xorg-lib-libXext >= 1.0.99.4
149 Requires: xorg-lib-libXfont2 >= 2.0.0
150 Requires: xorg-lib-libXtst >= 1.0.99.2
151 Obsoletes: vnc-server
154 This package contains VNC X server in TigerVNC version.
156 %description server -l pl.UTF-8
157 Ten pakiet zawiera X serwer VNC w wersji TigerVNC.
160 Summary: Additional utilities for TigerVNC
161 Summary(pl.UTF-8): Dodatkowe narzędzia do TigerVNC
162 Group: X11/Applications/Networking
166 This package contains additional TigerVNC utilities: vncconfig and
167 vncpasswd. vncconfig is used to configure and control a running
168 instance of Xvnc, or any other X server with the VNC extension.
169 vncpasswd generates password file (both on server and viewer side).
171 %description utils -l pl.UTF-8
172 Ten pakiet zawiera dodatkowe narzędzia do tightvnc: vncconfig i
173 vncpasswd. vncconfig służy do konfigurowania i kontroli działającej
174 instancji Xvnc lub innego serwera X z rozszerzeniem VNC. vncpasswd
175 służy to tworzenia pliku z hasłem (zarówno po stronie serwera, jak i
178 %package -n xorg-xserver-libvnc
179 Summary: TigerVNC module for X.org server
180 Summary(pl.UTF-8): Moduł TigerVNC dla servera X.org
182 %requires_eq_to xorg-xserver-server xorg-xserver-server-source
183 Requires: pixman >= 0.27.2
184 Provides: xorg-xserver-module(vnc)
186 %description -n xorg-xserver-libvnc
187 This package contains libvnc.so module for X.org server, allowing
188 others to access the desktop on your machine.
190 %description -n xorg-xserver-libvnc -l pl.UTF-8
191 Ten pakiet zawiera moduł libvnc.so dla serwera X.org, pozwalający na
192 zdalny dostęp do pulpitu.
198 cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver
204 %{!?with_h264:-DENABLE_H264=OFF} \
205 -DCMAKE_INSTALL_UNITDIR=%{systemdunitdir}
213 --disable-config-hal \
214 --disable-config-udev \
216 --disable-devel-docs \
217 --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
230 --with-xkb-output=/var/lib/xkb \
239 rm -rf $RPM_BUILD_ROOT
240 install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{16x16,22x22,24x24,32x32,48x48,scalable}/apps \
241 $RPM_BUILD_ROOT%{_desktopdir}
244 DESTDIR=$RPM_BUILD_ROOT
246 %{__make} -C unix/xserver/hw/vnc install \
247 DESTDIR=$RPM_BUILD_ROOT
249 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/libvnc.la
251 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
253 cp -p media/icons/tigervnc_16.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/16x16/apps/tigervnc.png
254 cp -p media/icons/tigervnc_22.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/22x22/apps/tigervnc.png
255 cp -p media/icons/tigervnc_24.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/tigervnc.png
256 cp -p media/icons/tigervnc_32.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/32x32/apps/tigervnc.png
257 cp -p media/icons/tigervnc_48.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/48x48/apps/tigervnc.png
258 cp -p media/icons/tigervnc.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps/tigervnc.svg
260 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
261 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vncserver
262 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/vncserver
264 ln -sr $RPM_BUILD_ROOT{%{_libexecdir},%{_bindir}}/vncserver
266 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
271 rm -rf $RPM_BUILD_ROOT
274 [ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_post
275 %update_icon_cache hicolor
278 [ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_postun
279 %update_icon_cache hicolor
282 /sbin/chkconfig --add vncserver
283 %service vncserver restart "VNC server"
286 if [ "$1" = "0" ]; then
287 %service vncserver stop
288 /sbin/chkconfig --del vncserver
294 %files -f %{name}.lang
295 %defattr(644,root,root,755)
296 %doc README.rst doc/*
297 %attr(755,root,root) %{_bindir}/vncviewer
298 %{_mandir}/man1/vncviewer.1*
299 %{_datadir}/metainfo/org.tigervnc.vncviewer.metainfo.xml
300 %{_desktopdir}/tigervnc.desktop
301 %{_desktopdir}/vncviewer.desktop
302 %{_iconsdir}/hicolor/*/apps/tigervnc.*
305 %defattr(644,root,root,755)
306 %attr(755,root,root) %{_bindir}/Xvnc
307 %attr(755,root,root) %{_bindir}/vncserver
308 %attr(755,root,root) %{_bindir}/x0vncserver
309 %attr(755,root,root) %{_sbindir}/vncsession
310 %attr(755,root,root) %{_libexecdir}/vncserver
311 %attr(755,root,root) %{_libexecdir}/vncsession-start
312 %attr(754,root,root) /etc/rc.d/init.d/vncserver
313 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vncserver
314 %dir %{_sysconfdir}/tigervnc
315 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tigervnc/vncserver-config-defaults
316 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tigervnc/vncserver-config-mandatory
317 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tigervnc/vncserver.users
318 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/tigervnc
319 %{systemdunitdir}/vncserver@.service
320 %{_mandir}/man1/Xvnc.1*
321 %{_mandir}/man1/x0vncserver.1*
322 %{_mandir}/man8/vncserver.8*
323 %{_mandir}/man8/vncsession.8*
326 %defattr(644,root,root,755)
327 %attr(755,root,root) %{_bindir}/vncconfig
328 %attr(755,root,root) %{_bindir}/vncpasswd
329 %{_mandir}/man1/vncconfig.1*
330 %{_mandir}/man1/vncpasswd.1*
332 %files -n xorg-xserver-libvnc
333 %defattr(644,root,root,755)
334 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libvnc.so