GNU/Linux Free Software & Open Source

Debian on Lenovo Thinkpad X240

I recently got myself a new computer, the Lenovo Thinkpad X240. It’s my first Thinkpad so I cannot compare it to previous models. My old laptop is a Dell XPS m1530 that’s about 5 years old by the time of this writing. Still very functional but I wanted an upgrade in hardware and a lighter computer to travel with.

The pros:

– weight
– matte screen and higher resolution
– keyboard
– speed (processor, RAM, SSD, USB3)

The cons:

– GNU/Linux compatibility
– wireless
– brightness controls
– FN key and FN Lock

So let’s go and review the whole thing:

### BIOS

It came with Windows 8 pre-installed, but I immediately installed Debian Testing (Jessie) on it. This machine comes with UEFI boot, but fortunately it has a Legacy mode to behave like normal BIOS. Installing like normal boot instead of UEFI boot is a lot easier and you don’t have to struggle with the disk partitions and boot options. On the boot configuration settings, disable secure boot and set it to legacy boot first instead of UEFI boot first.

### Hardware

Lenovo X240 open

The X240 is very light, even with the additional 6 cell battery instead of the default 3 cell battery. It is a 12.5″ computer, so it can be comparable to a Macbook Air or similar computer. The case is plastic, but feels very well built and durable.

X240 width

There are no indicating LEDs anywhere except for the power button LED that indicates if the computer is on, off or suspended (blinking). There are no hard disk writing indication, battery charging indicator, wireless, bluetooth or any. Just an additional led behind the screen, the dot in the “ThinkPad” logo lights following the power button LED and that’s it.

This is a bit confusing specially when charging the laptop, since the charger also lacks any LED indicator, so the only way to know if your computer is charging is with the software indicators in your desktop environment (the battery monitor icon in your system tray).

It has no HDMI port, but it has the old VGA adapter and a mini digital port for external monitors. Only 2 USB ports, both are USB 3.0, and one with power over USB. My model came with a fingerprint reader, an SD card reader, a 720p webcam and an Ethernet port.

### Keyboard

Lenovo X240 Keyboard

It seems that all new Lenovo models are coming with the new “chicklets” style keyboard and its new layout. I’ve heard some criticism about it, but since this is my first Thinkpad, I’m not biased. Comparing to other laptop keyboards, it is nice. The keys feel good and not fragile and is very silent. My only compliant was the strange placement of the Fn key where I usually expect the Ctrl key. Fortunately for me as an Emacs user I map my CapsLock key to an additional Ctrl and use that instead, so my key stroke memory doesn’t get much affected by that. What I didn’t like is that the F keys are now by default media keys and to use them as F keys you need to press Fn+key or Fn+Esc to activate ‘Function key lock’ then press the F key you need. So, for example, if you want to reload your browser and immediately lower the volume of the speakers, you have to strike additional keys.

The screen brightness control keys by default didn’t work for me, but there is a fix. You need to load the thinkpad acpi kernel module on boot. So edit /etc/modules file and add:


Then you’ll need to add this to your /etc/default/grub file and check that your kernel options are as follows:

RUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=!Windows2012 acpi_backlight=vendor"

This will enable the volume, mute, brightness and wireless media keys. I haven't been able to make the microphone mute button work.

The keyboard backlight works by default using FN+spacebar and it looks nice. It has three states: dim, bright and off.

### Pointers

As many other previous ThinkPads, the X240 still keeps the nipple mouse or clit mouse or however you've heard it's called. The downside is on the trackpad, now called clickpad which has no hardware buttons but does have a larger surface area. By default on Debian Jessie + KDE the clickpad works but it's not precise. When trying to press for a click it inevitably moves from the target area, so clicking is hard. Right click worked out of the box for me by just pressing the pad on its bottom right area. Clicking can be fixed by addding:

sudo apt-get install kde-config-touchpad

and configure single tap clicking, two-finger scrolling and three finger tap for middle click. If you like to use the /nipple/ pointer and miss the buttons for it on the top of the pad, you can configure the button area to be on the top part instead of the bottom part in the X config file.

