Friday, May 11, 2012

Caitlyn and Linux Hardware Support

Only this morning I saw a post by Caitlyn Martin on About "Linux Hardware Support Myths and Legends" . Funny as always - flaming, ranting and what not!

Come on Caitlyn, admit, Linux is still not ready for consumers. It's never going to be considering the control, complexity and its nature of development. We all love linux. We can tinker our way to use it at our homes and offices. We'll keep on using linux, and we are not sad or sorry if linux doesn't make it to the mass adoption. But your adamant post is laughable at the best. Numbers tell, if there was a pinch of truth in your statement linux desktop would have enjoyed comparable marketshare like the one from Redmond. But 1-2%!

You wrote, "Linux is compatible with more hardware than any other OS bar none. That certainly includes Windows. Try installing Windows 7 on some random laptop from scratch and see how much is missing or unsupported without third party drivers. My experience doing Linux installs for my customers is that a lot of off the shelf hardware "just works" and the rest needs proprietary drivers downloaded to make it work, just like Windows. There is, indeed, some hardware that doesn't work with Linux and years ago that was a real issue. The fact is that more and more manufacturers are supporting Linux well and other drivers have been adequately reverse engineered."

Partly right, linux does support maximum hardware out of the box. But that other OS supports all of the hardware, though not all out of the box. Besides, the maximum number of hardware that linux supports is not as good or simple as it is in that other OS. Compare the installation procedure and performance of modern ATI and NVidia graphics cards on linux with that other OS. Linux fails from a long margin. Moreover, the support is both complicated and buggy most of the time, and not feature-complete.

Caitlyn, please try any of the recent Northern or Southern Island ATi Radeon graphics card on your favorite linux box. Do the same on that other OS. Compare the performance and installation procedure. On that other OS, all you've to do is to pull in the software (just one executable file) from AMD and install it. Your favorite distribution with modern kernel and gallium drivers will readily support the Northern Island ATi chip out of the box. But the performance will be shoddy at best. Then you will search your distros repo or browse the manufacturer's website for proprietary drivers. Download and install the packages. Graphics still won't work the way it does on that other OS. Then you will look for vaapi wrappers, configure the media player settings, bla..bla..bla.. In linux it's not just a driver package, you've to fight with xorg, kernel, drivers, wrappers and decoders. After this big fight your distribution may play your 1080p hd stuff. But again, not as good as on that other OS.

Audio driver scenario is no different. The point is, Sound and Graphics support in linux is very complicated and is always in a catch-22 stage. Admit it!

Here's a copy of the discussion thread on her post. Just imagine how mis-informed and adamant Caitlyn is in comparision to the mature, practical and realistic Jack.

By Jack on May 10, 2012 11:21 AM

Having used Linux since the end of the 90'ies i certainly agree that hardware drivers are not really a big problem. But for some, it really is.

Therefore one should never claim "pick this or that distro - it works out of the box" unless one in fact has experience with the exact combination.

If you do recommend where you should not, you are likely to be the creator of a user very hostile towards Linux, thus a true credibility killer.

Another wrong thing to do is recommending Linux with the ambition to make a Linux enthusiast out of the victim. Recommend (and if possible assist in installing) Linux on basis of the potential users needs and capabilities.

Forget your own preferences - it's all about the potential user, as long as you are sure that you are able to assist.

Now, I've got some shocking news!!
There are no perfect Linux desktop environment, and there are no perfect Linux distribution. There are probably 20-30 distros and 4-5-6 desktop environments that are technically suitable and has the potential, but none of them are really there.

We, as enthusiasts, are able to tweak a distro or a desktop environment into submission. The regular users who just want a neat piece of equipment to work well are not.

Where are the distros for consumers? They don't exist.

By Caitlyn Martin in reply to comment from Jack on May 10, 2012 12:58 PM

Jack: I have some shocking news for you. Any of the major Linux distributions are consumer-ready. That's been true for at least a decade. Any of the major Linux desktop environments are consumer ready. That's been true for at least a decade as well. The current generation of desktops on Windows and even on MacOS are based on ideas that first appeared in Linux. See my recent article on the subject. If those Linux distributions aren't "really there" then certainly Windows and MacOS are even less ready for consumers. You are certainly right that there is no perfect Linux distribution or desktop. There is no perfect OS, period. Linux is in no way more flawed or less ready for consumers than the other options out there.

