Linux Doesn’t Lack Drivers, it Lacks Complete Drivers

I recently read this article about how the Linux device driver project needs more work to do. I pondered this for awhile, and came to a realization. While Linux still does indeed lack drivers for some hardware, I believe that the lack of drivers is no longer the largest technological obstacle to Linux adoption. The thing Linux needs to focus mostly on now is completeness, not quantity, of hardware support. Read on, and allow me to explain.

If you take the newest version of Ubuntu Gutsy Gibbon, you can install it on just about any standard desktop PC, and it will work. The video card will most likely work just fine. It will work even better if you take the two clicks to install a binary driver, if necessary. The mouse, keyboard, and other peripherals will work. All of your drives will work. It is only incredibly rare hardware, such as some proprietary enterprise RAID controllers, that will be completely unsupported. Also, if you have an extremely new high-end motherboard, it may not work perfectly. However, problems with new motherboards seem to get fixed in the next kernel release. You can’t expect much more than that, especially considering the incredibly rapid kernel development cycle. I can not honestly say the situation is perfect. There are still a lot of drivers that need writing. However, it has been a very long time since I have encountered any completely unsupported desktop hardware, and more drivers being written every day.

If my experience is not uncommon, why is there still a common perception that Linux lacks hardware support? Perhaps people tried Linux back when hardware support was terrible, and they don’t realize how far it has come since then? Perhaps people who have this impression have never really tried Linux, and they just go by what they read in the tech news? These are possibilities, but whatever the cause, I can tell you that there is actually another, bigger, problem looming in the Linux world. The problem I see is that many existing Linux drivers are incomplete.

Don’t get me wrong. I don’t mean to say the drivers are low quality. In fact, Linux drivers are among the best in terms of stability, security, and performance. What I mean by incomplete is that the drivers do not support every feature of the hardware. Sure, they support the core functionality, but many pieces of supported hardware have non-essential features which are unsupported. If the Linux drivers were complete, as well as quality, we could honestly say that Linux actually supports hardware better than Windows does. Instead we continue to play catch-up. To fully demonstrate my meaning, let me give you some personal examples of incomplete Linux hardware support. Just as a note, I am aware that not all of these examples should be solved in the domain of kernel drivers, but how the solutions should be implemented is irrelevant to my fundamental thesis.

On my desktop at home I have a Logitech MX1000. It is a wireless USB laser mouse with thirteen different buttons. The core functionality works perfectly in Linux. I can point, I can click, I can scroll, and I can hotplug the USB. This is a big improvement from the Linux of just a few years ago. However, all is not well. Many of these 13 buttons do not work properly, or easily, under Linux. Also, this mouse is designed to run at 800cpi. In Linux I must install and use a command line application to set it to 800cpi instead of the default of 400cpi. I also have to use the same application to change the cruise control setting. This is a very powerful mouse, but under Linux it is no better than a normal wireless USB wheel mouse. The user can do a lot of tweaks to improve the situation, but at the present time you can not achieve anything close to the features offered by Logitech SetPoint under Windows. Linux may be free as in beer, but it effectively costs me $50 if it reduces my $80 mouse to the feature set of a $30 mouse.

Now let’s look at some high-end motherboards. As I said, brand new motherboards tend to have flaky Linux support until a new kernel version is released. That is to be expected. However, many enthusiast motherboards produced by companies like Abit and ASUS have extra features not found on the motherboard in your average Dell. Many of these motherboards allow flashing of the BIOS while the OS is running. Others allow live overclocking. I personally would never suggest using such features, but that is besides the point. The point is that the hardware has features which are not available to the Linux user. The advantages of software freedom appear quite diminished when you realize that to get them you will not get everything out of your hardware that you paid for.

I have a Fujitsu P7230 notebook running Ubuntu Gutsy. I am using it to write this very article. It works extremely well, but, as you would expect, not every feature of the laptop is functional under Linux. This laptop has a g-force sensor. In Windows it uses that sensor to determine when to park the drive heads. In Linux this feature is completely unsupported. The fingerprint reader, two custom buttons, and the internal microphones are all unsupported. The internal memory card reader works, but has IO errors with some SD cards. The basic functionality of my laptop computer is all there with Ubuntu, but none of the weird special features are. Those weird and special features might seem relatively unimportant, but people want to use them. When they pop in a Linux LiveCD and a feature they use is not available, to them it is no better than if it hadn’t worked at all.

Let me now bring back my longest lasting Linux gripe, sound. Audio has improved a lot in Linux since I last blogged about it, but it is still the one department where I feel Linux needs the most work. Let us look at the sound card in my desktop as an example. It’s an on-board Nvidia/Realtek sound card. It can produce and capture analog stereo sound, and it can output PCM audio through the optical output. The basic functionality of the sound card works perfectly, and with some tricky configuration of alsa it can do a bit more. However, if you want more than that, just give up. I’ve been waiting for years, and there has been no improvement whatsoever.

Pretty much zero of the advanced features of the sound card are supported under Linux. Under Windows the sound card will mix, in hardware, all outgoing audio into a single Dolby Digital signal and send that out of the optical output. It can also do lots of other things involving the routing of sound to different speakers, or routing the PC speaker to the optical output. It’s actually quite incredible that the on-board sound card has more features than most home theater receivers. Regardless, only the most basic features of playing and recording audio function under Linux. Support for surround sound in Linux in general is complete shit. People these days have these incredible DSPs in their computers capable of advanced hardware audio processing, but under Linux they might as well all be Sound Blaster 16s. This is a case where we have a driver for a piece of hardware, and it works, but it does not implement every available feature of that hardware properly.

For one more example, let’s look at my scanner. It’s a CanoScan LiDE-50. It used to be completely unsupported under Linux, but it works now. However, it works like shit. Under Windows it scans very quickly, under Linux it scans slowly. Also, there are four buttons on the face of the scanner. Under Windows these buttons allow launching of the scanner application, or even taking the current scan and directly attaching it to an e-mail. Under Linux these buttons are unavailable. Sure, it’s nice that the scanner works, but the fact that it works worse than it does in Windows is not going to give someone a reason to switch. What we need to strive for is making the scanner work better in Linux than it does anywhere else. Not only should it scan at the proper speed, but perhaps the functionality of the buttons could be customizable by the user. Perhaps some open source scanning application could find some new and intuitive uses for those buttons and make Linux superior to Windows in even more ways.

When people try out Linux, they don’t care just that their hardware works. Even if Linux hardware support were exactly the same as Windows hardware support, many people would not switch. They have no reason to switch, because there is no advantage. However, if Linux actually supported the hardware better than Windows did, that would be something. Imagine someone putting in a LiveCD to find that their scanner scans faster. Imagine someone finding out that with Linux they can use the g-force sensor in their laptop as a theft alarm. What attracts most average people to Linux in the first place is its superior performance, stability, and security. However, those advantages will be overshadowed if someone finds out that they can’t do everything they used to do with the exact same hardware.

I want to conclude by clarifying that I am well aware that not all of these unsupported hardware problems are a result of incomplete kernel drivers. Many of these problems should be solved in userspace in one way or another. That is all irrelevant. What is important is that when you have a piece of hardware primarily designed to do function X, but capable of Y and Z, you can’t support just feature X and consider that to be satisfactory. Unless every single feature of a given piece of hardware is pushed to the absolute limit by the software, then the user is not getting everything they have paid for in that hardware. The failure to implement features Y and Z is keeping Linux back these days much more so than the failure to implement X. If there are Linux developers out there looking for things to work on, go back and take another look at hardware which is currently considered to be supported, and make sure that every single feature is supported 100%. If not, you’ve got some work to do.

