Chromebook for Power Users: Part 3

After installing Debian Linux in a chroot on my Chromebook, I slimmed LXDE down a bit before connecting to my FreeBSD desktop running xrdp.

This is the final post in a 3-part series on using a Chromebook as a power user. Part 1 gave a high-level overview of how I'm using my Chromebook and some basic Chrome OS configuration steps. Part 2 dug deeper to show advanced users how to use crouton to install Debian Linux in a chroot. This post finishes up by configuring LXDE and connecting to a remote FreeBSD desktop running xrdp.

Configuring LXDE on Debian

I'll walk through all of the configuration changes that I made, but feel free to skip any that don't appeal to you. The steps in this section are performed inside the Debian chroot, so use sudo startlxde to launch LXDE. If you're not familiar with LXDE, all the menu options referenced below are on the main menu in the bottom left corner unless otherwise specified. When needed, you can find several terminals to choose from in the System Tools section of that menu.

Especially if you're a FreeBSD user (but even if you're not), you probably want to enable shell history searching using the arrow keys. Next, enable tapping on the trackpad within Debian so you don't have to physically click it—not only will it make your life tremendously easier, but it also reduces wear on your trackpad.

sudo mkdir /etc/X11/xorg.conf.d
sudo cp /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11/xorg.conf.d/

Add the following lines to the new /etc/X11/xorg.conf.d/50-synaptics.conf inside the first Section "InputClass" block (right before EndSection is fine):

# Enable tapping on the trackpad:
Option "TapButton1" "1"
Option "TapButton2" "3"

Log out of LXDE and relaunch it for the changes to take effect. The real icing on the cake is having touchpad taps passed through to the remote OS, so don't skip this step (I did at first and got quite frustrated).

The following LXDE changes are a breeze, so you should be able to fly through them. Some suggestions came from Things To Do After Installing Ubuntu on a Chromebook Using Crouton; you might want to read it for more ideas (the Ubuntu-specific items won't apply, but the LXDE items will). My list is mostly focused on making LXDE even more lightweight and easier to navigate since I don't spend much time using it.

  1. To prevent the screensavers on Chrome OS and LXDE from getting in each other's way, enter sudo apt-get purge xscreensaver in a terminal to completely remove the LXDE screensaver.
  2. If you changed your Chromebook's resolution to 1536 x 864 as I described in Part 1, you should match that in LXDE. Launch Preferences -> Default applications for LXSession and go to the Autostart tab. Enter @setres 1536 864 into the box and click Add.
  3. In the same settings window, you can uncheck or remove the xscreensaver item and uncheck ClipIt to prevent it from running on login. Close the window when you're done.
  4. Click the icon beside the main menu to launch File Manager PCManFM, and then go to Edit -> Preferences. Select Open files with single click and Don't ask options on launch executable file. Click Close and then quit the file manager.
  5. Launch Preferences -> Openbox Configuration Manager, go to the Desktops tab, reduce the number of desktops to 1, and click Close.
  6. For a cleaner and less depressing UI, go to Preferences -> Customize Look and Feel and set Widget to Adwaita. On the Window Border tab, set Theme to Clearlooks. Tap Apply and then Close.
  7. Right-click (2-finger tap) the taskbar and select Panel Settings. On the Appearance tab, set Background to System theme. Under Font, uncheck Custom color. Switch to the Panel Applets tab and remove the Desktop Pager, the (now extra) Spacer after it, and the CPU Usage Monitor. You could also remove the last Application Launch Bar in the list, which would remove the ScreenLock and Logout icons from the far right side, but I prefer to perform step 8 instead. Close the dialog when you're finished.
  8. Right-click the ScreenLock icon on the right side and select "Application Launch Bar" Settings to remove the ScreenLock launcher.
  9. Right-click the Web Browser icon on the left side and select "Application Launch Bar" Settings to replace the Web Browser launcher with one for LXTerminal. I do this because I rarely ever use a browser in this chroot, but I do make occasional configuration changes.

Connecting to xrdp on FreeBSD

With all that work out of the way, it's time to install rdesktop and create a basic script for connecting to the remote machine. I'm running xrdp on my desktop, but you can replace the command below if you're running something different. Use your favorite text editor to create ~/Desktop/Connect.sh with the following contents (replace "beastie" with your remote machine's name):

#!/bin/sh
rdesktop -f -x l beastie
exit

The -f switch starts the session in full-screen mode whereas -x l sets the experience to LAN (high bandwidth). Finally, make the script executable and install rdesktop:

chmod +x ~/Desktop/Connect.sh
sudo apt-get install rdesktop

Now you can simply click the script on your desktop any time you want to connect. To exit full-screen mode in rdesktop, press Ctrl + Alt + Enter.

This is a great way to remotely access a FreeBSD desktop from a Chromebook and could be used to connect to Linux machines as well. It completely removes the limitations of a Chromebook from the equation, so I'm effectively using a lightweight and quiet Chromebook with a 3.4 GHz Intel Core i7 CPU, dual 1 TB drives in a ZFS mirror, and 16 GB of RAM. With an active RDP session and nothing else running in Chrome OS, I typically have 1-2 GB of free RAM on the Chromebook. If your Chromebook has less RAM and ends up running low, you can always try killing some Chrome processes. The only "issue" I've had was that my hotkey for Yakuake (a slide-down terminal) was F12, which doesn't exist on my Chromebook, so I changed the hotkey to F10 instead. Everything else—including standard keyboard shortcuts—works perfectly.

, , , , ,
comments powered by Disqus