]> git.pld-linux.org Git - SPECS.git/blob - tigervnc.spec
SPECS updated Wed 1 May 10:14:00 CEST 2024
[SPECS.git] / tigervnc.spec
1 %bcond_without  h264    # H264 support
2 %bcond_without  systemd # systemd
3
4 %define         xversion        1.21.0
5
6 Summary:        A TigerVNC remote display system
7 Summary(pl.UTF-8):      System zdalnego dostępu TigerVNC
8 Name:           tigervnc
9 Version:        1.13.1
10 Release:        1
11 License:        GPL v2
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
27 BuildRequires:  cpp
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
40 # for glx headers
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
48 BuildRequires:  nasm
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
113 Provides:       vnc-client
114 Conflicts:      vnc
115 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
116
117 %define         _xserverver     %(LC_ALL=C rpm -q --qf '%{V}' xorg-xserver-server-source 2> /dev/null)
118
119 %description
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.
123
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
128 TightVNC.
129
130 %package server
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
137 # for vncpasswd tool
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
143 # for mcookie
144 Requires:       util-linux
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
152
153 %description server
154 This package contains VNC X server in TigerVNC version.
155
156 %description server -l pl.UTF-8
157 Ten pakiet zawiera X serwer VNC w wersji TigerVNC.
158
159 %package utils
160 Summary:        Additional utilities for TigerVNC
161 Summary(pl.UTF-8):      Dodatkowe narzędzia do TigerVNC
162 Group:          X11/Applications/Networking
163 Obsoletes:      vnc-utils
164
165 %description utils
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).
170
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
176 przeglądarki).
177
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
181 Group:          X11/Servers
182 %requires_eq_to xorg-xserver-server xorg-xserver-server-source
183 Requires:       pixman >= 0.27.2
184 Provides:       xorg-xserver-module(vnc)
185
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.
189
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.
193
194 %prep
195 %setup -q
196 %patch4 -p1
197
198 cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver
199 cd unix/xserver
200 %patch100 -p1
201
202 %build
203 %cmake . \
204         %{!?with_h264:-DENABLE_H264=OFF} \
205         -DCMAKE_INSTALL_UNITDIR=%{systemdunitdir}
206 %{__make}
207
208 cd unix/xserver
209 %{__aclocal} -I m4
210 %{__autoconf}
211 %{__automake}
212 %configure \
213         --disable-config-hal \
214         --disable-config-udev \
215         --without-dtrace \
216         --disable-devel-docs \
217         --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
218         --disable-xorg \
219         --disable-xnest \
220         --disable-xvfb \
221         --disable-xwin \
222         --disable-xephyr \
223         --disable-kdrive \
224         --disable-dri \
225         --enable-dri2 \
226         --disable-dri3 \
227         --with-pic \
228         --disable-static \
229         --enable-glx \
230         --with-xkb-output=/var/lib/xkb \
231         --disable-unit-tests
232
233 %{__make}
234 cd -
235
236 %{__make} -C media
237
238 %install
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}
242
243 %{__make} install \
244         DESTDIR=$RPM_BUILD_ROOT
245
246 %{__make} -C unix/xserver/hw/vnc install \
247         DESTDIR=$RPM_BUILD_ROOT
248
249 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/libvnc.la
250
251 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
252
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
259
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
263
264 ln -sr $RPM_BUILD_ROOT{%{_libexecdir},%{_bindir}}/vncserver
265
266 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
267
268 %find_lang %{name}
269
270 %clean
271 rm -rf $RPM_BUILD_ROOT
272
273 %post
274 [ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_post
275 %update_icon_cache hicolor
276
277 %postun
278 [ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_postun
279 %update_icon_cache hicolor
280
281 %post server
282 /sbin/chkconfig --add vncserver
283 %service vncserver restart "VNC server"
284
285 %preun server
286 if [ "$1" = "0" ]; then
287         %service vncserver stop
288         /sbin/chkconfig --del vncserver
289 fi
290
291 %postun server
292 %systemd_reload
293
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.*
303
304 %files server
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*
324
325 %files utils
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*
331
332 %files -n xorg-xserver-libvnc
333 %defattr(644,root,root,755)
334 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libvnc.so
This page took 0.12733 seconds and 4 git commands to generate.