Wednesday, March 7, 2012

Building a VMware View Thin Client using Ubuntu 10.04 LTS

I wrote a how to on building a VMware View PCIOP thin client on Ubuntu 10.04 LTS, http://sc.marseglia.org/jplms and learned a bit about the process and the View PCIOP client.


With simplicity in mind I started with Ubuntu 10.04 LTS Server with no package selection.  I ran through some tutorials on getting autologin working and starting a GUI application from the command line.  I was able to launch the VMware View application but I could not get it to work full screen.

Starting the application in this slim-est of environments just didn't work.  I tried a few ways to work around this, including determining via xrandr the geometry of the desktop and passing it to the vmware-view.bin executable as a command line argument.

It didn't help that the VMware View PCIOP client comes with zero documentation.  I finally found a PDF that detailed the command line options.  I saved the PDF to my Google Docs for safe keeping.  I also noticed that vmware-view is a wrapper script, all command line arguments passed to vmware-view are dropped.  Use vmware-view.bin to pass arguments.


The VMware View PCIOP client didn't full screen.  I think it must need a window manager in order to full screen.  I don't know why.


Note: the VMware View Open Client operates in full screen mode just fine without a window manager.  I was able to call it from .xinitrc ala /usr/bin/vmware-view --serverURL=<URL> --fullscreen

In the end I gave up on my "slim" environment and opted for Ubuntu 10.04 LTS Desktop.  From Ubuntu Desktop I had all the components I needed to get the View client running in full screen mode.  I modified GDM to autologin a non-privileged user account and removed all the menus and start up items from Gnome.  I created one start up item, my vmware-view client.


I could try to winnow the packages to just the base few needed.  I'm guessing GDM and Compiz are all that's needed.  But Ubuntu has so many dependencies I figured I would end up installing nearly the entire "Ubuntu Desktop" anyway.

References
  1. Marseglia, Michael.  "Build a VMware View Thin Client." https://docs.google.com/document/pub?id=1PrSN5pGQbZ-ZryML5DcZTu2A6Cg_h6QCrhxCiIq-p1w. n.p. Web. 7 March 2012. <https://docs.google.com/document/pub?id=1PrSN5pGQbZ-ZryML5DcZTu2A6Cg_h6QCrhxCiIq-p1w>
  2. "Using VMware View Client for Linux." https://docs.google.com/open?id=1yjUAxfFoabf7xZQ28URRhAkm2ElYdGG1FJoLgmD93chCymOsgjkHL_IRPsOY. VMware, Inc. Dec 2011. PDF. 7 March 2012. <https://docs.google.com/open?id=1yjUAxfFoabf7xZQ28URRhAkm2ElYdGG1FJoLgmD93chCymOsgjkHL_IRPsOY>
  3. natrinicle. "Setting Up Ubuntu as a Kiosk Web Appliance." http://www.instructables.com. instructables. n.d. Web. 7 Mar 2012.<http://www.instructables.com/id/Setting-Up-Ubuntu-as-a-Kiosk-Web-Appliance/?ALLSTEPS>
  4. "Configuration." http://library.gnome.org. The Gnome Project. n.d. Web. 7 March 2012. http://library.gnome.org/admin/gdm/stable/configuration.html.en#daemonconfig
  5. "Sessions Preferences" http://library.gnome.org. The Gnome Project. n.d. Web. 7 March 2012.  <http://library.gnome.org/users/user-guide/2.32/prefs-sessions.html.en>
  6. "Setting Session Defaults" http://library.gnome.org. The Gnome Project. n.d. Web. 7 March 2012. <http://library.gnome.org/admin/system-admin-guide/stable/sessions-3.html.en>
  7. k.dejong. "CustomXSession." https://help.ubuntu.com. n. p. 08 Apr 2011. Web. 7 Mar 2012. <https://help.ubuntu.com/community/CustomXSession>
  8. d2globalinc. "HOWTO: Disable or Enable Gnome Session Startup Applications from Command Line." http://ubuntuforums.org. n. p., 11 Feb 2009. Web. 7 Mar 2012. <http://ubuntuforums.org/showthread.php?t=1067101>