You may have heard stories of GNU/Linux not being able to support some critical pieces of hardware, such as 3D graphics cards or WiFi. While GNU/Linux actually supports more hardware than any other operating system out there, it is certainly annoying when the one piece of hardware you need is not on the list.
If you are looking for someone to blame for this, look no further than the vendors of those pieces of hardware. They are typically enthralled by the large market share of Windows, and thus only see the need to provide drivers for that particular operating system.
In general, though, the situation for GNU/Linux has improved dramatically over the last few years. If you install a modern GNU/Linux distribution, or even just run it from the live CD, you will usually see graphics, be able to hear sound, and for the most part even be able to use WiFi without a problem. Exceptions still exist, though.
So, what can you do to avoid any problems if you consider a move to GNU/Linux as your desktop OS?
If you are settled with some hardware already which does not work out of the box, you will have to come up with ways to change that. I found that by far the quickest way to get information about the necessary tweaks is to simply search for it on the Internet. The support forums are great, but usually just searching for it gets you the answer faster. Chances are that someone before you already tried to get your particular piece of hardware working under GNU/Linux, has found a solution and has posted their findings online somewhere. So, I usually just search for “name_of_device Linux”, and that's normally enough to get me pointed in the right direction.
Alternatively, feel free to replace 'Linux' in the search query with the name of your GNU/Linux distribution of choice, for even more specific instructions. You can imagine that this works best if you are using a popular GNU/Linux distribution, such as Ubuntu, for example. Firstly, there is a higher chance that this problem was solved before, since more people are using it. Secondly, the fact that this distro is so popular may be an indication of how well it can deal with hardware in the first place.
If you are in the enviable position of having to buy a new computer or peripherals for some reason or the other then you shouldn't have any problems. You see, some vendors' devices are traditionally better supported under GNU/Linux than others, because some vendors choose to work with the GNU/Linux developers more openly or they are more forthcoming with information about their hardware specs. That is good. And we can kill two birds with one stone if we support those vendors: On one hand we get a system in which things work as they should, and on the other hand we let vendors know that supporting GNU/Linux can get them our business.
What does this mean specifically? When you set out to buy a new system, you often have the ability to customise it. Choose this graphics card or that one, choose the WiFi card, etc. Well, whenever I have to buy new hardware, I make sure to choose components that are known to work well under GNU/Linux. Usually, it is enough to search on the Internet for the name of the device or graphic card plus the word 'GNU/Linux', just as described above. You will instantly get reports on what works and what not, if there are any workarounds necessary, and if so, how complex they might be.
Since I like for things to work out of the box, I customised my last computer (a Dell laptop) with components that are known to be problem free under GNU/Linux. For example: nVidia traditionally has had better support for GNU/Linux than ATI. So, I made sure that my laptop had an nVidia graphics card (even though ATI has recently started to improve in this area). And in general, integrated Intel graphics cause even less problems. If you don't do much gaming on your computer, then the integrated Intel graphics will be sufficient anyway, and will even produce the nice new 3D desktop effects without complaint. When I was given the choice of some Broadcom/Dell specific strange WiFi card or just the a standard Intel one, I chose the Intel one instead, because a little search on the Internet told me what I needed to know: No support problems for that WiFi card.
And so on and so forth. In general, graphics and WiFi are the typical problem areas, with laptops also adding suspend and hibernate to the list. If you can choose your hardware, you can avoid most problems entirely simply by choosing wisely. A few minutes of research can pay off handsomely in that case.
For me, I ended up with a laptop on which everything worked out of the box: 3D graphics, WiFi and suspend. In fact, I had less trouble getting my wireless working under GNU/Linux than under Windows on the same hardware, for some reason. The same with USB support, by the way.
So, because of that little advanced research I ended up with a very positive out-of-the-box experience under GNU/Linux.
Other related posts:
Munich already saved millions by switching to Linux
Smooth sailing with the Karmic Koala
A Linux distro for Cuba
Comment by barf, on 10-Jan-2008 17:24
laptops by nature are a very unfriendly environment for monolithic operating systems, for best support stick with desktop machinery or Toshiba laptops, IBM and Dell are pretty good too. (I've seen one older HP/Compaq laptop melt because it's CPU required ACPI C-state support and someone loaded Redhat with a 2.4 kernel! WTFLOLGACHP)
Comment by David Legg, on 10-Jan-2008 23:03
This is a great article, however I think it is slightly too positive about how easy it is getting wireless hardware working under Linux. This is (once again) the fault of wireless hardware manufacturers who gratuitously change the hardware on their wireless cards but forget to change the identifier or version or the cards. So, it's quite risky buying wireless hardware for Linux. However, there are reliable sources, e.g. the Linux Emporium. It is often possible to ask the supplier prior to purchase which chip-set is on a particular wireless card.
Comment by rm42, on 11-Jan-2008 07:47
I agree with your article very much. I wrote something similar here:
Comment by freitasm, on 11-Jan-2008 11:25
"Actually, the positiveness about getting wireless to work stems from the choice of hardware."
So it means that Linux is still confined to the segment where they buyer first knows that he wants Linux, then knows that there are differences in hardware. Obviously not mainstream.