Ubuntu 10.10 on Vaio VPC S12 V9E

A few weeks ago I decided to completely opt for Linux and no longer have a dual boot system.

I'm no longer using Windows 7 on native chips for quite some time now. Instead, I'm booting into VM to get my coding tasks done. Second, I need (and want) to have my beloved Visual Studio 2010 when it comes to .NET development. However, despite .NET 3.5/4.0 development, I don't use Windows 7 much at home. Consequently, I moved completely to Ubuntu 10.10 Maverick Merkaat. This post summarizes my installation experience and serves as an installation log.


Installation of "Perfect 10" is a no-brainer. Download the ISO image, burn it to disc (or install to USB), boot. Follow the installation guidelines. Basically it is as easy as NYNF ("Next -> Yes -> Next -> Finish"). Reboot. That's it.

Wait. Really that easy? No, not really. Here the adventure begins...

First of all, after rebooting I have been greeted by a pleasant and polite black screen. It says nothing, it does nothing. A gentle boot. I don't even had the chance to switch to TTY. From that time on, I knew I'll have fun with my video settings. To at least get some visual feedback on what Linux is doing, you need to temporarily modify the boot options in GRUB boot loader.

Update GRUB boot options

To get GRUB menu displayed, you may need to hold the [SHIFT] key pressed while booting. Once you're in menu, you need to edit boot settings for the Ubuntu entry by pressing [e]. For kernel options, append nomodeset and i8042.nopnp to the existing ones (most often prior to "quiet splash" or "no-splash" options).

nomodeset enables your graphics card, i8042.nopnp brings back touchpad. Once done, press [CTRL-x] to boot. Wait a few seconds and... tadaa! Here it is, the shiny new Maverick Merkaat.

Sony is Linux-friendly... somehow...

Positivity: Once booting with nomodeset, one can experience that all major devices are being detected automatically and fully supported. Indeed, Sony is Linux-friendly. Well, at least to the extent that WiFi, Ethernet and Display is working.

After setting up WLAN connection, the first thing is to get package updates and install Vim. I wonder why it's not included by default. Anyway. Vim is just a tool in order to get my primary purpose done: persist GRUB boot loader changes. Since Merkaat is based on new GRUB2, changing /etc/default/grub (and a quick sudo update-grub) does the job.

However, after success comes failure. I quickly realized that Ubuntu seems to run with VESA drivers only (sluggish and slow UI updates, smeary display). A quick check revealed it: NVidia drivers are missing. My S12V9E has 310M model built-in, the Sony display is 1366x786 (aka. "Sort-Of-HD-Cineastic-16-9-Size"). The first thing to do is surely to look up on the internet for fellow sufferers. So let's just fire up Firefox. And, open another door to the room of hurdles.

Firefox is so slow on Linux x64

It took Firefox about a minute to display google.com! All subsequent requests were awfully slow! What's happening here? I decided to have a comparison with other browsers and chose Epiphany (sudo apt-get install epiphany-browser). What a surprise! It's lightning-fast! This was evidence enough: Firefox was the culprit.

Getting Firefox to run at reasonable speed took just a few minutes of analysis and research. The cause: DNS resolving and IPv6 settings. I personally decided to go for the "quick fix" since only Firefox was affected (at least I only experienced Firefox as being affected only). The fix is rather simple:

Type about:config in Firefox' address bar, confirm to be cautious. Then, just switch network.dns.disableIPv6 to true ("toggle value"). Fasten seatbelt and restart Firefox. After getting my internet browsing experience back to normal, I could refocus on my original issue: The graphics driver and video display.

The restricted drivers game with NVIDIA

After some halfbaked internet education on Linux and nVidia 310M / Sony pair, I decided to not install the latest driver but the version reported to be working safe: nVidia Linux display driver 256.53. Installation procedure: [CTRL+ALT+F1] for TTY1, sudo service gdm stop to shutdown Xserver, run the driver installation package, answer a few questions and sudo service gdm start.

Attention: The last question of nVidia driver installation is something like: "Would you like to run nvidia-xconfig and write a new xorg.conf?". Please, make sure that you answer this question with No!.

If you let the installation generate the new xorg.conf and start gdm, you'll most likely enjoy a blank black screen again. The reason for this is a little bug in nVidia's display drivers which needs to be worked around by explicitly setting the EDID file (through CustomEDID option).

Lucky me that I previously stumbled upon the Vaio-F11-Linux-Project. The smart guys over there made a nice nVidia setup wiki page explaining the custom configuration as well as where to find the EDID file. Basically, the same applies for the VPCS12V9E, except that my EDID file was located at /proc/acpi/video/IGPU/LCD0/. As a result, the important parts of my xorg.conf (located at /etc/X11/) looks like this:

Section "Device"
    Identifier     "Configured Video Device"
    Driver         "nvidia"
    Option         "ConnectedMonitor" "DFP-0"
    Option         "CustomEDID" "DFP-0:/proc/acpi/video/IGPU/LCD0/EDID"

Reboot and finally enjoy a nice and crisp display!

Enjoyable, yet improvable.

At this stage, I decided for myself to continue with my setup on application level rather than continuing with hardware support on system level. Although some obvious things like brightness control (and all the other [FN] keys), fingerprint reader and most likely some other things (like external monitors / HDMI) won't work. However, since I'm not really using the devices (yet), it's more of a secondary priority to get them working. Conclusion: Enjoyable, yet improvable.

(c) Copyright 1998 - 2014 Ilker Cetinkaya.