99 Comments

  1. Julian Tan:

    Great article, and I totally agree. The challenge though lies is that the onus in driver development in the Windows world lies with the manufacturers of the devices - graphics cards, mice, usb devices - they all put out drivers for Windows and Mac.

    In the Linux world, the onus is all on the development community. Until we can convince the manufacturers that developing drivers for Linux makes commercial sense, then we will always be playing catch up.

  2. Harold J. Wolfe:

    Wireless drivers are hurting. I understand that the latest kernel itiration has a bundle. Specifically, I’ve been crippled by the Ralink RT2500 driver.

    USB scanners are another sore point.

  3. David:

    No, I disagree. Hardware support is improving all the time but there are huge gaps. USB dial-up modems are one example. For those of us without access to high speed internet, whether we be in the First World or the Third World, the ability to support modems is critical. It is a huge barrier to adoption, especially with the internet needed to download software from repositories these days if one is using a distro like Ubuntu or Fedora.

    Driver support for Lexmark printers is also terrible. The company themself offer some non-open drivers but these do not even install properly. Decent open drivers are needed for these.

    That is just a few examples of the huge gaps that need to be filled. :-(

  4. Aaron:

    One thing you seem to be missing is the fact that without specs on the hardware, a lot of work has to be done reverse engineering things just to get even basic functionality. This severely limits the ability of the driver developers to implement your advanced features.

  5. Jesse McNelis:

    Lack of support for advanced feature in hardware is a product of not having the full hardware specifications. It’s much easier to reverse engineer the core functionality than it is to reverse engineer the obscure functionality of a piece of hardware specific to a single vendor.

  6. Chris Done:

    I like how Julian Tan summed up your whole article in one paragraph.

    Not sure why this was digged.

  7. Rodrigo:

    That’s a great article … I totally agree with you. We Linux users are used to know pretty well how all our of gadgets, hardware, software works (at cretain level)work. The most common user will want to use the complete functionality of what they’ve paid for, if not he might think using his OS is a waste of money.

    Let’s not forget there are lots of potential users in the “micro-enterprise” sector, and as it goes they might pay less in a windows licence, but they print and scan slower, and this way productivity slows down too … and we loose more money.

  8. Yevgeniy:

    I found this article an interesting read. I also agree with you on many of the points. The one thing I would like to point out is that, Linux has been pushing hardware to its limits for a while now. The real problem is that hardware manufacturers choose not to support Linux. They often do not even release documentation to the linux community to do their job for them. (Yes I understand that this can get complicated but some effort would be nice…Hats off to AMD and their release of documentation for some ATi graphics chips.)

    Another point to consider is the quality of drivers provided to Linux users. Graphics drivers never seem to perform as well under Linux as they do under Windows. As an example try running Quake Wars Demo under Windows and then try running it under Windows. (Yes there is some skew in a test like this. (ex. the Linux client might potentially be less efficient. But lets also try comparing an older game like UT2004Demo, Both the Windows and Linux clients have been tweaked and bug fixed beyond all belief.)

  9. Yevgeniy:

    ***try running Quake Wars Demo under Windows and then try running it under Linux***.

    Sorry, missed that.

    Also this article might be of some interest:
    Ubuntu 7.10 + WINE vs. Windows XP = http://www.phoronix.com/scan.php?page=article&item=882&num=1

  10. Charles Wilson:

    As an old OS/2 advocate, I feel that this problem has gone on long enough. I used to run Lycoris and now run PCLOS and I still see the same ol’ same ol’. BTW, I also have a Canon LIDE 20 and the one advantage to running Linux on this machine is that I can immediately save it in JPEG format. Nice.
    The same cannot be said for my All-In-Wonder 2006 edition. It could be the 1812 edition for all I care.

    Lookit: The daze of old with the MS monopoly should be ending and the cozy relationships between MS and the running scared suppliers should also be gone.

    Can we just get some basic equipment to work properly? Is that too much to ask?

    Charles

  11. Adam:

    So true. This program plagues pretty much every piece of hardware I have, from the MX1000 to the on board card reader. This should really be addressed in the future.

  12. Cellanon:

    @Julian Tan

    “Until we can convince the manufacturers that developing drivers for Linux makes commercial sense, then we will always be playing catch up.”

    You can’t even get companies to write decent Vista drivers before Vista’s release. So that’s a non-argument, I’m afraid. In addition, the problem with the onus of making “the community” do the work is that they can only do the work when provided with proper hardware specifications. Otherwise, you end up with the current situation of “half-working” or “not quite complete” drivers, because reverse engineering can only take you so far in many cases.

  13. Matthew Conolly:

    You’ve managed to hit apon the very issue that most people dont realise they have.
    Now its time to get some momentum going

  14. VELAYO:

    I totally agree with your article. As a matter of fact, I tried ubuntu recently on my macbook and the fact that the hardware wasn’t fully supported forced me to stay with osx. Using the touchpad was a nightmare and made the most simple task almost impossible. I even did some code tweaking to get the proper resonse from the hardware and still got the same result. I don’t believe the issue is with the hardware makers, it has more to do with, as you pointed out, the situation years ago when finding a supported piece of hardware was a full time job. Back then the priority was to get as many things as possiblee to work, but know that hardware support is as good as can get, full hardware support should be the new mantra.

  15. What is Linux?:

    You seem to think that the goal of Linux is to get people to switch from Windows. That simply is not the case. Ubuntu has that goal, but not Linux. I suggest that you take all your valid points and file individual bug reports for each one at the Ubuntu Bugzilla (Launchpad). Here:
    https://launchpad.net/ubuntu

  16. Albert:

    This is a very complicate problem, some hardware also have copyrights inside them that keeps good drivers away from linux. Some software vendors will never sell (for example photoshop) linux applications because there’s not good hardware support and (for example scanner developers) hardware vendors will never create linux drivers because there’s no software to use with them.

    A good start point is let people who doesn’t need these kind of advanced functions (for example my aunt, or my boyfriend), people who only use computers for mail and navigate, work pleasantly with linux (this is a big amount of users), and then people will realize that windows is too expensive only for mail and web.

    (A lot of people doesn’t care about software freedom, but if they use ‘free’ software linux will grow up)

  17. Mark S:

    I think as users who want Linux to succeed we shouldn’t be wasting our time telling the development community that there is more work to do. They know this. But most of the work can realisticly only be done by the hardware manufacturers themselves.

    It really is our own responsibility to buy and promote hardware from companies that publicly release their own drivers or at least all the techncial documentation on their products.

    If you can make your proprietory hardware work at least halfass with some hackish drivers then that’s great, but there’s no point in telling the development community that they are the ones who need to do more work.

  18. Max:

    Let me throw an analogy here and compare this to the situation of poor people.
    If you’re homeless and starving, you’ll first going to worry about eating and getting a roof over your head. Only once you have those you can then move on to other things that are outside the sphere of survival. One is not gonna think about about going to the dentist when he or she hardly has any money to survive everyday…
    I believe we have just gotten our tummies full linux-wise, and the time has now come to perhaps worry about how we look and how to do things better, since we don’t need to worry anymore if there’s going to be any food on the table tomorrow or not…

  19. Marco Rucci:

    Yes julian, but the manufacturer should develop open source drivers for linux otherwise the “linux community” will flag them “restricted” and will warn you to install them. They aren’t restricted in functionality but in modificability of the source code.
    I’m using ubuntu 7.10 right now, and i have a strange sensation… oh yes my nvidia restricted drivers are trying to take me to hell… nooooo, help me, i feel not pure because my sources aren’t all open (?) …

    Compliments for the article

  20. paul:

    (srry, but tl:dr as most linux drivers are its the samne thing (iff you arent trolling(if you are , i proved my point) yess that include you gramarnazi’s)
    if so you prove to update semi-outdated hardeare **clapps spuraddicly* and im waisting my time here as sutch by the 1 post ether/or tl;drwtf why are you here if not the same poster troling

  21. Thomas:

    Indeed many windows ‘features’ are an application that is dongled to a specific piece of hardware. ‘Instant scan to mail button’ is a background application (which slows down your system), not a hardware feature.

    The bright side is that when Linux implements something new there is no need to buy new hardware ‘just because’ it brings the application with it - the application is there, independent of the hardware.

  22. jake:

    “If my experience is not uncommon, why is there still a common perception that Linux lacks hardware support?” Maybe because your assumption is wrong. “If you take the newest version of Ubuntu Gutsy Gibbon, you can install it on just about any standard desktop PC, and it will work. The video card will most likely work just fine.” In my experience, that is false.

  23. Stephen Lewis:

    Very good points - I quite agree but I do feel there is another obstacle in development of drivers for Linux and that is hardware documentation - a lot of companies will not release information on how exactly their hardware works without payment, if at all, and hence open-source developers are left to implement generic functions in the hardware - usually the core aspects of its functionality. Admittedly this does not affect vendor released drivers but for a fairly high percentage of hardware there are no vendor released Linux drivers. Perhaps if hardware manufacturers were willing to release more information about their hardware to developers freely more features could be made available.

  24. damaki:

    I think the problem lies in what people expect from Linux. On Windows, people expect that hardware will work once they installed the drivers and proprietary apps. On Linux, they expect that it will work automagically, and even more with the Ubuntu side of things.
    It’s no magic. To make your mouse buttons work, you have to install software. To use the advanced sound routing functions, you have to set it up, just like you were doing in Windows. To make use of you keyboard multimedia keys, you need another program.
    Sure, it’s a pain to install software, but most of these will work flawlessly once you installed the adequate things. You could still bitch about the text files configuration and you would be right, though that’s not the point here.

    Don’t expect everything to work in a breeze, because even in the magic Windows operating system, it does not.

  25. Xaviour:

    The reason there are so many articles complaining about the lack of linux driver mostly stems from companies using enterprise linux distribution like RHEL or SLES.

    Contrarily to desktop distributions like Ubuntu or OpenSuse, the enterprise linux distributions use old kernel versions that lack drivers for modern hardware. The difference at a given time can be up to 1 year delay.

    Small companies that buy their machines from local assemblers instead of big names like Dell to get more bang for their bucks are at risk of ending without drivers or non functional drivers (like the on board Attansic Gigabit Ethernet on new ASUS motherboards).

    So companies are forced to choose between losing support for the proprietary tools they are forced to use (not using an enterprise Linux distribution), paying too much for their hardware (machines based on older hardware is about as expensive as machine based on newer hardware) or ending up having to micromanage their hardware (compile drivers by hand or add an extra Ethernet PCI board).

    Companies do not like this situation and they complain loudly about it. The fancy features you describe (except the g-force sensors) are not fundamental to enterprise customers so there are not so many articles speaking about them.

  26. james:

    you are aware that the reason some drivers are incomplete is the EXACT same reason that some hardware is unsupported? poor/nonexistent documentation from the manufacturer or vendor-supplied binary only magicware that is incomplete for linux deliberately.

  27. lorg:

    I agree. I started using Ubuntu about a year ago, and sometimes I do get the feeling that I’m missing out on my hardware.
    It’s not even that I’m not getting my money’s worth from my hardware, it’s more that I want some features that I just can’t have.

  28. Erik Andrén:

    You make a great - and a very important point.
    The problem lies within that a lot of drivers for Linux are reverse-engineered, which due to the natural complexity of this operation makes the feature-set more incomplete.
    Another aspect is that the kernel developers focuses on delivering mechanisms not policies, this means that the user-space applications need to have better frameworks for displaying and abstracting the underlaying hardware to the user. Such an undertaking is long and hard and there’s much trouble to find the right way ™ to do things. I do believe that Linux and its userspace tools are doing things the right way by trying to conform different hardware devices to a common interface instead of that the device manufacturers supplies its own (often hideous) UI. Look at all the 3d party network-managers that exist for windows, look at all the awful audiomanagers that replace the normal audiocontroller in windows.

    All in all, It’s taking a bit of time but we’re slowly getting there.

  29. Nick Lamb:

    “they might as well all be Sound Blaster 16s”

    Of course you don’t realise this, but the SB16 was a much more complicated piece of hardware than your generic onboard sound chip. There’s a hardware FM synth, and support for a full MIDI synth daughterboard, plus an analog joystick connector.

    Your onboard sound hardware doesn’t really have any interesting features at all, as with your mouse many of the advertised “features” are just driver tweaks that ought to be part of the userspace. There’s no “powerful DSP” in that sound card AFAIK, all the heavy lifting is done by your CPU.

    Sure, Windows makes it appear to have a synth ? You can install one for your Linux distro too, but I’m afraid it’ll work just as well on anyone else’s cheap sound card. Did it say it had 3D surround mixing? You can do that in ALSA too if you like but it’ll use a lot of CPU.

    There’s lots of examples of this in the PC world and for that matter on Apple’s Macintosh lines. Hardware RAID? Not really, just a BIOS tweak, use Linux software RAID. Volume control on an iMac? There isn’t one, it’s emulated in software. Since most people don’t get the source code for their drivers they can’t tell the difference between “We changed the driver” and “New, improved hardware” and the latter certainly sounds like it’s worth more money, doesn’t it?

    None of this should be taken to mean that you’re entirely wrong-headed. There’s always more work that could be done to improve drivers and userspace support for hardware. But very little of that work is in the Linux kernel these days.

  30. Raphael:

    Aye, great article, and I agree as well (even though I’d like to have my webcam supported at all). However, you should remove the two occurences of ’shit’ as they don’t fit into the otherwise well-written text and kind of alienate the reader.

  31. NoWhereMan:

    I tend to agree with the “Complete driver” thing, but I tend to disagree on some of the contents.

    I’m the unlucky owner of a laptop having a very low-end motherboard (VIA) and graphic card (Unichrome) and still they suffer from bugs and quirks.

    Poor quality HW? Probably; anyway the MESA driver lacks a maintainer, so no compiz for me. Who cares? Yeah, who cares, the most important thing is stuff to work.

    The laptop need to boot with kernel parameters or some (integrated) peripherals won’t work. USB or Wireless: choose, depending on which I have to choose different parameters.

    How having both? irqpoll, but with Gutsy kernel irqpoll is unusable, the system becomes very very slow.

    So the point is not low vs. high end, but of course you got the point: we need *complete* drivers, not *many* drivers :)

    (BTW, beside the rant, at least my PC somehow works… feisty kernel :P)

  32. someone:

    I think you hit the nail on the head. If drivers are written by the “scratches my itch” model, they are by definition incomplete. Given the current development style of the kernel, manufacturers won’t write drivers. I cannot even say I don’t understand them…

  33. Bragi Ragnarson:

    Buying new stuff for one of my Linux computers is quite simple. I just look at compatibility and pick components that have Linux support. This usually means I have to skip entry-level offerings and go for higher priced but also higher quality items. But once I get one of this things home it just works and I can use it with my favorite apps.

    Now when it comes to those high-bling-windows-only thingies with multiple buttons and super drivers… Installing any of them on Windows is PITA. First you need to put a driver CD for windows to recognize it. Often you have to put CD and install a pile of crapware EVEN BEFORE actually connecting the hardware.

    In addition vendors doesn’t just provide standard driver, invisible to end-user but allowing all applications to just use the hardware.

    Instead they provide you with their own application that you should use exclusively. This application is user unfriendly, requires at least one tray icon and hijacks all your file associations.

    In the end your windows looks worse than Christmas tree with all those flashy blinking icons and ‘drivers’ - as you call them. Plus work on such system is almost impossible - all those resident applications make system slow and unstable.

    Which brings me to the point: you want bling-bling? Get windows, install any hardware you want and loose your productivity and spend most of time on maintenance.

    If you look for quality instead of flashy look you will get all Linux support you need.

  34. James White:

    Good article and I agree with most of it. But… Who cares if a windows user switches? In fact, if every windows user in existence switches to Linux, what good would that do the Linux community? (Well, it would cause manufacturers to make good drivers, I guess, and that would be a good thing). But mostly we would wind up with a bunch of Icon clickers, surfing as root, and adding nothing to the community except a desire to make things ever simpler - i.e. lets get this Linux thingie dumbed down to where we can use it.

    JW

  35. Mr Zarg:

    hmmm,I think you may be missing the point, Many device drivers are incomplete because of companies strict non-disclosure agreement and fear of open source ‘ideals’. Most driver developers, who in a large part are unpaid programmers, spend most of their time reverse engineering windows drivers, and practice which is time consuming, ad in the new climate of the dmca increasingly illegal :-(. When buying hardware you need to do your homework first, you can’t just go a buy stuff from companies that do not want linux running on thier hardware. ATI is good example, driversupports allways been crummy, but it took AMD to see the light and start making drivers!! :-)) , so I as a consumer will now consider ATI for my linux system.

    My laptop is not bleeding edge, it’s IBM, and everything is support under LINUX. IBM..linux thinking company! Good quality hardware, linux runs well on it. You’ll find linux developers write drivers for stuff they actually own, so just because you got some brain dead broken motherboard, dont expect linux to run ot it!!! in fact I’d prefer if it did’nt.

    maye you should write to all the companies and
    ask them to either

    a) release open source drivers for the hardware
    b) release programming and specification details,
    so driver development is much faster and easier
    for linux developers.

    To sum up, you are a consumer, you have buying
    power, do you home work, don’t buy hardware
    that is not well supported. simple!

    These companies will soon get the message.

    13 mouse buttons?

    Bios that you can overwrite while the OS is
    running? did someway just say rootkit?

    just because it has more features, does not make
    it make a good idea.

  36. Stavros:

    I must agree with Julian. It’s simply infeasible to support every device on the market the way the manufacturer expects it to without the manufacturer writing a single line of code. The trouble is that in the typical user’s eyes if a device doesn’t have a driver for Windows, it’s the device’s fault, but if it doesn’t have a driver for Linux it’s Linux’s fault.

  37. Penguin Pete:

    I agree with everything you say, but, incidentally, I was kind of rolling when you brought up USB laser-guided 13-button mice and fingerprint readers. These are devices that I’d be cautious about buying for fear of lack of support, regardless if I’m running Linux, Windows, FreeBSD, or Plan Nine from Bell Labs (and I have all four!). You can have support issues on any system. I once lost a fight with Windows years ago when it insisted that my CD-ROM didn’t exist, despite my just having re-installed from it.

    It’s little wonder that advanced hardware like your example is lagging behind in support when 97% of the users out there don’t own such a device.

    Still, one must tackle device support with fiery zeal. Onward, Linux, until you support every feature of everything!!!

  38. Christopher H:

    I agree, both with the article and Julian.
    And one problem is that the manufacturers don’t develop drivers for GNU/Linux. But the “absolute solution” isn’t perhaps to “make” the manufacturers develop the drivers (the problem is to convince them that there’s an commercial “gain” in it [and there is]), as some will still refuse. As the Linux Community has many good developers that (hopefully) want to develop full-functional drivers (that’s much better than those for Windows), “we” can develop them. But it’s not the easiest thing to do. What the developers need is “specs” from the manufacturers that can help the developers in how to make the drivers “talk” with the hardware and take advantage of all it’s functionality, to the fullest.

    I KNOW that we can get drivers (and other software) that beats windows-drivers (and sw) with “”horse-lengths”". We can do better!

    That’s just my humble opinion!

  39. dsd:

    Indeed a great article though I want to add some additional information. There actually already *is* hardware that works better under Linux than it does under Windows (only experience up to XP here). For example the network multifunctional printer of HP we have here, works better under Linux (and Mac OS X) than it does under Windows. Installation of the drivers under Windows was a hell and the printer does not yet fully work under Windows XP while I have no idea why. Under Linux every feature I need works (the printer is not connected to the telephone network and we don’t need the fax feature anyway, though AFAICS the fax feature also should work).

    Another example is a simple network card. Under Windows XP you first need to install a driver…which is a problem when you don’t have the driver CD any more. The solution was to boot the computer using a Linux Live cd and download the Windows driver to an USB stick and then reboot to Windows (it’s difficult to download a driver under Windows when the network is broken ;-) ).

    But that said, I totally agree that there is still room for improvement in some areas. I’m sure that in a few years Linux will have better hardware support in all areas than Windows.

  40. Bill Gaits:

    IMO it’s more of developers would just rather work on more interesting things like adding bloat to linux than completing what they start.

  41. Sean Deverell:

    There are actually very few drivers for Mac. In fact the only way to use OSX is on Apple’s hardware it is very difficult to get OSX on to a PC. I can’t even get drivers for my Creative X-Fi on my PC for Linux. I don’t want to use some second rate open source ones that 3 guys spent a weekend on and slapped it on source forge. I want Creative to make them. So until all my hardware is fully supported I’m not making any switch.

  42. she:

    “If my experience is not uncommon, why is there still a common perception that Linux lacks hardware support?”

    I think what you should not forget is that there are
    a) different people saying this or that
    b) WHEN someone said something

    In my experience, people do not regularly say this these days. But it was very common few years ago. The Linux Kernel as such, IMHO, has improved, different to what many others say (I compile the kernels on my own too btw, i dont want to rely on Distributions… had too much negative experience intogether, mostly because it takes too LONG to just wait, while on my own I can decide for myself when to switch, learn more this way and ironically have less problems afterall, after an initial learning curve…)

    It is rather long that, in the communities I participate in (mostly smaller distributions, and some communities around the Ruby language), a big factor and grieve with Linux as a whole is not so much the device drivers or similar. In fact, for myself, I lately just compiled sane-backends and sane-frontends, plugging in my USB scanner, and could scan (sadly not directly to a .png file, but I hope the libsane guys will allows this one day… its a little annoying to convert it on your own with imagemagick for example. Anyway)

    We should maybe split the concern of people. I cant speak the least for server guys, nore for the enterprise suits (whose PR annoys me to no end… every year they shout loudly that this will be the year of linux on desktop blablabla but they rarely try to tackle problems with ACTION and CODE, but instead add more and more complexity…) but I *am* able to talk for the Desktop Users “community” (I am one of these Desktop Users, although my Linux machines are servers just as well… its just not their main focus)

    This was a bit lengthy so far.. lets come to my point:

    I believe the biggest problem in Linux as a whole is the Multimedia stuff, followed by technical annoyances (I love the Gobolinux way, it makes a lot more sense than the FHS, but the old nix gurus will never ever change at all).
    Many had the grief with OSS vs Alsa… there is the annoying codecs “solutions” too (which disappears almost completely if you compile mplayer from source and use the essential codecs packs, and I heard even Realmedia will be supported via a Google Summer of code soon…)

    Then there is this NEVERENDING story of Video stuff on Linux, like ATI or Nvidia closed drivers, as far as GAMES are concerned.
    (Also, Linux lacks more quality games such as wesnoth, but this is another topic…)

    My windows-using friends are all buying expensive games, and this is THE biggest issue - if they cant run their games on Linux without a problem, they wont switch. Openoffice may win over the MS Office guys, but whats about the Gamer community?

    This better drivers and better complete drivers, I agree, its a step in the proper direction. But its only a small step…

    Your article is really nice and I hope people will not be silent and instead beat the guys that speak against it on their head over and over again.
    If we dont bitch, and bitch more, they will only cater to the enterprise needs, enterprise which put people with big egos such as Mister Dr*pper into so important areas whereas the community guys get hardly heard anymore…

    If you cant win the community, the enterprise world wont succeed. (Linux as a whole is already so fragmented, the distributions have, instead of solving problems, added to the problem)

    BTW I also think Linus should envision a way for the DESKTOP users to use their computers. Yes, it may not be perfect, and i do NOT say he should say WHAT you should use, BUT he should support a CLEAR way from the Kernel onwards to say what WOULD BE GOOD.

    The reason why Linus should say this is, because no matter what he flames, he is still the real community hero. ;)

  43. marcos:

    I too find audio support in Linux to be most disappointing. Even managing to get the audio through the spdif output, it still sounds enormously worse than windows. And I’m listening to music all the time, so it’s really frustrating.

  44. Yohan Fidzri:

    Well said… It’s more of manufacturers wasted too much time on Windows forgetting there’s other OS out there. Even on OSX with free Xcode development kit is still lack of hardware support from manufacturers.

    Hopefully the change of direction will be soon…

  45. Jukka:

    True, that’s how it usually is. A lot of critics never ask this question: do operating systems support devices, or do devices support operating systems? In the case of Linux, it’s often like the former, but we could also expect Linux drivers from the device manufacturers. Currently, between the two is the team that has promised to work on Linux device drivers for companies, for free. It seems I can’t even find them on google right now, though. It wouldn’t probably even have to be open source, and so the developers could get proper instructions and specs from the manufacturer, which could, hopefully, lead to more mature drivers. Maybe even perfect drivers.

  46. Fawn:

    I agree 100% .

  47. LudoA:

    I completely agree. Besides some well-known exceptions (ati, wifi) Linux supports most hardware. These days that’s no longer a problem for me. The problem I do have is indeed the same as yours: support for all features. I hope Greg K-H picks up on your blog.

    Thanks for blogging this.

  48. Robert:

    “In fact, Linux drivers are among the best in terms of stability, security, and performance.”

    Totally untrue. There hasn’t been a Linux video driver yet that was as good as it’s Windows counterpart, *especially* in performance.

  49. Herman D. HugeLoad:

    No question about it, you are correct in your assertions.

    For the ex-Windows Linux adopter, full of hopes for a new OS free of limitations and chock full of flexibility and features, this can be a jarring experience. Why? Because he/she has come from an environment in which it should be said, the greater majority of stuff just works - even if at an unacceptable cost.

    My own $0.02 worth is that to get Linux REALLY cooking with gas is a lengthy and complex endeavor. To get Gutsy minimally functional is a breeze, basically clickety-click a few times and you’re done. BUT adjusting your environment so that you’re working on a par with expectations from the old environment is a daunting task for all but the technically proficient.

    Conclusion: There isn’t one really, everything hinges on why the user is installing Linux. If it’s full featured, no-compromise usability that’s needed (and I’m not being a troll here) then buy a Mac of some kind, and then you know that stuff will work, and - just like Linux - there’s a mind bending assortment of great software available, some free some non-free. Most importantly, drivers work, don’t lack features, and don’t give the user headaches. A Mac interface is also simply “damn gorgeous”.

    That said, such beauty (in hardware terms anyway) comes at a price, but once again much depends on why the user is departing from the clutches of the Borg of Redmond.

    Peace & Love y’all!
    /dogshit

  50. Ola Dimeji:

    Extremely well-said! I couldn’t agree more. As the previous comment indicated, until you can outdo Windows in audio - for example, most people will backslide…

  51. Duncan:

    With respect your comment about flashing the BIOS - both Dell and HP provide tools to do that level of system maintenance from a running Linux-based system; both system BIOS and peripherals. Granted, only for their servers, but if they’re willing to do it there, there’s no reason they or other manufacturers can’t do it for consumer hardware. Dell’s stuff is even available as source.

  52. James Sumisu:

    In Linux world, however, it is possible to pay $ and get anyone you like to develop the driver features that you want and find missing. Cheap chinese, indian or russian programmers will be happy to do the development work for a few dollars. It’s better than farming for gold in WoW.

  53. Lawrence:

    You’re comments about mice are spot on. With the release of Gutsy Gibbon and the new Gimp, for the firs time I’ve been considering doing some media development with Linux. I have a dual boot wintel laptop (a sager) with an Intuous graphics tablet. But while using linux, the wheel on my Intuous mouse scrolls the screen in the opposite direction from windows. I’ve been trying to understand whether there is a reason for this. It’s very hard to get used to. It is lovely to have some Intuous support in Linux, but unless it’s complete, I can’t use Linux for more than web surfing.

  54. Farhan S.:

    I am a Linux user for a while now and I must agree that having “complete” support for hardware components will take away the uncanny feeling of incompleteness that I have in me when I am using my Linux box.

    Let’s hope that “Linux Driver Project” will be a huge success like Linux itself. It surely will make a lot of people like the writer of this entry (or myself) _extremely_ happy.

    Great article!

  55. Hub:

    Maybe you should talk to the manufacturer and ask why they withhold the information that would allow writing the drivers without reverse engineering, etc.

    Because that’s most of the problem.

    Comes to mind: Canon devices, Logitech devices (they have NEVER supporte Linux in any way), etc.

  56. Michael:

    Who really cares about Linux anyway? It is just a fad, developers will come back to Windows soon enough. Microsoft is always going to have the market.

    Microsoft have the industry on all markets except hobbiest. They have RAD development, Business, Gaming, etc.

    Windows XP is a great OS. It is not as sexy as OSX but it is as stable, user friendly and secure. It runs more applications and games than OSx could think of.

    I happen to think Windows XP is the most underrated OS of all time. It is as good as OSX. I run the both in parallel and there is not alot of difference at all.

    I am a professional developer and the .NET framework with Visual Studio is my choice of development environment. Nothing can compare with the speed that you can develop application on the dotnet framework, it is miles ahead of all it’s competitors. That is why it is now dominating all domains except hobbyists.

    I was a Java programmer but like alot of developers I have moved to the .NET framework.

    Microsoft really takes care of it’s developers. While it continues to innovate in the development space it will always own the OS.

  57. Richard Steven Hack:

    As I’ve said many times in the past elsewhere, the driver problem will be solved when corporate IT decides that making Gates the richest guy in the world is not an effective use of their IT capital and starts demanding Linux on the desktop as well as on servers.

    Then their suppliers will demand certified drivers from their peripheral suppliers.

    To a small degree, this is already happening with Dell’s Ubuntu machines.

    It may take some years yet for this to occur, but it will happen eventually.

  58. Toni Ruottu:

    This makes lot of sense from the “Why doesn’t average people switch to Linux systems?” -point of view. The “problem” from that point of view would be developer motivation. I personally doubt there are lots of people who are ready to do any work as long as it solves one of the core issue why people don’t use Linux systems.

    A person who thinks that average people should run Linux systems have two options. They can either do all the work themselves or optionally find a way to motivate developers to do the work. The latter is usually done with money in form of a company (at least in the old world of restricted software development).

    If such people/companies exist your article may be very useful to them, if they read it and aren’t already on the track. I.e. know already what you’re saying. If they don’t exist then one can choose to be such person or form such a company. It may be hard and one should consider whether or not he is ready for such a challenge.

    We can also go even further from doing it ourself by trying to find motivation for a person to do that. Or to find motivation for someone to find motivation for someone to do that. How ever at the end of the chain it is all about motivation.

    I repeat once and, if the motivation exists your article will be very useful to the motivated people, unless they would figure this out their selves. At least now they don’t have to. In any case the article was refreshing to read. Cheers.

  59. Halatwork:

    Well said, I can definitely say I feel the same way. I’m a Linux user, but I could be a happier one! Another example are printers that support printing on photograph paper or T-shirt iron-ons, this just does not work on most printers in Linux.

  60. Intruder:

    Bingo… although there are some huge gaping holes… like why does making wireless work at all always SUCK on linux? And why is it so hard to have more than one profile on that hard-to-install wifi card? And why do I have to create all the dirs and copy over drivers, etc, for wifi, but not for *anything* else.

    Well okay, clearly I’m only griping about wifi. Other than that, I love the penguin.

  61. Jim Penn:

    I’m just a linux enthusiast, not a programmer, and so my understanding may be flawed but don’t the hardware manufacturers have something to do with too? In addition to not supporting linux, many of them won’t release the full specs for their products making it hard to write a driver that supports all the bells and whistles.
    From what I’ve read there are many good developers who want to write good drivers but can’t because they don’t have all the information they need.

  62. Imtiaz Rahi:

    Very well said and shown with example.
    When the other OS users see that there hardware is not fully functional under Linux there is not enough incentive to switch.
    I as a long-term Linux user also feel these.

    In few things Linux must provide additional functionalities to wooo users. The rest will come along from the vendors when Linux drivers will make commercial sense to them.

  63. Matt:

    Well said! I love linux and have been trying to switch. I have a lot of coworkers who would use Linux, but think that the driver support isn’t there. 3 times, I have pointed out to someone that Linux supports more devices than Windows and convinced someone to try Linux. In each case, they have problems similar to what you describe.

    My own experience is with my fax/scanner/printer that I can only use as a printer in Linux. I found the web site for the group that made the driver and they considered the driver to be complete.

  64. Andrei:

    Couldn’t agree more. My biggest beef is ATI cards. They used to have the worst linux support, but now it’s improving. Still, it doesn’t look likely that the TV tuners will ever be supported..

  65. Sanders:

    The reason about why most extra functionality is not supported is simple, not too many people use it.

    Except for the mouse and the scanner only a relatively low amount of people fiddle with the motherboard’s overclocking, the extended audio support on the motherboard or the bios features.

    IMHO The scanner and the mouse are a good case for reduced functionality and serve as a much better example than the audio, even that I myself consider the audio problem important. But you know, stereo is more than appropriate to watch a movie, good scanner support and decent mice resolution can be critical as they severely affect work performance.

  66. Niklas Andersson, TechWorld Open Source:

    I agree with former commenter Julian.

    Manufacturers has the opportunity to contribute to existing drivers themself, or write the drivers themself and contribute to the kernel.

    They can also participate in “The Linux Driver Project” and they get developers to do their drivers for free - on behalf of Greg Kroah and Novell.

    Personally I see that Linux is coming big time. Our publication (in Swedish) has 20.000 - 35.000 weakly readers and 33% of them are using Linux and that amount is rising.

    Any intelligent hardware manufacturer would take this opportunity to work with the community and Greg Kroah to get better driver support out there while this door is open.

  67. alex:

    Not only do the makers produce their own drivers usually, Microsoft has the clout to get everything they need in order to write drivers too or at least integrate more closely with them.

    Still, doesn’t seem to make Windows more robust for it….

  68. Dave Child:

    You’re spot on. I can’t get the dual-screen working on my Radeon X1600. Basic functionality is fine - picture on both screens - but the bit I paid for is essentially gone because I have the same thing on both and no apparent way to fix it.

  69. M.:

    You pretty much nailed it, but there’s a Catch-22 hiding in there. Until Linux becomes mainstream manufacturers will not feel the urge to provide Linux drivers. On the other hand, as your article observes, inferior support for current hardware prevents it from becoming mainstream. I don’t see anybody breaking this vicious circle anytime soon.

  70. Anonymous:

    I agree that complete drivers are needed. My Diamond Radeon X1300 will not drive dual monitors under any circumstances in Ubuntu. With open drivers it crashes my machine. With proprietary drivers it crashes my machine. How disappointing.

  71. randomshinichi:

    Bravo. One of the many reasons why I didn’t use Linux on my new laptop. My SD/MC/whatever card reader wasn’t reported to work completely under Linux.

  72. Gordon Eldridge:

    I am using Gutsy Gibbon on my home computer and most everything works with the exception of the advanced features on my HP F340 scanner/printer. Although it does work very well, I think that HP should release all of its hardware drivers to the community so that they will work better in Linux than Windows. HP has supported Linux for a long time, to one degree or another, and I am hoping that Dell and Lenovo will follow suit.

  73. Michael Dwyer:

    Just a note about the Canon scanner button issue. There is a user-level program that will listen for the buttons to be pressed and fire off programs to handle them.

    But alas this doesn’t refute your point at all. Installing and configuring this code is still a giant annoyance. Although I have the technical knowledge to make the buttons work, I lack the time to put in the effort.

    One more thing about the scanner, though: I recently switched to Windows XP 64-bit. My printer, scanner and web camera all lack driver support for this version of Windows. I’m now in the strange position where my linux boxes have better driver support than my Windows box.

    Funny.

  74. lancest:

    There is great need for further improvement of Linux drivers. That said I think in many cases people don’t miss the advanced features of their devices not working perfectly. In many cases i think there is a feature bloat with devices designed for Windows. People often don’t use most features except the basic and most important ones. My built in notebook webcam doesn’t work (maybe does) and Logitech lazer mouse has reduced functionality but I don’t mind at all! The freedom and performance gains in Linux make it very worthwhile. Windows is about software bloat. Everyone should investigate their device functionality in Linux before buying and wait patiently for improvements in the future. I don’t believe Linux has to perfectly match device functionality in Windows though.

  75. Jon:

    I wholeheartedly agree. Many bits of hardware i have are either unsupported or are not fully supported.

    A rt61pcmcia is sort of supported as is my Nikon Coolscan V ED. Same goes for my Canon ip4300 which can only print at 600dpi (i bought a turboprint license).

    My Epson 4180 is totally unsupported and so is one of my wifi cards that i gave up with.

    I feel Linux, until a miracle occurs, will always play catch up if we fight to support every bit of hardware.

    Jack of all trades master of none?

  76. ky2005:

    I think this is not all linux’s faults.Many vendors wouldn’t give all the details of their hardware to public,so what linux can do is implement the features which it is capable of.

  77. adric:

    Easy to say, Linux has to do this, Linux has to do that. It is the community that is trying to get Linux accepted on more hardware with every new release.

    Linux doesn’t lack drivers, Linux doesn’t lack complete-drivers, Linux lacks support from Hardware Manufacturers!

  78. adric:

    Does anyone who harps about Windows compatibility, have a clue about how Microsoft / Windows get the drivers for the hardware?

    Do the same with Linux, and the whole question of Linux, drivers and hardware compatibility will be a non-existent issue. Now compare the Operating Systems to your hearts content!!

  79. adric:

    Try and get the Realtek 8139D NIC to work in Windows without the driver disk available (provided by Realtek with the NIC), and you will know what I mean.

    Well, I gave up & bought a new NIC of a different brand with its driver disk to get network access.

    Oh, and just to note, the Realtek 8139D was configured and worked properly out of the box in openSUSE 10.3, Linux Mint 3.x, Ubuntu 7.xx, Wolvix 1.1.0.

  80. Zig:

    Hey,you delete people comments! what is this site..your a joke.

  81. Lynoure Braakman:

    Dear reader of these comments,

    Do you have hardware that is not completely supported in Linux? Did it’s manufacturer release its full specs? If not, contact them _today_ and tell them that you will not continue to buy from them if they will not supply the specs. Then stick to that when it comes the time to buy new hardware.

    This kind of consumer-provided pressure is essentially important for getting manufacturers release specs.

  82. ba1l:

    Your argument may, in fact, be correct. However, your examples are a load of crap.

    For example, it is highly unlikely that you have any kind of sound card. As someone else said, all on-board sound cards are little more than a simple DAC and ADC pair, connected to a DMA controller. There is no hardware mixer, no support for more than a single sound channel, no effects, no DSP, no processing ability, no MIDI synth, nothing. It’s all 100% software.

    There are some sound cards with hardware mixing, or effects capability. Hardware mixing generally works in Linux, but effects don’t - Creative Labs (the only company why make real sound cards) refuse to let anyone support them. Pro audio cards work just as well in Linux as Windows - better in some ways, since you don’t need to install different drivers that are incompatible with the standard audio system.

    Oh, Vista doesn’t support real sounds cards. Even if you have one, Vista will use software processing, with no ability to use the card’s hardware features.

    On the mouse front, how can you complain about having to run an extra app to get the mouse working fully in Linux? You have to do that in Windows too.

    What’d be nice is if Linux could have better drivers than Windows. The ability to use 13-button mice with all kinds of weird settings should be included. It shouldn’t require different applications for each mouse, as it does in the Windows world.

  83. Sam Liddicott:

    You want features? Offer a bounty.
    Use the money you save on windows to offer incentives to those who have the skill, and thus leave a legacy for all linux users.

    Sam

  84. unknown:

    Let’s be honest - there are a lot of common hardware that doesn’t work Out-of-the-box with Linux. Winmodems, Wireless, some webcams (!!) and even some ethernet cards.

    It’s no use if there’s some version 0.01 driver being written somewhere. I’m not saying its anyone’s fault, but let’s not distort the facts.

  85. Bjorn:

    This might already exist, but some linux authority (linux foundation? free desktop?) should put up a list with “gold”, “silver” and “bronze” hardware. In the gold list there should only be hardware that works 100% with in-tree drivers and xorg etc, silver work 100% but require binary drivers and bronze work, but with limited functionality.

    Create a tux logo in the different colors and put these on the cartons and it would be much easier to make friends and familty enjoy their linux desktop. Attaining a symbol would ofc require open specs or company comittment, it’s really irritating that some sound card manufacturers prints “work under linux” on their home pages when some hobbyist has the sound card working to 10% in alsa.

  86. observer:

    We at Wikipedia usually respond to the question “Why doesn’t Wikipedia have an article on XY?” with “Because you didn’t write it.”

    Same goes for your wondering why Linux doesn’t support hardware well. You’re missing a feature? Go ahead and write it. Linux is not something someone does for you, as you may be used to from using a commercial OS. It’s what its users do for themselves.

  87. TemporalBeing:

    For the most part, I do agree with you - there are a lot of drivers that need to be completed and have some functionality fixed. One example is the sungem network chipset, which at least using Sun’s version doesn’t detect network speed & duplex right.

    However, the kernel guys are just writing the drivers, and it would be hard for them to achieve what is accomplished in the Windows world where the driver folks also write the base applications - thus providing both Kernel space and User space support for the device. Perhaps some of that could be solved by creating special device nodes for some of the functionality, but that would lead to a lot of custom code that would bloat a lot of drivers.

    Why? Where Windows drivers support a specific device and a specific version of a chipset (e.g. Sun’s sungem vs. Apple’s sungem, etc.), a single Linux driver for a given chipset or device may support may different versions of the hardware - each with their own custom extras.

    Some of those extras - like the buttons on your mouse - are easily supported by adding the appropriate configuration changes to X Windows. For a mouse, you just have to tell the X Windows system about all the extra buttons and then what to do with them. You might be able to do the same with your scanner. (Not sure, though.)

    As to your complaint about sound, there is a library that supports the AC-3 Digital connections provided by sound cards. My SB Audigy 2 ZS works just fine through the digital AC-3 line with it. (I haven’t tried the optical as I have no other hardware that uses optical lines at the moment.)

    So, yes - some user space support already exists. But you can’t hold the kernel maintainers to issues in user space. And going back to the manufacturers - they typically have two teams, one that writes the kernel code and one that writes the user space code. They just also happen to control both, so they both get distributed together. (That’s their value add.) The F/OSS world is a lot different. Of course, you could get that same support if the manufacturer supported the Linux ecosystem just like they do Windows. So, please feel free to complain to them.

    Finally, some of those same manufacturers are the ones holding back the hardware support. For instance, Sun does not support their sungem driver very well, which is why it lacks what it does. It’s a matter of getting the documentation to the people that can do something about it, or getting the manufacturer to do something about it, or both.

    So please, complain to the hardware manufacturers and hopefully they’ll realize they have a whole market they are ignoring that is in fact growing, and one where people (their perspective customers, if not customers already) are and want to be. Getting them to play along and provide support, or enable others to provide support instead, would be a tremendous help.

  88. William Ruberte:

    Vendor Driver and Support is the last major technical hurdle to Linux Adoption however it has a larger hurdle of practical economics. Many of the drivers exist today are partial implementations that will work on one application and not a second. Case in point are Television Tuner Drivers. IPTV Driver Implementations work for MythTV but not in TvTime or Kaffeine. DVB Implementations will work for TvTime but not necessarily in Kaffeine. However such annoyances are only a shadow compared to economic adoption.

    The solution to the problem is economic incentive to increase the adoption rate of the underlining Linux OS for vendors. Currently there is no economic incentive to support the platform, because historically Linux requires an unacceptable level of technical knowledge to use as a desktop platform. To boot a market-share of hardware for 1 billion computers running Windows versus a market-share of an optimistic estimate of 25 million PC’s running Linux leads one to the logical conclusion that a Vendor will support the platform most widely used for purposes of greater profit.

    Linux needs to continue developing just as it is now to allow for a natural progression from alternative platforms. It also needs to be used consistently along side Windows to allow users to make the gradual transition due to differences between the platforms related to security, file system management, communication protocols and identification of applications that perform equivalent functions to their Window Counterparts. Lastly, Linux will need to prove itself for an extended period of time similar to the history of adoption of Windows over Apple.

    If Linux is to take the market-share it will take software and hardware vendors a good 25 years to make such a full and complete transition at which point computers will be substantially different from today. Patent issues alone will take a good decade to resolve before current implemented features are considered public domain. Until this happens Linux will continue to remain the operating system of tommarrow. However as a computer hobbyist, it is nice to play around with the operating system today.

  89. Jack Ripoff:

    Linux doesn’t lack drivers. It lacks free, unemcumbered hardware documentation.

  90. Marcos S Ventura:

    Why would you by a hardware not fully supponted by linux. Put the knife in the producer.

  91. pkphilip:

    Linux needs to have a stable driver API - with support for binary drivers which work across kernel releases. It should be possible for the hardware manufacturers to release binary drivers for their hardware without resorting to tricks such as including an intermediate glue layer code for interfacing between the driver binary and the kernel (This is the trick that Nvidia and ATI uses for their drivers)

  92. Jack Ripoff:

    No it shouldn’t be possible.

    They’d rather just give us what is ours by right: the documentation. This way we ourselves can guarantee full hardware support on any operating system running on any platform - not just Linux on x86, but also FreeBSD on PowerPC for example.

    Free software is not about being vendor-dependent. It’s the complete opposite. Otherwise you should just go back to Windows instead.

  93. sballmer:

    You make me sick. Windows is a great OS, and your hardware support issues are the result of your own incompetence.

  94. Adam:

    Great article, I would agree. I would also agree that part of the problem is with vendors not providing and open source, or *nix binary driver. If logictech provided a binary, or open source drivers your mouse would work as it should. If they even provided the necessary, I think your problem would have been sorted out based on the kernel mailing list archives.
    Sound is a problem. I just installed Ubuntu 7.10 on my laptop and the first thing I had to do was grab the latest Alsa and compile it before I had sound at all.
    Finally, with sound setup, my laptop is working as it should, including blue tooth, IR, wireless, plus suspend and hibernate, which do not work under Vista. I purchased my laptop based on the hardware and it’s support under Linux. Turns out it runs better under Linux than under the OS it was shipped with.

  95. James:

    I agree with all the comments somewhat. I want to use the other buttons on my mouse. I also want to use my CT audigy 2 ZS sound card with ALL of its features and functions. Is that so hard to do? Creative could do it very easily. I’m sure they have ported their drivers already. Just release them damnit!

  96. Louis:

    Just about everyone forgets, (in their one sided selfish approach to life), nobody pays anywhere what Linux is worth, and very few actually contribute anything except ideas.

    If you want all the fancy features and toys to work with Linux, perhaps you feel strongly enough to suggest how to fix them, perhaps petitioning hardware manufacturers for support(you paid them, not Linux).

    I am sure that I and many millions of free minded spirits enjoy and appreciate the selfless and actually superb and gifted efforts of the current developers, who have gifted all their knowledge and talents to provide this freedom.

    How many of the overpaid and controlled developers working in Redmond will give you a single line of code?, they surely have all the hardware coding available, free and gratis to them, but secreted from everyone else.

    Stop whinging and actually use you wallet to donate so that more developers could be sponsored, and perhaps be weened away from Redmond to do something for humanity.

    You will be surprised to see what you get, for giving something away that cost you time and effort.

  97. average joe:

    Hi I agree with the original comments in that we don’t need more flavors of linux and drivers, we need more complete ones.

    I am not a geek or an it professional, I am just an average joe and people like me make up the critical mass of users, that today make up the Windows market.

    very often, I see some geeks use condescending tones in their replies to complaints made by the other users. complaints are good if they result in improvements. Gloating about one’s limited achievement is fooling oneself. I’ve never seen Linus Torvalds or the Stallman or the eric raymond guys look down on other people.

    For linux to succeed it needs to improve and they know that, and today it is far from that, apart from the geeks using linux, there is no mass following. if there were mass following, manufacturers would bend backwards to provide all those drivers that are inexistent like modems or non complete.

    I am from the third world, how many billions of us, there are out there ? It is us that can tip the balance in favour of Linux. today I cannot use linux, because I have dial up modems just like the billions of other people, that don’t have any driver and as such cannot connect to the internet. In case you don’t know it, yes, there are still billions of people that still use dial up modems. Even in north America, there are millions who are stillusing dial up modems because they cannot afford the broad band connections.

    I am using windows, and am able to connect to the internet today without a ny problem so why should I and by extrapolation all the billions of other people move to linux, when by doing so will deprive us of the ability to go to the internet. and in our world with the low income that we get, we can get all the windows and software “free” and there is no cost advantage in using linux as well… However Microsoft is happy because they know that when our living standards go up, the first thing we will do is to buy the official software with licence…

    the problem with Linux is that there are thousands of flavors, but not one is as good as windows or Mac Os. all the independent developers are all reinventing the wheels everytime, why do I need 000’s of free software when they all just provide the most basic facilities.

    when will manufacturers deliver as good a support to Linux as they do to windows, it’s when people like us move to linux and for us to move to linux, Linux should provide the same facility like windows do today.

    just my 2 cents to those people like louis who look down their nose at other people….

  98. silent majority:

    # observer Says: October 29th, 2007 at 08:34:26
    [We at Wikipedia usually respond to the question “Why doesn’t Wikipedia have an article on XY?” with “Because you didn’t write it.”
    Same goes for your wondering why Linux doesn’t support hardware well. You’re missing a feature? Go ahead and write it. Linux is not something someone does for you, as you may be used to from using a commercial OS. It’s what its users do for themselves.]

    observer, you don’t get it and never will get it. what about the billions of people who don’t have any IT knowledge, the ordinary users ? how are they going to write their feature ? so they can’t criticize because they are not computer wizards? don’t forget they are the silent majority (in the billions) that can make Linux succeed or break it.

    you guys are just in your ivory tower thinking that everybody is like you, and that’s the problem with the linux community. and every year we hear that this year will be linux year on the desktop… keep dreaming….

    the fragmentation of the linux world is its biggest problem. I agree with “average joe” , the thousands of developers are all reinventing the wheels all the time, why can’t with creating hundreds of (for example word editors and the likes, why can’t they coordinate all their efforts into one full/complete applications or drivers to make sure Linux is complete from A to Z. today we have hundreds of apps that just sprout up and then die at version 0.5 or 0.6 and or never manage to provide the full functionality

    I also agree with “william ruberte” and “she says”.

    Linux should have coordinated effort, for e.g one group focus on complete sound drivers and their automatic installation and detection, another group focusing on video drivers, another group coming up with usb support etc….

    we need focused groups in the linux development community to provide software, OS, systems, drivers , which are complete in terms of features and functionalities and which WORK AS GOOD as competing products in the WINDOWS and APPLE world.

    today linux is for geeks. tomorrow with the same herd mentality of the geeks community, it will remain so…. and yet the whole linux community all dream of Linux taking the desktop … keep dreaming guys…. the way things are going, in 100 years linux will still not be for the masses. Maybe Apple has a better chance of taking the desktop than linux, with its smaller developer base.

    My prediction is that there will be more fragmentation and more chaotic development forever unless some big names like linus torvalds step in and declare de facto standards and apps that must be used in a recognized/standard and complete linux.

  99. Life Insurance blog:

    the insurance companies don’t want you to know…

    Information on the life insurance industry…

Leave a comment