The Linux desktop quite commonly relies on closed source code to keep itself running. And if the code works, let it be.
When most people in IT think of Linux, they picture an open source operating system kernel, along with other software, coming together to create the server and desktop OS based on Free software. That image is accurate and theres no question that its open source code (and community cooperation) that has helped Linux to become the powerhouse that it is today.
But at what point do we accept that whether we like it or not closed source applications will eventually have to be let in to this otherwise "open" world? After all, this has already been happening for years, despite the Linux purists kicking and screaming the entire time.
In fact, closed source code is used everyday within the Linux world. And heres the funny thing: most of us never really think twice about it.
Closed source with Linux it's not a new concept.
While the core of the desktop Linux operating system (regardless of distribution) is powered by open source code, it is commonly used side by side with code that gets less attention indeed, many Linux purists seem to forget about: Closed source software and drivers are used with desktop Linux every single day by thousands of people.
From specific firmware added by select distributions to ensure wireless compatibility to the open source software known as WINE, which allows users to run closed source Windows applications, proprietary code has its place on the Linux desktop.
Besides, how would most notebooks initially built for Windows get their wireless connectivity without an NDISWrapper using proprietary wireless drivers designed for Windows? Closed source code was, is and may very well always be a major part of using Linux on the desktop.
If the code works, let it be.
One recent event that has again sparked hostility between open and closed source users was NVIDIA's failure to provide source code for their Linux-based graphics drivers. Yet unlike ATI, I personally have never had a single problem using the closed source NVIDIA drivers. Any issues that did arise were handled fairly quickly by NVIDIA itself.
So why is there a problem, again?
In the past, Linux developers have expressed concern over having to "work around" these NVIDIA provided drivers. To basically thinking ahead to how things will end up should a user opt to install these "binary blobs," as developers like to refer to them.
Despite their concern, I would point out that NVIDIA has a fairly decent track record with bug control and, mysteriously, Linux developers have been able to make things work on their end despite this issue with the licensing behind the current closed source NVIDIA driver.
Regardless of any one developer's frustration over NVIDIA driver licensing, the fact of the matter is that providing closed source drivers has worked rather well for everyone involved for a number of years.
Don't get me wrong, I would love to see NVIDIA open up the drivers as much as the next guy. However, seeing Linux purists calling out for a boycott against a vendor who is indeed supporting the Linux platform is simply begging for future repercussions yet to surface.
Negative feelings expressed above will eventually present bigger problems for any closed source software companies looking to take a dip in the Linux development waters. Given that most software companies use closed source software and many hardware companies do the same, the reaction to NVIDIA's decision is going to heavily color how hardware vendors looking into Linux compatibility choose to go forward.
The pathetic thing is that many of them will hold out as long as possible, as Linux developers are largely considered to be a royal pain in the backside by the closed source world.
Application consistency, not source code politics.
Regardless of how people feel about the licensing choices of companies like NVIDIA, there are actually a number of closed source applications used with Linux today that for some mysterious reason, no one seems to be bad mouthing despite the fact that the software is quite restrictive with its code availability. Skype comes to mind as a prime example.
The Skype application provides an outstanding VoIP client for Linux users, among other popular platforms. This VoIP software does it all, from clear telephony to live streaming video. So despite ready access to other comparable open source alternatives such as Ekiga (available for both Linux and Windows), most people using a VoIP client in their homes on Linux are clinging tightly to Skype.
Even though a comparable open source alternative oddly named "Ekiga" is installed by default with Linux distributions such as Ubuntu, most users wanting a VoIP client will reach for Skype every time. Many of these individuals do not care how Skype is licensed. All they know is that this is what everyone is already using on other platforms.
In addition, Skype can be run on nearly every platform you can think of. Ekiga, on the other hand, was first created for Linux and later for Windows. OS X users are left out in the cold.
Understanding that Skype provides its users with a sense of consistency is the key factor. Coming to grips with this is to better understand why more people will not bother to research open source alternatives such as Ekiga. The Ekiga option perhaps provides more "choice" than most people are looking for. Ekiga supports SIP, among other protocols, whereas Skype supports its own protocol period. Based on user numbers, possibly due to marketing, Skype users really do not care about the type of VoIP protocol being used for their communications.
Staying the "open course."
It is important to realize as you read this that this is not an attack on Linux or on open source in any way. Instead consider this as more of a wake-up call with regard to software usability and availability.
I would love to see each challenge presented to the Linux platform tackled head on by open source software whenever possible. However, when you live in a world of patented MP3s, encrypted DVDs, 3D-accelerated ready driver modules, and a wrapper for closed source Windows wireless drivers, you soon realize that closed source remains very real regardless of which OS platform you happen to use each day.
And there's the rub. If there is enough perceived value in a closed source application on a given OS platform, users will pay for it happily.
Perhaps one of the greatest examples of users buying closed source software for Linux would have to be one specific video editing application. A now discontinued application known as MainActor provided a significant benefit to Linux users tired of being limited to half-working open source alternatives like KDENLive.
For the average user, it was the path of least resistance. It allowed users at all skills levels to edit video in a way that would be both sane and user friendly. So even though there were open source alternatives as this app debuted, they were either not intuitive enough to meet the needs of the Linux masses, or instead, were seen as simply being too unstable for serious use.
Is closed source code a threat to today's Linux distributions?
When wrapping your mind around the issue of closed source in the Linux desktop, one thing to bear in mind is that the Linux kernel itself will remain pure, and contrary to common belief, is not under attack.
This means that no proprietary code will suddenly start showing up at the highest levels of kernel development, thus suddenly violating Linux as we know it. There can never truly be a real threat to Linux as we know it.
The most important piece of code that makes up the operating system has safeguards in place to ensure that it will never cross streams with code that is not licensed with an open source license. This is not to say that some distributions do not take the vanilla kernel and add what they see fit to it. But that has absolutely no effect on those who choose not to use those distributions.
Yet at the end of the day, closed source code is here to stay. As Linux users, for most of us, it is part of our daily lives at some basic level. And yes, it is a fairly significant part of the existing desktop Linux universe that fact is hard to deny. How we react to this fact, however, is something that each Linux user will have to wrestle with themselves.