Vaibhav Verma

College Student and Hacker

Installing Ubuntu on the Samsung Series 9

Background

I’ve spent the last week tweaking my new Samsung Series 9 ultrabook and setting up a minimal Linux environment for development and daily use.

This post will describe various components of the setup process that I had diifficulty with.

Starting the Ubuntu Install

The Samsung Series 9 does not come with a CD drive so I chose to boot from USB to install Ubuntu on the machine. I used UNetbootin to create a bootable USB of the Ubuntu 12.04 Desktop AMD64 ISO.

Entering BIOS

After creating the USB, I had a hard time booting into the installation disk. Firstly, I had to figure out how to get into BIOS. Hitting the F2 key repeatedly during startup enters into BIOS

Booting from USB

Changing the device priority of the USB drive in BIOS did not let me boot into the Ubuntu installation disk. After trying multiple times and multiple disks, I simply disabled the hard drive as a boot device (using Shift + 1). This started the standard Ubuntu installation.

Driver Issues

Once I got Ubuntu 12.04 up and running on the machine, I saw that there were some issues with drivers for the touchpad and brightness on the machine.

Adjusting the Brightness

On the default Unity installation, I noticed that the screen would continuously flicker when I tried to increase or decrease the brightness. However, changing the backlight through ACPI worked just fine.

I was able to

1
$ echo 10 > /sys/class/backlight/acpi_video0/brightness

and change the brightness. So to setup a robust solution for adjusting brightness, I created a quick bash script to increase/decrease the brightness value in the file.

Brightness Control Through the Command Line
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
# This script adjusts your laptop's brightness.
# In order to use this, your /sys/class/backlight/acpi_video0/brightness should be writeable


FILE=/sys/class/backlight/acpi_video0/brightness

current_brightness=`cat $FILE`

case $1 in
up)
    new_brightness=`expr $current_brightness + 6`
    ;;
down)
    new_brightness=`expr $current_brightness - 6`
    ;;
*)
    echo $current_brightness
    exit;
    ;;
esac
echo $new_brightness > $FILE

Create this file in a directory containged in your PATH, and you should be able to run

1
2
$ sudo brightness up
$ sudo brightness down

to adjust your brightness. Now to change brightness via the function keys, you’ll need to bind them to this script in your window manager. I use Awesome WM for window management, so I was able to quickly add brightness control to my keybindings. You might also want to check out my entire awesome configuration file.

Getting the touchpad working

The touchpad on the Samsung Series 9 very feature rich on Windows, but its drivers don’t work perfectly out of the box. After a fresh Ubuntu install, I was able to left click and right click on the machine, but I wasn’t able to click and drag, and I wasn’t able to two-finger scroll.

In order to fix this I needed to add the Synaptics configuration file below.

Synaptics Configuration for Samsung Series 9 Touchpad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Place this in /usr/share/X11/xorg.conf.g/52-synaptics/samsung.conf
# Configure clickpad for Samsung Series 9 (NP900X3B).

Section "InputClass"
        Identifier      "touchpad"
        MatchIsTouchpad "on"
        # Enable the clickpad and set click actions
        # Single click = left button
        # Two-finger click = right button
        # Three-finger click = middle button
        Option          "ClickPad"      "1"
        Option          "ClickFinger1"  "1"
        Option          "ClickFinger2"  "3"
        Option          "ClickFinger3"  "2"
        Option          "TapButton2"    "2"
        Option          "TapButton3"    "3"

        # Define the right click area.

        Option          "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"


        Option          "SHMConfig"     "on"
        # Enable palm detection and set palm
        # senstitivity
        Option          "PalmDetect"    "1"
        Option          "PalmMinWidth"  "5"
        Option          "PalmMinZ"      "40"
        Option          "VertTwoFingerScroll" "on"
EndSection

I found the above configuration file on the Ubuntu community site for Samsung Series 9, and tweaked it before getting two finger scrolling, two finger tap for middle click working, and right clicking working properly.

To see the effects of the configuration file above, you’ll need to restart X.

1
$ sudo restart lightdm

Note: I would not recommend creating the psmouse.modprobe file as described on the Ubuntu community site. It disabled the synaptics driver and got rid of two finger scrolling entirely when I tried it.

In a later post, I will discuss my minimal window manager and development setup.

Feel free to let me know if you’re facing issues with this setup.