/[packages]/updates/8/tigervnc/current/SPECS/tigervnc.spec
ViewVC logotype

Contents of /updates/8/tigervnc/current/SPECS/tigervnc.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1650436 - (show annotations) (download)
Sun Nov 29 22:36:27 2020 UTC (3 years, 4 months ago) by luigiwalser
Original Path: cauldron/tigervnc/current/SPECS/tigervnc.spec
File size: 7626 byte(s)
rebuild for nettle
1 Name: tigervnc
2 Version: 1.11.0
3 Release: %mkrel 3
4 Summary: Viewer for the VNC remote display system
5 Group: Networking/Remote access
6 License: GPLv2+
7 URL: http://www.tigervnc.com/
8 Source0: https://github.com/TigerVNC/tigervnc/archive/v%{version}/%{name}-%{version}.tar.gz
9 Source1: xvnc.service
10 Source2: xvnc.socket
11 Source4: HOWTO.md
12
13 Patch8: tigervnc-getmaster.patch
14 # initially from openmdv
15 Patch12: tigervnc-1.8.90-mga-buildir.patch
16 #Patches from fedora
17
18 # copied from debian
19 Patch30: tigervnc-1.8.0-CVE-2014-8240.patch
20
21 # This is tigervnc-%%{version}/unix/xserver120.patch rebased on the latest xorg
22 Patch100: tigervnc-xserver120.patch
23
24 BuildRequires: x11-server-source
25 BuildRequires: gettext-devel
26 BuildRequires: pkgconfig(x11)
27 BuildRequires: libxext-devel
28 BuildRequires: x11-font-util
29 BuildRequires: x11-util-macros
30 BuildRequires: x11-xtrans-devel
31 BuildRequires: mesagl-devel
32 BuildRequires: libxkbfile-devel
33 BuildRequires: libxfont2-devel
34 BuildRequires: pixman-devel
35 BuildRequires: openssl-devel
36 BuildRequires: libpciaccess-devel
37 BuildRequires: libpam-devel
38 BuildRequires: libxtst-devel
39 BuildRequires: gnutls-devel
40 BuildRequires: imagemagick
41 BuildRequires: nasm
42 BuildRequires: java-devel
43 BuildRequires: desktop-file-utils
44 BuildRequires: jpackage-utils
45 BuildRequires: fltk-devel
46 BuildRequires: libtool
47 BuildRequires: autoconf
48 BuildRequires: libxi-devel
49 BuildRequires: libxinerama-devel
50 BuildRequires: freetype-devel
51 BuildRequires: libxdmcp-devel
52 BuildRequires: pam-devel
53 BuildRequires: libjpeg-devel
54 BuildRequires: cmake
55 BuildRequires: libxrandr-devel
56
57 %description
58 Virtual Network Computing (VNC) is a remote display system which
59 allows you to view a computing 'desktop' environment not only on the
60 machine where it is running, but from anywhere on the Internet and
61 from a wide variety of machine architectures. This package contains a
62 client which will allow you to connect to other desktops running a VNC
63 server.
64
65 #------------------------------------------------------------------------------
66
67 %package server
68
69 Summary: Server for the VNC remote display system
70 Group: Networking/Remote access
71
72 Requires: vnc-server-common
73
74 %description server
75 The VNC system allows you to access the same desktop from a wide
76 variety of platforms. This package is a TigerVNC server, allowing
77 others to access the desktop on your machine.
78
79 #------------------------------------------------------------------------------
80
81 %package server-module
82
83 Summary: Xorg module for the VNC remote display system
84 Group: Networking/Remote access
85
86 Requires: x11-server-xorg
87
88 %description server-module
89 This package contains libvnc.so module to X server, allowing others
90 to access the desktop on your machine.
91
92 #------------------------------------------------------------------------------
93
94 %package java
95
96 Summary: Java viewer for the VNC remote display system
97 Group: Networking/Remote access
98
99
100 # "TightVNC-specific" is not a typo, see the README file located inside the
101 # java source tree
102 %description java
103 This distribution is based on the standard VNC source and includes new
104 TightVNC-specific features and fixes, such as additional low-bandwidth
105 optimizations, major GUI improvements, and more.
106
107 There are three basic ways to use TigerVNC Java viewer:
108 1. Running applet as part of TigerVNC server installation.
109 2. Running applet hosted on a standalone Web server.
110 3. Running the viewer as a standalone application.
111
112 #------------------------------------------------------------------------------
113
114 %prep
115 %setup -q
116
117 %patch12 -p1 -b .builddir
118
119 cp -r /usr/share/x11-server-source/* unix/xserver
120 pushd unix/xserver
121 for all in `find . -type f -perm -001`; do
122 chmod -x "$all"
123 done
124 %patch100 -p1 -b .xserver120-rebased
125 popd
126
127 # libvnc.so: don't use unexported GetMaster function (bug #744881 again).
128 %patch8 -p1 -b .getmaster
129
130 %patch30 -p1 -b .CVE-2014-8240
131
132 %build
133
134 %cmake
135
136 %cmake_build
137
138 pushd unix/xserver
139 rm -f configure
140 autoreconf -fiv
141 %configure \
142 --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
143 --disable-xwin --disable-xephyr --disable-kdrive --disable-xwayland \
144 --with-pic --disable-static \
145 --with-default-font-path="catalogue:%{_sysconfdir}/X11/fontpath.d,built-ins" \
146 --with-fontrootdir=%{_datadir}/X11/fonts \
147 --with-xkb-output=%{_localstatedir}/lib/xkb \
148 --enable-glx --disable-dri --enable-dri2 --disable-dri3 \
149 --disable-unit-tests \
150 --disable-config-hal \
151 --disable-config-udev \
152 --without-dtrace \
153 --disable-devel-docs \
154 --disable-selective-werror
155
156 %make_build
157 popd
158
159
160 # Build icons
161 pushd media
162 %cmake
163 %cmake_build
164 popd
165
166 # Build Java applet
167 pushd java
168 %cmake
169 JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8" \
170 %cmake_build
171 popd
172
173 %install
174 %cmake_install
175
176 %make_install -C unix/xserver/hw/vnc
177
178 # Install systemd unit file
179 install -m644 %{SOURCE1} %{buildroot}%{_unitdir}/xvnc@.service
180 install -m644 %{SOURCE2} %{buildroot}%{_unitdir}/xvnc.socket
181
182 # Install desktop stuff
183 mkdir -p %{buildroot}%{_datadir}/icons/hicolor/{16x16,24x24,48x48}/apps
184
185 pushd media/icons
186 for s in 16 24 48; do
187 install -m644 tigervnc_$s.png %{buildroot}%{_datadir}/icons/hicolor/${s}x$s/apps/tigervnc.png
188 done
189 popd
190
191 # Install a replacement for /usr/bin/vncserver which will tell the user to read the
192 # HOWTO.md file
193 cat <<EOF > %{buildroot}/%{_bindir}/vncserver
194 #!/bin/bash
195 echo "vncserver has been replaced by a systemd unit."
196 echo "Please read /usr/share/doc/tigervnc/HOWTO.md for more information."
197 EOF
198 chmod +x %{buildroot}/%{_bindir}/vncserver
199
200 install -m 644 %{SOURCE4} .
201
202 %find_lang %{name} %{name}.lang
203
204 # remove unwanted files
205 rm -f %{buildroot}%{_libdir}/xorg/modules/extensions/libvnc.la
206
207 # Install Java applet
208
209 install -d -m 755 %{buildroot}%{_javadir}
210 install -d -m 755 %{buildroot}%{_datadir}/vnc/classes
211 pushd java/build
212
213 install -m 755 VncViewer.jar %{buildroot}%{_datadir}/vnc/classes/vncviewer-%{version}.jar
214 popd
215
216 pushd %{buildroot}%{_datadir}/vnc/classes
217 mv vncviewer-%{version}.jar %{buildroot}%{_javadir}
218 ln -s %{_javadir}/vncviewer-%{version}.jar VncViewer.jar
219 popd
220
221 pushd %{buildroot}%{_javadir}
222 ln -s vncviewer-%{version}.jar vncviewer.jar
223 ln -s vncviewer-%{version}.jar VncViewer.jar
224 popd
225
226 %post server
227 %systemd_post xvnc.service
228 %systemd_post xvnc.socket
229
230 %preun server
231 %systemd_preun xvnc.service
232 %systemd_preun xvnc.socket
233
234 %postun server
235 %systemd_postun xvnc.service
236 %systemd_postun xvnc.socket
237
238 %files -f %{name}.lang
239 %doc README.rst
240 %_defaultdocdir/%{name}/
241 %{_bindir}/vncviewer
242 %{_iconsdir}/*
243 %{_datadir}/applications/*
244 %{_mandir}/man1/vncviewer.1*
245
246
247 %files server
248 %doc HOWTO.md
249 %config(noreplace) %{_sysconfdir}/pam.d/tigervnc
250 %config(noreplace) %{_sysconfdir}/tigervnc/vncserver-config-defaults
251 %config(noreplace) %{_sysconfdir}/tigervnc/vncserver-config-mandatory
252 %config(noreplace) %{_sysconfdir}/tigervnc/vncserver.users
253 %{_unitdir}/vncserver@.service
254 %{_unitdir}/xvnc@.service
255 %{_unitdir}/xvnc.socket
256 %{_bindir}/vncconfig
257 %{_bindir}/vncpasswd
258 %{_bindir}/Xvnc
259 %{_bindir}/vncserver
260 %{_bindir}/x0vncserver
261 %{_sbindir}/vncsession
262 %{_libexecdir}/vncserver
263 %{_libexecdir}/vncsession-start
264 %{_mandir}/man1/Xvnc.1*
265 %{_mandir}/man1/vncpasswd.1*
266 %{_mandir}/man1/vncconfig.1*
267 %{_mandir}/man1/x0vncserver.1*
268 %{_mandir}/man8/vncserver.8*
269 %{_mandir}/man8/vncsession.8*
270
271 %files server-module
272 %{_libdir}/xorg/modules/extensions/libvnc.so
273
274 %files java
275 %{_javadir}/*.jar
276 %{_datadir}/vnc
277

  ViewVC Help
Powered by ViewVC 1.1.30