I see the second part of your comment the same way I see the articles proclaiming that Linux hardware support is terrible: as spreading more fear, uncertainty and doubt for no good reason.

Seems, evangelists like Caitlyn are more of problem than solution to the badly integrated and ever-forking open source OS.

Tuesday, May 8, 2012

Why Opensource Xorg/Gallium drivers suck on linux desktop

They suck for sure. Nothing much required to prove than showing up the status of xorg/gallium drivers for ati radeon as of 9th May 2012. Have a look at the stuff (marked red) that's not working perfectly. The current situation in modern ati graphics chips almost wards off anybody from using linux. And it doesn't seem to go anywhere till couple of years. The current status shows only a fool will buy ATI graphics to rely on open source drivers and run linux on it. What's more enthusiasts say even if the listed features are completed, the performance will no way be comparable with its catalyst counterparts. Pity!
  • "DONE" means that it is implemented and relatively bug-free.
  • "MOSTLY" means that it is implemented but has some known bugs.
  • "WIP" means that someone has started on the initial implementation.
  • "N/A" means that the feature is not supported by the hardware.
  • "N/N" means that the feature will not be implemented, because a better alternative is or will be available.
  • "TODO" means that someone needs to write the code.
  • "UNKNOWN" means that the current status of this item isn't known.
2D featuresEvergreenN.IslandsS.Islands
Kernel ModesettingDONEDONEDONE
Max Supported Display 2-64-66
2D Acceleration DONEDONEGallium
Textured XvDONEDONEGallium
Decode on 3D engineWIPWIPWIP
Mesa 3D featuresEvergreenN.IslandsS.Islands
3D Driverr600gr600gradeonsi
Stippled PrimitivesTODOTODOTODO
Smooth PrimitivesTODOTODOTODO
Fragment ShadersDONEDONEWIP
S3TC decompression DONEDONETODO
Tessellation Shades TODOTODOTODO
Geometry ShadersTODOTODOTODO
Anti-Aliasing WIPWIPTODO
Anti-Aliasing DONEnot testednot tested
Anisotropic FilteringDONEDONETODO
OpenGL Compliance 3.0/4.2103.0/4.2103.0/4.210
Power SavingEvergreenN.IslandsS.Islands
Engine reclockingDONEDONEDONE
Memory reclockingDONEDONEDONE
Voltage adjustingDONEDONEDONE
Thermal sensorsDONEDONEDONE

Saturday, May 5, 2012

Desktop: Debian vs. CEntOS

While every *buntu and *edora moving towards Unity, Gnome3, Cinnamon or MATE, only two distributions remain practical for desktop productivity and fun, they are CentOS 6.* and Debian 6.*. They both will support the good old gnome2 line at least couple years more. However, they are a lot different from each other. Here's a short description on each of them vis-a-vis desktop use.
Pros#1 clean package management. With backports repo now merged with main debian repos and debian-multimedia being very compatible with debian, you can install whatever you like without the being scarred of any adulteration, conflict or breakage.
#2 largest no. of packages, roughly 30,000+.
#3 flexible installation options - from netinstall, base cd to kmuto backported images, full CDs and DVDs.
#4 less memory footprint and disk space usage.
#5 support highest no. of architecture - from arm to amd86 and beyond.
#6 frequent updates and point releases.
#7 larger community and better/quicker support.
#8 better hardware support out of the box with unofficial backports/kmuto installation images.
#9 very flexible system offering easy customization as per individual needs
#1 very responsive (better than debian) system as a workstation.
#2 quicker updates to major productivity suites for office use such as - openoffice, mozila suite.
#3 better tested/trusted set of packages.
#4 longer (more than debian) support period
Cons#1 sometimes updates lose the previous configurations, especially printer, though reconfiguring manually resolves the issues#1 repo conflicts and occasional breakage of package base as rpmforge, rpmfusion, elrepo, remi, elrepo, epel and atrmps don't always work in sync.
#2 lesser no. of packages in the repo.
#3 no easy customization as per individual needs.
#4 smaller community and less no. of contributors