Make sure you have the following in your file /usr/share/X11/xorg.conf.d/50-synaptics.conf

    # This option enables the bottom right corner to be a right button on
    # non-synaptics clickpads.
    # This option is only interpreted by clickpads.
    Section "InputClass"
            Identifier "Default clickpad buttons"
            MatchDriver "synaptics" 
            #Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
            Option "SoftButtonAreas" "60% 0 0 5% 40% 60% 0 5%"
    #       To disable the bottom edge area so the buttons only work as buttons,
    #       not for movement, set the AreaBottomEdge
            #Option "AreaBottomEdge" "82%"
            Option "AreaTopEdge" "4%"

I found this solution at this blog

### Wireless

The wireless card is an Intel 7620 rev 6. After having to struggle with a Broadcom card for many years I thought my wireless card struggle days were going to be over. Well, turns out that the 7620 card is a very recent card and is not very well supported yet. By default it doesn't work with Debian. To make it work you need to enable the non-free repository and install

sudo apt-get install firmware-iwlwifi

This will enable your card and make it work, but if you suspend the computer, you'll loose bluetooth conectivity. To fix that you need to disable the 802.11n compatibility in the driver configuration. Add this to a file in a new file called: /etc/modprobe.d/wifi-disable11n.conf

options iwlwifi 11n_disable=1

I have experienced some instability with it. At random times the driver would just stop working and your card will seem working and connected but no traffic goes on. If you suspend the computer with the card in that state, it will not suspend and will hang the system. Once the wifi card is stuck the only way to bring it back is with a restart. I've tried rfkill, unloading and loading the module, but nothing works.

Another issue is that it will not connect to a wireless-n router, even when disabling n-band in the driver configurations. I had to configure my home router to only use b/g bands for it to connect.

**UPDATE**: Debian Jessie has upgraded to the Linux kernel 3.13, enabling the use of the iwlwifi driver version, which doesn't need any of the changes mentioned and doesn't crash anymore.

### Conclusion

Not being able to compare to other previous Series X Thinkpad models, I cannot say if the X240 is an improvement or not. I've seen a lot of criticism to it, and I don't blame them. Some indicating LEDs would be nice to have, and why does a new computer model in 2014 doesn't have an HDMI port and has the old VGA port instead? There are weird hardware choices in this, but overall I'm enjoying the portability and speed of the computer. I'm hoping that my GNU/Linux compatibility issues (specially the WiFi card issues) get fixed over time.

Do you have some other configuration or fix tips for Debian on the X240? What to you think of this model? Share some ideas with me on the comments.

GNU/Linux Free Software & Open Source

How to install Google Music Manager on Debian Wheezy

If you are running Debian Wheezy and have trouble installing the Google Music Manager from the official Google Music downloads page, here’s how you can fix it.

The current Google Music Manager depends on libc6 2.15 and Debian Wheezy has libc6 2.13. Changing the libc version is a mayor risk to the stability of your system. So what to do?

Install an older version that can be used with libc6 2.13. You can download the older version for amd64 or i386. Additionally, you’ll need to install libqt4-webkit dependency.

sudo apt-get install libqt4-webkit

Then install the downloaded file

sudo dpkg -i google-musicmanager-beta_current_amd64.deb

Open Google Music Manager and setup your Google account and sync folder and you’re done.

Update: Thanks to Martin for the i386 version.

GNU/Linux Free Software & Open Source personal

Debian and the girlfriend

Ada with the laptop

We got a new computer for the girlfriend some months ago. Since her old laptop was running Debian Lenny and she loved it, but the software packages were quite outdated, I decided to install Kubuntu 10.10 on her new laptop. Assuming that it would be easier to use with all of Canonical’s and community customizations, handle and detect new hardware drivers better and will have more updated software.

Turns out that she barely used her new laptop, complaining a lot about it. First, she had to get used to the new KDE 4 environment, when she got so used to KDE 3.5 on Debian Lenny, but change is something we all have to face. But the real problems were that hardware was not working properly, the touchpad had no scrolling and since its a single button pad with virtual buttons, the right button click didn’t work. Also, the Dolphin file manager would sometimes not refresh the files on the folders, so she couldn’t see some files that were recently saved. When trying to shutdown it would freeze up or the KDE shutdown menu window would not draw any options. When finally shutting down, it sometimes hanged at the end of the process, thus not turning off the computer.

