Portable Sunlab

The Portable Sunlab is a fast and easy-to-use system for remotely accessing the CS department. A simple utility takes care of setting up SSH keys and copying all the necessary files and programs to a USB drive. You can take this USB drive to any computer (Windows, Mac, or *nix) and with a single click remotely access your entire CS department desktop environment.

In addition, Portable Sunlab uses a technology called NX that greatly improves the performance of X forwarding. It should be usable even from off-campus locations.

Current Status

Portable Sunlab is in beta. There are rough spots, especially on Windows. While it appears to be quite stable, you should save your work frequently in case something bad happens. Please send bug reports to portable-sunlab@cs.brown.edu. Please also send an email if you get Portable Sunlab working on a platform not listed below.

Portable Sunlab has been tested on:

  • Windows 7
  • Windows 7 in the CIS public clusters
  • Mac OS X 10.6 in the CIS public clusters
  • Debian (should work on other Linux/Unix flavors as well)

Installing Portable Sunlab

  1. Insert a USB thumb drive into a CS department Linux desktop. If you are using the default GNOME desktop environment, it will mount automatically and appear on your desktop. (If you are using a different desktop environment, you may have to mount it manually by running usbmount -a.)
  2. In a terminal, run install-psunlab and choose your USB drive from the list.
  3. When the command completes, unmount your USB drive by right-clicking on the desktop icon and selecting "Eject." (If you mounted it manually, run usbumount -a.)

Using Portable Sunlab

Windows

  1. Insert the USB drive into the computer and open the portable-sunlab\windows folder.
  2. Double-click the "Windowed" or "Fullscreen" icon.
  3. The first time you run Portable Sunlab on a computer:
    • You may see a Windows Firewall window. Click "Cancel."
    • You may see a message that says "The server's host key is not cached in the registry..." Click "Yes."
    • You may get an error message that says "Disconnected: no supported authentication methods available." If this happens, click "OK," try again, and it should work.
  4. Ignore the error message that says "Unable to load file 'ssh.cs.brown.edu' for reading." Just click "OK."
  5. Wait for the Sunlab login window to appear. Log in with your CS department username and Kerberos password.

Mac OS X 10.8 (Mountain Lion)

  1. Install X11 if it's not already installed.
  2. Insert the USB drive and open the portable-sunlab/mac folder in the Finder.
  3. Double-click the "Portable Sunlab" application.
  4. Wait for the Sunlab login window to appear. Log in with your CS department username and Kerberos password.

Mac OS X 10.5-10.7

  1. Insert the USB drive and open the portable-sunlab/mac folder in the Finder.
  2. Double-click the "Portable Sunlab" application.
  3. Wait for the Sunlab login window to appear. Log in with your CS department username and Kerberos password.

Older Mac OS X

  1. Insert the USB drive.
  2. Start X11, from the Applications/Utilities folder.
  3. From the xterm, 'cd' into the portable-sunlab/unix folder on the USB drive (it should be in /Volumes).
  4. Run sh launch.sh
  5. Wait for the Sunlab login window to appear. Log in with your CS department username and Kerberos password.

Linux/Unix

  1. Insert the USB drive and mount it if it doesn't mount automatically.
  2. From a terminal, run sh launch.sh in the portable-sunlab/unix directory on the USB drive.
  3. Wait for the Sunlab login window to appear. Log in with your CS department username and Kerberos password.

Installing Portable Sunlab Locally

If you would like to install Portable Sunlab on your computer, instead of using a USB drive, you can simply copy the portable-sunlab directory from the USB drive to your local computer.

Lost USB Drive / Revoking Portable Sunlab Keys

If you lose your Portable Sunlab drive, or would like to discontinue use of the Portable Sunlab, you should revoke the corresponding SSH keys by running revoke-psunlab. This will cause all Portable Sunlab installations associated with your account to cease working. (Other SSH keys will not be affected.)

Screenshots

Screenshot of Portable Sunlab on Mac OS X

Screenshot of Portable Sunlab on Mac OS X

Screenshot of Portable Sunlab on Windows

Screenshot of Portable Sunlab on Windows


Known Issues & Limitations

X11.app crashes (reported on Mac OS X 10.6.8)

X11.app crashes as soon as you launch Portable Sunlab. Solution: install XQuartz, the more up-to-date open source project behind X11.app. Be sure to read the install notes carefully. In particular, log out and back on after installing for the first time.

Poor Performance

The Portable Sunlab may work poorly in the following situations:

  1. If you are connecting over a wireless network. Wireless networks introduce packet loss and occasional high latency, which degrade performance. Brown's wireless networks are especially bad. Whenever possible, try to use a wired Ethernet connection.
  2. If you are connecting from a location that is geographically far away from Brown. Performance degrades as latency increases, and latency increases the farther you get from Brown (blame physics). Anywhere in New England should be fine. California is sluggish but somewhat usable. Asia would probably be terrible.
  3. If you are connecting from a slow (low-bandwidth) Internet connection. If you have broadband you should be fine.

Key bindings on Mac OS X

Not all modifier keys (Alt, Ctrl, etc.) are forwarded when connecting from Mac OS X. This may affect your ability to use certain keyboard-heavy window managers. There is no known solution.

Windows key on Windows

There are several issues related to the Windows key when connecting from Windows:

  • The mod4 modifier key (which is used by Xmonad) is not properly mapped to the Windows key. To fix this, you must add the following to your ~/.Xmodmap file:

    add mod4 = Super_L Super_R

  • The Windows+L key combination is not forwarded to Portable Sunlab. It is always intercepted by Windows to lock your screen.
  • Portable Sunlab sometimes exits fullscreen mode if you hold down the Windows key for an extended period of time.