[blfs-dev] Miscellaneous issues regarding adding vnc

Armin K. krejzi at email.com
Fri Jun 13 03:58:19 PDT 2014


On 06/13/2014 03:08 AM, Bruce Dubbs wrote:
> I'm looking at add in a vnc server and client to the book.
> 
> I've looked at tightvnc, but that seems to require sources from xfree86
> so I'm not going to use that.
> 
> I've looked at x11vnc.  It seems to be fairly easy to build, but there
> are some deficiencies. First of all, it is only a server.  A client
> needs to be created also.  Secondly, it attaches to a real X11 display.
>  To me this is a limitation as I've used vnc before in headless
> systems.  What is needed, in my opinion, is the ability to create a
> virtual X11 display and then let one or more users connect to that in a
> shared environment for collaboration.
> 

In the past, vino (server) and vinagre (client) were my VNC solution.
Both are GNOME packages though. Nowadays, vino can't be configured
without GNOME configuration GUI, gnome-control-center so that's out of
the question. Vinagre is GTK+3 VNC client that only requires gtk-vnc
built against GTK+3 (both should be in archive/). You can look into that
for those that don't need a server too.

> Finally, I've looked at tigervnc.  It seems to offer a client and two
> servers: one server that works in a virtual X11 environment and one that
> connects it a real X11 display.  It also offers a vnc client.
> 
> The build of tigervnc is a bit unusual in that it wants to download
> sources from network.  It also requires a library, fltk, and then
> patches that library before build.
> 
> So here are a few of the issues:
> 
> 1.  Where do we put these packages in the book?  The fltk library (FLTK
> (pronounced "fulltick") is a cross-platform C++ GUI toolkit for
> UNIX®/Linux® (X11), Microsoft® Windows®, and MacOS® X. ) could go in
> Chapter 10, Graphics and Font Libraries, but it requires customization
> from the tigervnc site:
> 

FLTK is a GUI toolkit, much like GTK+ and Qt. So my guess is same
category as the mentioned ones won't hurt. For tigervnc itself I can't
be sure. It both fits in "Other Server Software" and "X Software". I
think the latter could be more precise.

> apply_patch()
> {
>     rm -f $2
>     wget http://www.fltk.org/strfiles/$1/$2
>     patch -p1 < $2
> }
> 
> apply_patch 2599 fltk-1_v4.3.x-keyboard-x11.patch
> ...
> 
> The tigervnc documentation calls for 13 patches.  This leads to issue 2:
> 
> 2.  Do we just put in instructions like the above or patch everything
> and create out own consolidated patch?
> 
> 3.  Where do the instructions for tigervnc go?  It could possibly go in
> Chapter 38. Other X-based Programs, it could be it's own chapter like
> Chapter 8. Virtualization or even go into Chapter 8 itself (a bit of a
> stretch but I could live with it).
> 
> 4.  fltk by default installs man pages in man/cat{1,3}.  Nothing else in
> BLFS does that, but it works fine.  The packages does have files such as
> fltk-config.man, but would require manual installation to install at
> man1/fltk-config.1 (or hacking the Makefile).  What's preferable here?
> 
> 
> Going back to issue 1, I could put both fltk and tigervnc procedures on
> the same page.  We do a slightly similar thing in the Xorg drivers
> section.  Is that reasonable?
> 
> Going back to issue 2, tightvnc also downloads xorg sources at a
> specific version.  Should we make a tarball for that?  There is a python
> script named `download-xorg-7.5` that gets the versions of about 44
> packages that we already built in Xorg.
> 
> I'll note that I think that tightvnc is NOT dependent on our build of
> Xorg -- that is I think the server could be built and used without a
> physical monitor or a full Xorg build.
> 
> So, how do I integrate this into the book?  Feedback appreciated.
> 
>   -- Bruce

If at doubt, Archlinux is your friend. Take a look at their build
scripts/patches for the both of these.

https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/fltk

https://projects.archlinux.org/svntogit/community.git/tree/trunk?h=packages/tigervnc

-- 
Note: My last name is not Krejzi.


More information about the blfs-dev mailing list