[blfs-dev] Miscellaneous issues regarding adding vnc

Thomas de Roo thomas at de-roo.org
Fri Jun 13 01:04:20 PDT 2014

-----Oorspronkelijk bericht-----
Van: blfs-dev [mailto:blfs-dev-bounces at lists.linuxfromscratch.org] Namens Bruce Dubbs
Verzonden: vrijdag 13 juni 2014 3:09
Aan: BLFS Development List
Onderwerp: [blfs-dev] Miscellaneous issues regarding adding vnc

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.

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:

     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
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Thanks for looking into this.

My 2 cents:
- x11vnc can run headless with a virtual desktop ("-create"). If you just need a VNC-server for remote admin tasks, this is the way to go. It does need the Xvfb, if I recall correctly.
- since we need a client too, tigervnc is probably the best way to go. I have tried many alternatives, but couldn't get them compiled on LFS. Most of them build against the xfree86 source.
- We can hack the download-script, but is that smart? Why not let the upstream-script take care of this and mention it in the instructions?
- We could add x11vnc _and_ tigervnc...

Met vriendelijke groet,
Thomas de Roo

More information about the blfs-dev mailing list