After about a month of complaints and frustrations, she demanded me to install Debian back. I explained to her my initial decision to go with Kubuntu and that a new version 11.04 was coming out in a few days and that might fix her problems. But her argument was strong: “I need stability, and I don’t like to be on the bleeding edge since I’m not technical, I can’t troubleshoot the issues. Its fine for me to stay with the same stack of software for two years until the next Debian stable release.”

Ada, ballet & GNU

So I went ahead and installed Debian Squeeze on her laptop, expecting a lot of time spent in forums to get her new hardware working, configuring files, compiling drivers, etc. To my great surprise, everything worked out of the box, with very minimum custom configurations. She immediately started installing all her favorite software and was very happy with her new system’s stability and fast responsiveness. Software was (to the time of this writing) decently recent, and very stable so now she has completely ditched her old computer, feeling perfectly comfortable. Although she still misses KDE 3.5, she’s getting used to KDE 4 and customizing it her way.

Oh, and she made it all pink.

GNU/Linux Free Software & Open Source

Happy 17th birthday Debian

debian logo

I just wanted to post a few lines about Debian today since its the 17th anniversary of the project.

I haven’t been a long time Debian user. I started using GNU/Linux as an experimental project back when RedHat was on version 5. Then one day, I purchased my first distribution. Yes, I paid for it even though I knew I could get it for free, I decided to support with some money by buying the discs at a store. The distribution was RedHat 7. Then I went on with Fedora …and so on.

The thing is that, I never totally stuck using GNU/Linux up until I tried a Debian based distribution: Ubuntu. I always got burned by the RPM hell, so when I switched to using debs and apt-get, I was in heaven. The system was stable, upgrades were easy and I didn’t have to shake and sweat when I hit the update/upgrade button (or command) like with RPM distros. Other people like Eric S. Raymond has also talked about this subject.

Then, when I finally switched to Debian thanks to several friend’s peer pressure (kidding…or not?), I liked it even more. My computer run faster than with Ubuntu, and I learned new tricks and things that I never noticed on Ubuntu.

Although I still don’t consider Debian to be as newbie-friendly distro as Ubuntu is, I still recommend it for new (and interested) people that switch to a GNU/Linux system. My girlfriend switched and she loves it, and she’s not very techie or geeky. Also, the lack of some “user friendlyness” is actually benefical since that forces the user to learn the system, and not think that computers are “magic”. Yes, lack of “magic” can be confused with “annoyance”, but most things are a few shell or aptitude commands away.

So if you’re not a Debian user, try it out! Leave the tricycle (ubuntu) and try a real bike (debian)! If you’re not a GNU/Linux user, try Debian and check out a real, solid, stable operating system…and learn a few tricks (commands, concepts) on the way.

Not most of the best and popular GNU/Linux distributions base their code on Debian for nothing. Check out why and get involved with the great nice and big Debian community.

GNU/Linux Free Software & Open Source

My girlfriend’s migration to Debian

my gnu girlfriend

After years of talking about it and her coming with me to my free software talks and meetings, she finally let me replace the proprietary OS on her laptop with Debian GNU/Linux.

I think it took us both much time to migrate her laptop for several reasons. First, she barely has time to sit at the computer for other "normal" stuff that’s not urgen school projects. So for her, the computer is just a school tool. In contrast, for me, the computer is part of my daily life.

So after lots of procrastinating and "not now because I have urgent stuff to do", she finally allowed me to do the migration.

I’ve prepared her for the migration years before, giving her open source alternative software for almost all her tasks. Firefox for browsing, audacity for her audio editions (she does a lot of this), pidgin for instant messaging. She tried several times on Windows, but couldn’t end up adopting it because of some bugs in past versions with the spanish spell-checking dictionary not getting installed.

