05-14-2012 11:50 AM
I’m sorry but this is going to be a long post but I have seen so many posts out there from people in my position - making an attempt to migrate from Windows to Linux - that I felt compelled to share my experiences. This is not a Linux bashing post either. Like UFOs, I want to believe. I just haven’t seen the light yet so if there are any Linux evangelists out there who have got Linux working on their X220T then I would *love* to hear from you
Background and reasons for change:
I am not your ordinary Windows user. I work in IT and I’ve been working with Windows since the days of v2 (yes I’m that old) running on Dos. I’m comfortable with it. Because of my age I’m also comfortable with the command line. I’ve worked with Xenix (a variant of the original Unix) and have a grasp of the fundamentals. Now I’m all grown up and an IT consultant I wanted to ‘round out’ my understanding of my business by getting to grips with Linux in order to write code. I understand it’s very different to the nice little bubble of Visual Studio where everything happens around you. I’ve yet to find out Sure I can produce a virtual machine and learn in there but wanted to immerse myself in it all so decided to convert my X220T. This little beauty is not my main work computer so I could sacrifice the contents. If your X220T is your only machine and you need it for serious stuff, think carefully before going ahead.
My X220T was pretty much out-of-the-box Windows 7. It was working fine, but had the odd glitch. Wouldn’t hibernate properly (although it did before an ‘upgrade’ screwed it up) and the mouse kept losing its settings despite following all the advice, upgrading, hacking etc to fix it. I also had Windows 8 preview on the ‘Q’ drive and was liking that but of course it’s not really ready to go yet.
My choice was Linux Mint with the KDE desktop. Did a bit of digging. Seemed to do the job. So I took several backups, trashed the drive and installed it.
My previous experiences with Linux have always been a battle to get the OS to see certain devices. Wireless cards never used to work. Peripherals failing. Not resuming from hibernate. That kind of thing. This time it was flawless. It simply installed. Everything appeared to work! Fantastic!! Of course it wasn’t all there yet. But because my internet access was up and running (had always been an issue before) I was a happy man.
Then three things happened almost simultaneously.
I wanted to read an eBook and the screen wouldn’t rotate
I couldn’t log on using my fingerprint reader
My fan wouldn’t shut up
So thought I would tackle the first issue. KDE supports a tool that pops a nice little icon on to your task bar to allow screen rotation. Didn’t work. What it did do was install the Wacom drivers to manage the touch screen and it would re-orientate the mouse ‘as if’ the screen had rotated, but the display itself was in portrait mode. So spent two evenings after work working out how to make this happen. In the end I wrote two shell scripts to rotate the screen AND to set the Wacom drivers to orientate the mouse and stylus properly. Job done! Felt pleased with myself. I was cross that the KDE interface screen button thingy didn’t work properly but that’s life. I had learned something. Two dos-like icons on my task bar flipped my screen (albeit slowly) from landscape to portrait and back again.
Meanwhile, I’m sitting in my conservatory (no power) and watching my battery disappear in about two hours. Under windows, my usage pattern gave me at least five hours before a re-charge. And that pesky fan didn’t run once! Peace!! But not with Linux. It was annoying so thought I would tackle that next. Everyone uses their machine differently so since power consumption is quite subjective I thought if I fixed this I could move on to other things and then ‘suddenly notice’ that my battery is still powering my baby after four or five hours.
After research and digging into a cpu frequency daemon (background process) I realised that this was the wrong line of attack. That took another two evenings of work. The Linux Mint kernel doesn’t support this. More research suggested that this was an old/different methodology and the approach was to use cpu ‘governers’ to control cpu frequency switching. The governers have names like ‘ondemand’ and ‘conservative’ and as you might guess, the conservative one holds the processor speed down to reduce power consumption. You may assume dear reader that I had done all the other stuff. Turning off bluetooth only happened in software and I gave up before researching that. It may be possible to turn it off in hardware via the operating system but didn’t get that far. Screen brightness, wireless etc. Typically when I read a book I flick the hardware radio-off switch on the side which of course turns off bluetooth and wireless, so they were taken out of the equation in terms of power consumption.
After another evening of digging I managed to discover how to instruct the machine to use the ‘conservative’ governor. By now I’m starting to get a bit fed up. My philosophy was partly to learn what it was like to live in the world of Linux, but mostly to get to grips with the C++ compilers, possibly mono (A windows-like development environment) and Apache (system for hosting web sites) but hadn’t got beyond the foibles of the operating system. Finally got the conservative governor in place, rotated my screen (still working!) and settled down to a good read (purely for testing purposes of course
Within five minutes, on the came the pesky fan. Battery gone in about three hours. This had me seriously pissed off by now. But still wanted to battle on. Thought I would tackle the fingerprint reader next. Found a driver but it didn’t work. I could register a fingerprint but when it came to save the results it died. Even as the godlike super user it failed.
Then I found another gui based app and that one worked. Well, it worked nicely in-system. Anything that needed elevated privileges it would work for. I just couldn’t use it to log in. When the laptop was in tablet mode I couldn’t authenticate with my fingerprint reader and there was no on-screen keyboard to use as an alternative.
And it was all these little things that eventually drove me screaming back towards Windows. I’m now running Windows 8 CP as my main desktop. It’s incomplete and has its own set of foibles, but by installing some of the drivers that Lenovo supply for Windows 7 it is perfectly usable.
The screen rotates out of the box
The buttons along the bottom of the screen work to rotate the screen (never did get that working in Linux but it was on my list
Power consumption is back to being pretty good for a laptop rather than just average
I can turn my bluetooth off at the hardware level but leave my wireless running so that I can browse the internet without hammering my battery too much (using the Lenovo on-screen utility form Windows7)
I can logon with my fingerprint reader and when it fails (I get it wrong three times) I can revert to an on-screen keyboard to get me out of trouble without having to switch to desktop mode to do it.
I know they are small things but they are now what I am used to and what I expect from my operating system so why should I do without them?
My feeling as I sit here writing is that Linux is great. Don’t get me wrong here. I still love it and intend to explore further, but unlike Windows there is a learning curve that you HAVE to climb. You have no choice. When I come home at the end of the day, sure I want to play with my little Lenovo and have some fun. But then I want to relax. Do a bit of surfing, read my ebooks and generally do stuff that the operating system is intended to support. Instead the operating system got in the way of my user experience rather than supporting my user experience. The problem for me is that wihlst I can produce a Linux machine in vmWare or VirtualBox, the driver woes I’ve just described are hidden from you because those virtual worlds either abstract the problem away or don’t port-over the hardware from the host that you want to explore the problems with. The only solution is to buy another X220T to play with and that’s not worth it for me.
I also think that my relatively large understanding of Windows frustrates my experience of because I am now a novice with the computer which I’m definitely not used to and that of course skews my perception.
So if there are any Linux superheroes out there who have solved all the above issues and can lead me into the glorious sunshine of developing in the wonderful world of Linux then please talk to me. And for the rest of you guys in my position for whom this has struck a chord, if you want to play, I’m sure the results are worth it but prepare to be frustrated!!
05-29-2012 03:43 PM
Thanks for sharing your experience. I experienced some of your frustration a few months ago with an X61t, though I left Linux in place. I was able to solve those issues to my satisfaction, and got about 5 hrs of battery life on a 6-cell battery (wi-fi off).
Would you consider a dual-boot setup? Then, you can learn about Linux when you are in the mood to do so, with full hardware resources, and switch back to Windows when you want. I would recommend having a copy of Windows handy while you experiment/learn more about Linux. Virtualization is not a perfect environment to learn Linux, for reasons you described.
As it relates to Linux support in general, the paradigm is completely different. If you want something that works out of the box, then a commercial operating system may be a better match. Linux loses market share (so to speak) because customer satisfaction/convenience has not, historically, always been a very high priority.
The obstacles you faced are among the more common issues when moving to Linux. Others include graphics card support, wireless, and Bluetooth. Depending on your need/priorities are, any of these can be either a luxury technology or an essential technology. For my purposes, I am happy to deal with those quirks compared with the issues I face in a Windows environment.
I know of one vendor that sells Linux pre-installed on the X220t, so I imagine at least some of the issues you described have been addressed. I won't post links, but Emperor Linux sells them under the "Raven" name.
I once read an article called "Linux is Not Windows", which uses the following invented dialogue to represent Windows vs Linux perspectives. It reads a little abrasive, but that's not why I include it--the point behind it is a good one.
"New: I wanted a new toy car, and everybody's raving about how great Lego cars can be. So I bought some Lego, but when I got home, I just had a load of bricks and cogs and stuff in the box. Where's my car??
Old: You have to build the car out of the bricks. That's the whole point of Lego.
New: What?? I don't know how to build a car. I'm not a mechanic. How am I supposed to know how to put it all together??
Old: There's a leaflet that came in the box. It tells you exactly how to put the bricks together to get a toy car. You don't need to know how, you just need to follow the instructions.
New: Okay, I found the instructions. It's going to take me hours! Why can't they just sell it as a toy car, instead of making you have to build it??
Old: Because not everybody wants to make a toy car with Lego. It can be made into anything we like. That's the whole point.
New: I still don't see why they can't supply it as a car so people who want a car have got one, and other people can take it apart if they want to. Anyway, I finally got it put together, but some bits come off occasionally. What do I do about this? Can I glue it?
Old: It's Lego. It's designed to come apart. That's the whole point.
New: But I don't want it to come apart. I just want a toy car!
Old: Then why on Earth did you buy a box of Lego?"
- source: (well, just search for the article title and you'll find it. Hyperlinks in forums are often spam.)
Wish I had more answers for you. I still experience frustration with all of the Linux I want to know, but I will deal with that with open arms compared to the frustrations I had before. The beauty of it, to me, is that there is so much to learn and such powerful rewards when I do.
06-03-2012 01:39 AM
Thanks for posting your experiences, as it is educational to read. I've used Windows since 3.1 and the days of the 486SX 25, and first started dabbling with Linux in the days of the PII 266. I ran Linux exclusively for a few years at one point and I was part of a LUG (Linux User Group). I highly recommend getting used to Linux on a secondary computer or using a dual boot configuration. Like JV474 said, Linux is about customization and one of the first rules is "Linux is not Windows." Linux support is about the community. The first place you generally want to turn to for support is a quick Google, and then to IRC, or your local LUG. You need to enter the Linux world with an open mind and remember that trying new things and sometimes breaking your system can be a valuable learning experience.
I remember needing to hand edit xinitrc to properly configure my monitor, plug in to use the internet, and traced down lots of random errors like the the computer not booting because the logs filled up all free space on the harddrive (always keep /var on its own partition), reinstalling because an update broke something (always keep /usr on its own partition or risk loosing data when you reinstall), the joy of installing printers (old school laser printers tend to work with less issues), etc. I look back on many of these moments and weekends with a smile and satisfaction, not anger or regret.
I like Linux because it can be customized to do what I want it to do, everytime. Want it to automatically mute the sound when coming out of sleep or hibernation because you might have been listening to loud music: done! Want to use an advanced text editor to edit code: you've got options, and they are all free (I prefer Kate). Want to burn a disc: done! Want to see what is inside of an iso file without burning it or installing additional software: done! Want to update pretty much every single piece of software on a system by running one command: done! (easier in distros with package management)
There are many things in Windows that annoy someone who uses Linux on a regular basis: updating (gigantic mess on Windows, including reboots), not being able to change design decisions the user disagrees with, lack of software choice, not being able to save my session (in Linux you can reboot and still have all of the programs open that you did prior to the reboot, browser windows open to the same pages, etc.), only one workspace (I like my 4+ workspaces by default), etc. While I currently use Windows as my daily operating system, this has more do with the the fact that I don't have time to play with Linux as much as a I used to and I need to be on a platform that support required day-to-day applications that I use. I have an old box (Athlon 64 single core) running Linux that I'm converting to a firewall + media server + print server + backup box when I have free time.
Linux, for the most part, tends to work best in one of two roles. It it good as a hobby operating system that will addict you into wanting to use it all the time, and it also works well when serving in a capacity, such as a server, where its advantages make it a better choice compared with Windows. If you like it in a VM and want more, try it in a dual boot. If you like that, purchase an older system and stick Linux on it. You may find yourself using Linux more and more. Join your local LUG, if one exists. LUGs are fun!
07-20-2012 08:02 AM
Hi. Thanks to both of you for responding. Interestingly enough I kinda get it now. More experiences to share (are you sitting comfortably!
Okay. Went back to Windows (8) for a play. Works nicely on the tablet machine - but do understand the frustrations of those that aren't blessed with a touch input. Ran up various Linux desktops in virtuals as I couldn't leave it alone. Then found I had a need for version control system for my code (C# prmarily) Came across subversion and installed Tortoise SVN on windows. Then thought about putting it on a Linux box. Also had an interest in developing AJAXy type web sites in Linux as a fledgling project for supporting our local table tennis club popped up. Also a member of a volunteer crowd that delivers blood out of hours and the web site could be a lot more interactive.
So fired up an ancient 512MB laptop and installed Ubuntu 12.04 server. In short I was totally blown away at what this little box could do. Because I was back in that old but familiar world of the command line and Linux wasn't competing as a gui based environment, I suddenly saw the light! Ridiculous I suppose but there it is. Under Linux, this little 512MB basic eight year old Pentium with a massive 20GB internal drive is running an SVN repository, ftp daemon, backuppc, Apache and Tomcat. Not to mention ssh of course. This world I'm comfortable with.
Then I found myself installing Linux 'stuff' into windows 8. Rsync cygwin etc and realised I was trying to turn my x220 back into a Linux box again. So a few days ago I trashed the lot and tried again. So here I am! Your idea of dual boot is a good one but I know that if I don't go for it whole heartedly then the partition will just sit there as I surf in Windows and dream of a fully integrated machine That's just me being the idle lazy bugger that I am.
Right now I'm back at the 98% situation again. 12.04 Ubuntu seems to have better battery life than the Mint version I had before but it's early days. Very subjective. Biggest issue right now is that I cannot perform a touch hold resulting in a right-clck on the screen. Works nice with the pen but not with finger-touch. Been off to play with xsetwacom (and now have an auto rotating screen courtesy of that research and nice script from a chap on the internet (must look at this Python thing) but cannot make a right click happen.
But now, because I 'get it' I can understand that this is okay. It doesn't come out of the box. I have been beguiled by the beast that is Windows! It does what it does, very well, but you can't get beyond it. Love your analogy of the Lego. Totally agree. Off to play!
07-27-2012 03:51 PM
So happy that you returned with your new experiences. Thank you.
My brother cannot tolerate Linux for many things, but he sure loves using it as a media center to interconnect all of his other electronics, stereo, TV, etc., and stream HD movies from his home desktop box to watch movies while at his friends' houses (!).
Moving toward Linux has opened a new world for me, and I have fallen in love with my computers again. It sounds corny, but it's true.
Your comments reflect why the Linux motto is: "Have fun!"
06-16-2013 04:48 AM
Hi all. I must be in league with the devil as my lucky number is 13. When I saw Galloping Gerbil or Raring Rhinocerous or whatever the **bleep** thing is called I also saw v13.04 and thought that the time had come to go again!
So it's about a year on now. Two important things have happened. The first is that my trusty old X220T is now no longer my primary machine so I can afford to lose it to experimentation for a while. The second is that the huge behemoth that is Linux is rolling over the bugs and niggles that sent me screaming back to Windows all those months ago.
So I've tried again with Raring Ringtail v13.04 and right now I feel as if I've come home! It's still not right but it's pretty close! More importantly, I fee that I'm no longer in the minority in wanting to get this to work right. There is this big push out there towards touch screen so people are spending time on this and wanting their software to be touch screen friendly so it is!
Before I go on, I was rather shocked when I did my pre-13.040-install research to find this post top of the google list on linux on x220! I'm guessing that my thoughts must parallel a lot of other people thinking about making the jump. So to that end, here's some thinking.
13.04 is close. Really close to being a very serious competitor to Windows. My view is that Linux is about there now. The X220T is a complex beast to support. it has touch, pen, fingerprint readers, rotating screens etc. And it all works pretty well. I can do a sudo apt-get install to make the fingerprint reader work. And it DOES work. Reliably. I still have issues rotating the screen but I've learned enough now to knock up a simple bash script that will do it for me. AND (this is where the Linux philosophy works) I have written the script to suit me. I like to hold the battery unit in my left hand and hold my laptop in portrait mode to read books/browse the internet. Then switch to normal orientation to type emails etc. The script only toggles between normal and anti-clockwise and back again. Works for me.
The issue with Linux was more that it was a philosophy than an operating system. You don't just "use" it. You immerse yourself in it. That made it geeky and non mainstream. You can make it sit up and do stuff that suited you exactly if you were prepared to put the time in. The issue was that until now it didn't do the basics reliably enough to suit everyone. I used to read a lot of stories about sons/friends putting Linux on to Mums/Dads/Grans laptop and it working beautifully. Linux is very very good at this. It just works. But getting it there was a right pain unless you were lucky. Now however that out-of-the-box functionality is really really close. To the point at which Tracey from Essex (forgive me Tracey!) can stick the CD in and expect the same functionality from Linux that she could get from Windows without having to sweet talk that geeky bloke that she knows has a crush on her to come in and sort it all out
Once you get past that bit then you end up in this little wonderful world. Without too much effort courtesy of all those hard-working ordinary people out there, I have a machine that will do most of what I want without tweaks and pokes that take days to research. Now I can browse, read my books, play the odd game and "ignore" the operating system until such times as I choose to tackle the odd tweak. On my relatively small screen for example I want hide the Unity launch bar thingy. However if I do this I can't get it back via the touch interface. Enter Ginn! I have yet to play with tihs but I can configure multi-touch gestures to "do stuff" like making the launcher appear with two finger gestures (!) and that little nugget of configuration pleasure is waiting in the wings for when I get bored reading the news or playing silly games. My operating system has now become a toy, a tool and a learning centre. I can now pursue my long term dream (okay I have modest dreams!) of being able to develop AJAX based web sites using WCF in Mono running under Apache. That means I have all the fun of learning how to use Apache, and working out how to make WCF code in Mono. These things are easy for me under Windows and IIS but how you do it in Linux is a new and exciting challenge! Yes I truly am that boring!
I wish I could change the title of my original post because Linux is coming of age. Windows had better watch out.