source: xsoft/other/tigervnc.xml@ cd9f166a

11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since cd9f166a was cd9f166a, checked in by Bruce Dubbs <bdubbs@…>, 2 years ago

Package updates.
Update to tigervnc-1.12.0.
Update to wireshark-3.4.10.
Update to qpdf-10.4.0.
Update to Mako-1.1.6 (Python module).
Update to bind/bind utilities 9.16.23.

  • Property mode set to 100644
File size: 17.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY tigervnc-download-http "https://github.com/TigerVNC/tigervnc/archive/v&tigervnc-version;/tigervnc-&tigervnc-version;.tar.gz">
8 <!ENTITY tigervnc-download-ftp " ">
9 <!ENTITY tigervnc-md5sum "e92945f43654e2a120f2c9d8b3a9b869">
10 <!ENTITY tigervnc-size "1.5 MB">
11 <!ENTITY tigervnc-buildsize "101 MB">
12 <!ENTITY tigervnc-time "0.5 SBU (Using parallelism=4)">
13 <!ENTITY tigervnc-xorg-version "1.20.7">
14]>
15
16<sect1 id="tigervnc" xreflabel="tigervnc-&tigervnc-version;">
17 <?dbhtml filename="tigervnc.html"?>
18
19 <sect1info>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Tigervnc-&tigervnc-version;</title>
24
25 <indexterm zone="tigervnc">
26 <primary sortas="a-tigervnc">tigervnc</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Tigervnc</title>
31
32 <para>
33 <application>Tigervnc</application> is an advanced VNC (Virtual
34 Network Computing) implementation. It allows creation of an Xorg server
35 not tied to a physical console and also provides a client for
36 viewing of the remote graphical desktop.
37 </para>
38
39 &lfs110a_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>
45 Download (HTTP): <ulink url="&tigervnc-download-http;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download (FTP): <ulink url="&tigervnc-download-ftp;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download MD5 sum: &tigervnc-md5sum;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download size: &tigervnc-size;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated disk space required: &tigervnc-buildsize;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated build time: &tigervnc-time;
71 </para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Required file:
80 <ulink url="&xorg-download-http;/xserver/xorg-server-&tigervnc-xorg-version;.tar.bz2"/>
81 </para>
82 </listitem>
83 </itemizedlist>
84
85 <note>
86 <para>
87 The version of <application>Xorg</application> may eventually be a few
88 versions out of date, but is required for the customizations needed
89 for this package.
90 </para>
91 </note>
92
93 <itemizedlist spacing="compact">
94 <listitem>
95 <para>
96 Required patch:
97 <ulink url="&patch-root;/tigervnc-&tigervnc-version;-configuration_fixes-1.patch"/>
98 </para>
99 </listitem>
100 <listitem>
101 <para>
102 Optional files:
103 <itemizedlist spacing="compact">
104 <listitem revision='sysv'>
105 <para><ulink url="&sources-anduin-http;/tigervnc/vncserver"/></para>
106 </listitem>
107 <listitem revision='sysv'>
108 <para><ulink url="&sources-anduin-http;/tigervnc/vncserver.1"/></para>
109 </listitem>
110 <listitem revision='systemd'>
111 <para><ulink url="&sources-anduin-http;/tigervnc/Xsession"/></para>
112 </listitem>
113 </itemizedlist>
114 </para>
115 </listitem>
116 </itemizedlist>
117
118 <bridgehead renderas="sect3">Tigervnc Dependencies</bridgehead>
119
120 <bridgehead renderas="sect4">Required</bridgehead>
121 <para role="required">
122 <xref linkend="cmake"/>,
123 <xref linkend="fltk"/>,
124 <xref linkend="gnutls"/>,
125 <xref linkend="libgcrypt"/>,
126 <xref linkend="libjpeg"/>,
127 <xref linkend="pixman"/>,
128 <xref linkend="xorg7-app"/>, and
129 <xref linkend="xorg7-legacy"/>
130 </para>
131
132 <bridgehead renderas="sect4">Recommended</bridgehead>
133 <para role="recommended">
134 <xref linkend="imagemagick"/> and
135 <xref linkend="linux-pam"/>
136 </para>
137
138 <para condition="html" role="usernotes">User Notes:
139 <ulink url="&blfs-wiki;/tigervnc"/></para>
140
141 </sect2>
142
143 <sect2 role="installation">
144 <title>Installation of Tigervnc</title>
145
146 <para>
147 First, make adjustments to the configuration files to make them
148 compatible with LFS systems:
149 <!-- Replaces an incompatible PAM file and disables SELinux support
150 in systemd units. Also modifies the search path for
151 /usr/libexec/vncserver to include /etc/X11/tigervnc -->
152 </para>
153
154<screen><userinput remap="pre">patch -Np1 -i ../tigervnc-&tigervnc-version;-configuration_fixes-1.patch</userinput></screen>
155
156 <para>
157 Install <application>tigervnc</application> by running the following
158 commands:
159 </para>
160
161<screen revision="sysv"><userinput># Put code in place
162mkdir -p unix/xserver &amp;&amp;
163tar -xf ../xorg-server-&tigervnc-xorg-version;.tar.bz2 \
164 --strip-components=1 \
165 -C unix/xserver &amp;&amp;
166( cd unix/xserver &amp;&amp;
167 patch -Np1 -i ../xserver120.patch ) &amp;&amp;
168
169# Build viewer
170cmake -G "Unix Makefiles" \
171 -DCMAKE_INSTALL_PREFIX=/usr \
172 -DCMAKE_BUILD_TYPE=Release \
173 -DINSTALL_SYSTEMD_UNITS=OFF \
174 -Wno-dev . &amp;&amp;
175make &amp;&amp;
176
177# Build server
178pushd unix/xserver &amp;&amp;
179 autoreconf -fiv &amp;&amp;
180
181 CPPFLAGS="-I/usr/include/drm" \
182 ./configure $XORG_CONFIG \
183 --disable-xwayland --disable-dri --disable-dmx \
184 --disable-xorg --disable-xnest --disable-xvfb \
185 --disable-xwin --disable-xephyr --disable-kdrive \
186 --disable-devel-docs --disable-config-hal --disable-config-udev \
187 --disable-unit-tests --disable-selective-werror \
188 --disable-static --enable-dri3 \
189 --without-dtrace --enable-dri2 --enable-glx \
190 --with-pic &amp;&amp;
191 make &amp;&amp;
192popd</userinput></screen>
193
194<screen revision="systemd"><userinput># Put code in place
195mkdir -p unix/xserver &amp;&amp;
196tar -xf ../xorg-server-&tigervnc-xorg-version;.tar.bz2 \
197 --strip-components=1 \
198 -C unix/xserver &amp;&amp;
199( cd unix/xserver &amp;&amp;
200 patch -Np1 -i ../xserver120.patch ) &amp;&amp;
201
202# Build viewer
203cmake -G "Unix Makefiles" \
204 -DCMAKE_INSTALL_PREFIX=/usr \
205 -DCMAKE_BUILD_TYPE=Release \
206 -Wno-dev . &amp;&amp;
207make &amp;&amp;
208
209# Build server
210pushd unix/xserver &amp;&amp;
211 autoreconf -fiv &amp;&amp;
212
213 CPPFLAGS="-I/usr/include/drm" \
214 ./configure $XORG_CONFIG \
215 --disable-xwayland --disable-dri --disable-dmx \
216 --disable-xorg --disable-xnest --disable-xvfb \
217 --disable-xwin --disable-xephyr --disable-kdrive \
218 --disable-devel-docs --disable-config-hal --disable-config-udev \
219 --disable-unit-tests --disable-selective-werror \
220 --disable-static --enable-dri3 \
221 --without-dtrace --enable-dri2 --enable-glx \
222 --with-pic &amp;&amp;
223 make &amp;&amp;
224popd</userinput></screen>
225
226 <para>
227 This package does not come with a test suite.
228 </para>
229
230 <para>
231 Now, as the <systemitem class="username">root</systemitem> user:
232 </para>
233
234<screen role="root"><userinput>#Install viewer
235make install &amp;&amp;
236
237#Install server
238( cd unix/xserver/hw/vnc &amp;&amp; make install ) &amp;&amp;
239
240[ -e /usr/bin/Xvnc ] || ln -svf $XORG_PREFIX/bin/Xvnc /usr/bin/Xvnc</userinput></screen>
241
242 <para revision="sysv">
243 Finally, modify the PAM file to be compatible with elogind:
244 </para>
245
246<screen role="root" revision="sysv"><userinput>sed -i 's/pam_systemd.so/pam_elogind.so/' /etc/pam.d/tigervnc</userinput></screen>
247
248<!-- These are installed as part of 'make install' for the client.
249 <para>
250 Finally, create a menu entry. As the
251 <systemitem class="username">root</systemitem> user:
252 </para>
253
254<screen role="root"><userinput>cat &gt; /usr/share/applications/vncviewer.desktop &lt;&lt; "EOF"
255<literal>[Desktop Entry]
256Type=Application
257Name=TigerVNC Viewer
258Comment=VNC client
259Exec=/usr/bin/vncviewer
260Icon=tigervnc
261Terminal=false
262StartupNotify=false
263Categories=Network;RemoteAccess;</literal>
264EOF
265
266install -vm644 media/icons/tigervnc_24.png /usr/share/pixmaps &amp;&amp;
267ln -sfv tigervnc_24.png /usr/share/pixmaps/tigervnc.png</userinput></screen>
268-->
269 </sect2>
270
271 <sect2 role="commands">
272 <title>Command Explanations</title>
273
274 <para>
275 <command>tar -xf .. xorg-server...</command>: This command extracts the
276 standard Xorg package into the tree in a location needed for modification.
277 </para>
278
279 <para>
280 <option>--disable ...</option>: Most options that are usually needed for
281 the standard Xorg server are not needed for the Xvnc instance being built.
282 </para>
283
284 <para>
285 <command>[ -e /usr/bin/Xvnc ] || ln ... Xvnc</command>: If the Xvnc server
286 is not installed in the <filename class='directory'>/usr/bin</filename>
287 directory, then create a link so the <command>vncserver</command> script
288 can find it.
289 </para>
290
291 </sect2>
292
293 <sect2 role="configuration">
294 <title>Configuring Tigervnc</title>
295
296 <para revision='sysv'>
297 The default installation of this package makes some changes in the way it
298 is used. The vncserver perl script is placed in /usr/libexec and the
299 server is designed to be run via a systemd style .service file or the
300 vncsession script as the root user. The man page for vncserver is placed
301 in section 8 of the man pages. The new procedures require a display
302 manager to be installed.
303 </para>
304
305 <para revision='sysv'>
306 To restore the previous behavior, install the additional downloaded
307 files as the <systemitem class="username">root</systemitem> user:</para>
308
309<screen role="nodump" revision='sysv'><userinput>install -m755 --owner=root ../vncserver /usr/bin &amp;&amp;
310cp ../vncserver.1 /usr/share/man/man1</userinput></screen>
311
312 <para revision='sysv'>
313 Using the previous procedures, the user specific configuration files of
314 vncserver reside in the <filename class='directory'>.vnc</filename>
315 directory in the user's home directory. The
316 <filename>xstartup</filename> file in that directory is a script
317 specifying what commands to run when a VNC desktop is started. If no
318 <filename>xstartup</filename> file exists, <command>vncserver</command>
319 will try to start an xterm in a twm session. An example
320 <filename>xstartup</filename> would be:
321 </para>
322
323<screen revision='sysv'>#!/bin/sh
324[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup
325[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources
326startlxde &amp;</screen>
327
328 <para revision='sysv'>
329 The <filename>xstartup</filename> file must be executable for the
330 commands in it to be executed, so run <command>chmod a+x
331 ~/.vnc/xstartup</command>.
332 </para>
333
334 <para revision='sysv'>
335 Set up the vnc passwd with <command>vncpasswd</command>. The
336 server can then be started with the <command>vncserver</command>
337 command.
338 See the man pages in section 1 for the vncserver for the server
339 system and vncviewer for the remote system.
340 </para>
341
342 <bridgehead renderas="sect3" revision="systemd">Server Configuration</bridgehead>
343
344 <!--
345 <note revision="systemd">
346 <para>
347 This section is optional and is only useful if you want to have VNC
348 sessions launch on system startup. Both configuration methods can
349 coexist on the same system.
350 </para>
351 </note>
352 -->
353 <para revision="systemd">
354 On systemd systems, another method of configuration is available.
355 This configuration provides the added benefit of making tigervnc
356 systemd aware for VNC sessions and allows desktop environments like
357 <application>GNOME</application> to autostart services once the VNC
358 session is started. This configuration also gives the added benefit
359 of starting VNC Sessions on system startup. To setup the VNC server
360 in this fashion, follow these instructions.
361 </para>
362
363 <para revision="systemd">
364 First, install a rudimentary Xsession file so that the VNC server
365 can initialize X sessions properly:
366 </para>
367
368<screen role="root" revision="systemd"><userinput>install -vdm755 /etc/X11/tigervnc &amp;&amp;
369install -v -m755 ../Xsession /etc/X11/tigervnc</userinput></screen>
370
371 <para revision="systemd">
372 Next, setup a user mapping in
373 <filename>/etc/tigervnc/vncserver.users</filename>. This tells the VNC
374 Server which session is allocated to a user.
375 <!-- For example: :1=renodr will assign 'renodr' to :1 -->
376 </para>
377
378<screen role="root" revision="systemd"><userinput>echo ":1=$(whoami)" >> /etc/tigervnc/vncserver.users</userinput></screen>
379
380 <para revision="systemd">
381 Next, setup a configuration file to tell
382 <application>vncserver</application> which desktop environment should be
383 used and what display geometry should be used. There are several other
384 options that can be defined in this file, but they are outside the scope
385 of BLFS.
386 </para>
387
388<screen revision="systemd"><userinput>cat &gt; ~/.vnc/config &lt;&lt; EOF
389<literal># Begin ~/.vnc/config
390
391session=LXDE # The session must match one listed in /usr/share/xsessions.
392geometry=1024x768
393
394# End ~/.vnc/config</literal>
395EOF</userinput></screen>
396
397 <para revision="systemd">
398 To start the VNC Server, run the following command:
399 </para>
400
401<screen role="root" revision="systemd"><userinput>systemctl start vncserver@:1</userinput></screen>
402
403 <para revision="systemd">
404 To start the VNC Server when the system boots, run the following command:
405 </para>
406
407<screen role="root" revision="systemd"><userinput>systemctl enable vncserver@:1</userinput></screen>
408
409 </sect2>
410
411 <sect2 role="content">
412 <title>Contents</title>
413
414 <segmentedlist>
415 <segtitle>Installed Programs</segtitle>
416 <segtitle>Installed Libraries</segtitle>
417 <segtitle>Installed Directories</segtitle>
418
419 <seglistitem>
420 <seg>Xvnc,
421 vncconfig,
422 vncpasswd,
423 vncserver,
424 vncviewer, and
425 x0vncserver</seg>
426
427 <seg>libvnc.so</seg>
428 <seg>/usr/share/doc/tigervnc-&tigervnc-version;</seg>
429 </seglistitem>
430 </segmentedlist>
431
432 <variablelist>
433 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
434 <?dbfo list-presentation="list"?>
435 <?dbhtml list-presentation="table"?>
436
437 <varlistentry id="xvnc">
438 <term><command>Xvnc</command></term>
439 <listitem>
440 <para>
441 is a X VNC (Virtual Network Computing) server.
442 It is based on a standard X server, but it has a
443 <quote>virtual</quote> screen rather than a physical one
444 </para>
445 <indexterm zone="tigervnc xvnc">
446 <primary sortas="b-xvnc">Xvnc</primary>
447 </indexterm>
448 </listitem>
449 </varlistentry>
450
451 <varlistentry id="vncconfig">
452 <term><command>vncconfig</command></term>
453 <listitem>
454 <para>
455 is a program to configure and control a VNC server
456 </para>
457 <indexterm zone="tigervnc vncconfig">
458 <primary sortas="b-vncconfig">vncconfig</primary>
459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463 <varlistentry id="vncpasswd">
464 <term><command>vncpasswd</command></term>
465 <listitem>
466 <para>
467 allows you to set the password used to access VNC desktops
468 </para>
469 <indexterm zone="tigervnc vncpasswd">
470 <primary sortas="b-vncpasswd">vncpasswd</primary>
471 </indexterm>
472 </listitem>
473 </varlistentry>
474
475 <varlistentry id="vncserver">
476 <term><command>vncserver</command></term>
477 <listitem>
478 <para>
479 is a perl script used to start or stop a VNC server
480 </para>
481 <indexterm zone="tigervnc vncserver">
482 <primary sortas="b-vncserver">vncserver</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487 <varlistentry id="vncviewer">
488 <term><command>vncviewer</command></term>
489 <listitem>
490 <para>
491 is a client used to connect to VNC desktops
492 </para>
493 <indexterm zone="tigervnc vncviewer">
494 <primary sortas="b-vncviewer">vncviewer</primary>
495 </indexterm>
496 </listitem>
497 </varlistentry>
498
499 <varlistentry id="x0vncserver">
500 <term><command>x0vncserver</command></term>
501 <listitem>
502 <para>
503 is a program to make an X display on a physical
504 terminal accessible via TigerVNC or compatible viewers
505 </para>
506 <indexterm zone="tigervnc x0vncserver">
507 <primary sortas="b-x0vncserver">x0vncserver</primary>
508 </indexterm>
509 </listitem>
510 </varlistentry>
511
512 </variablelist>
513
514 </sect2>
515
516</sect1>
Note: See TracBrowser for help on using the repository browser.