I selected the Debian distribution over the typical choice of Ubuntu for a new user. First, since I’m a member of KDE Mexico, it was logical for me to suggest the use of KDE. Then the decision was KDE3.5 or KDE4. I went for KDE 3.5 because of stability. I don’t want things to start crashing or behaving weird and then dissapoint her. This point also made a point towards Debian stable over Ubuntu, stability is a lot better. And finally, since I’m going to be giving her technical support, I wanted her to have the same stack of software that I have so I can guide her through screens and commands.

After we backed up all important files on DVD and my terabyte hard drive, we started the installation. Ada got angry at me after I installed it for her. She really wanted to do it herself from beginning to end. So, we started over.

After a long while of downloading updated packages with a relatively slow connection, the system was all set. I explained her the new desktop manager and how to install packages from commandline. A few more minutes downloading audacity, audio and video codecs and other applications, she was all ready to go.

She quickly went through her frustration phase as every change in someone’s life produces. A few complaints later, and the next day she was back into audio editing for her next dance festival.

Its been three days now since she migrated and all I’ve heard is good things about the change. I hope everything keeps going well. Next step: using Emacs.

GNU/Linux Free Software & Open Source

Debian Lenny on Dell XPS m1530

I got a new laptop in February. I wanted to get a Dell because of GNU/Linux compatibility in the hardware, but after seeing my available options at the time, I couldn’t get exactly what I was looking for.

But its a great machine after all. I got a Dell XPS m1530 the model that comes with a Blue-ray reader/writer, 4GB RAM, an nVidia card and a Broadcom wifi chip with a/b/g/n support.

So to get all of my hardware working on Debian Lenny, I had to do the following:

Wireless card

I got a Dell XPS m1530, with broadcom 4328 wifi card. This card is ugly because its Broadcom and you need to install a binary blob to make it work properly. Technically it is a good card and supports a/b/g/n bands.

To make it work you will need to compile the broadcom drivers provided on their website. But before you do that, you need to get these packages: sudo aptitude install module-assistant

Then blacklist ssb module by adding this to the file /etc/modprobe.d/blacklist
blacklist ssb
and update the init file with sudo update-initramfs -u

Graphics card

The graphics card is an Nvidia. You can get it working by using the debian way of installing the driver. Then install nvidia packages:

sudo aptitude install nvidia-glx nvidia-settings nvidia-xconfig

Then generate the Xorg config file with nvidia stuff:

run sudo nvidia-xconfig and restart X (press Ctrl+Backspace).

Suspend to ram

Both suspend to RAM and to disk work perfectly, but first you need to install uswsusp package:
sudo aptitude install uswsusp

and edit /etc/hibernate/ususpend-ram.conf by setting:
USuspendRamForce yes

SD card reader

It also works perfectly but only after adding the proper drivers:
sudo aptitude install libccid pcscd

What didn’t work

  • Multimedia keys
  • What I couldn’t get to work properly was the multimedia keys (volume, play, stop, forward, rewind) Eject works out of the box, but the rest don’t. They all worked when I installed (K)Ubuntu on a separate partition, but for some reason they don’t work on Debian Lenny. I’ve managed to make them work via xmodmap, but after a while of use, the xmodmap settings somehow are “forgotten” and I have to load my xmodmap file every certain amount of time.

    If someone has found a way to make the multimedia keys work, please let me know.

  • Sound through HDMI output
  • Getting video out worked after installing the nVidia driver (actually I didn’t test it before), but I couldn’t find a way to get sound. Not even with the latest nVidia driver.

  • Touchpad two-finger middle clicking
  • For some strange reason, after installing the nVidia driver, tapping with two fingers on the touchpad to do what you do with the middle click button on a mouse stopped working. I haven’t been able to get that functionality back, or enable other touchpad functions like two finger scrolling, that would be very nice, since the edge scrolling on this touchpad is not very sensitive and sometimes you must press very hard for it to respond.

I think that’s it. Other parts I didn’t mention, like the webcam, work out of the box, so I have nothing to say about that.

I really recommend the machine, it has great hardware and its GNU/Linux compatibility is good. You can find useful information on the Debian wiki page for the Dell m1530 too.