Debian on desktop: 9 pros + 1 con = 8 points
Centos on desktop: 4 pros + 4 cons = 0 points

Of course, the list is not complete at all and may reflect my bias towards Debian. If so, please correct me sending you feedback that'll help me revise the list.

Friday, May 4, 2012

Too much of freedom = Chaos

Q: Why FOSS on Linux desktop did not get traction the way it should?
A: It started up with a Utopia - freedom of choice.

Windows powers around 90% of the desktops worldwide. It doesn't offer much choice. And the little choice it offers is limited to a few application software. For more than 15 years we have just two GUI for Windows - Luna (Pre-Vista) and Aero (Post-Vista). Ask average Windows users about the desktop environment they use. 99% of time you will get a shock response - they have no idea. Or at best the answer will be "Windows". They have just one word "Windows" for the OS, for the desktop environment and everything else. What does it mean?
  • people are not so fond of software, they just want to get their job done using some software (often reluctantly), crying "choice" aloud just frightens them
  • they don't worry about the source code and the RMS freedom associated with it
99% of normal people don't know how to program and don't give a damn about source codes and freedom of choice. They skip any reference to "source code" and "EULA". Free software is ok, but saying "you can have a look at source code" is definitely not an effective point. Very often freedom of choice becomes a costly affair if you consider the time invested to get your way through these choices before settling at one.

That's precisely why after so much trumpeting of the advantages of FOSS it's struggling to register in the mindshare of the masses. The often said "Resistance to change" is not the only reason holding the opensource platforms back. It's the lack of standards, simplicity, coherence and good applications, plus the ever growing chaos in terms of fragmentation and multiplicity in every possible form.

You need to clean the clutter by dumping 90% of the stuff that make up for freedom of choice. Then you need a benevolent dictator who can apply an adamant standard and QC system to really push FOSS on the Linux desktop forward, but then it won't be FOSS anymore.

Thursday, May 3, 2012

It's not the same linux across distributions

Many times I've read this in a lot of prime linux fora - It doesn't matter which distribution you're using as long as it's linux. Then the usual preaching of choice and freedom runs till the end of those particular threads. I don't buy to this generalized statement. Read on to know why, but first let's see how this statement surfaces from the so called evolved linux gurus.

An enthusiast Windows/Mac user jumps on linux enlightened by a friend or being encouraged on the web. He/she tries a so called popular distribution, if unlucky faces multiple problems related to the stuff on the outer layers, the gnu stuff and other OSS stuff which in combination with linux make a distribution. Then googles for a while, visits some fora, gets suggestions from seasoned and noob users to change his/her distribution with some other, where the issues in question are resolved but may face some other bugs. Then some guru drops in and says - linux is linux, doesn't matter which distro, it's best to use one that suits best for his/her particular needs.

Now on to the topic. In theory every distribution is the same, but in practice they are not. A developer or a long time user might feel it same after cleaning the clutter and sorting everything to his or her liking. But the average Joe is not that skilled and doesn't have that patience to tame the OS. A minor quirk that comes in the way might make him/her feel distro A is different from distro B which is quite different from distro C.

It's a pity reality. Linux distributions are so loosely integrated that a minor mistake in putting stuffs together will create major problems. Doesn't matter even if that distribution is byte by byte a recompiled copy or just a derivative of some popular distribution with minor changes here and there. Most often even if the derivative distribution shows superficial changes in skins, branding, selection of default apps or choice of desktop environment, it might influence components lying much deeper in the bundle. For example, take the case of audio stack (click on the image below) on a typical linux system. Look at its complexity and relationship with various components and imagine what can happen with slight mishandling.

Here's an interesting case of Scientific Linux 6.2 and Centos 6.2, both are free recompiled versions of RHEL, both aim to be as much close to the upstream as possible. I started with Scientific Linux, the installation was literally a non-starter on a Dell Optiplex 380. Checked mdsum, changed media from CD to USB to network. No go! However, CentOS had no such problem on the same PC.

How about this