Friday, August 25, 2006

Propietary Software and openSUSE

There have been some comments on an ZDnet article including one from Linspire that was brought a few days ago to my attention which turns into advocation of their new Freespire release.


I'd like to comment especially on Kevin Carmony's Linspire letter and explain what openSUSE is, since there seem to be some misconceptions.


Proprietary Applications


The ZDnet article rightly claims that we "have ceased distributing proprietary software modules such as 3D video drivers that plug into the Linux kernel". From this Kevin Carmony concludes that Novell removed "proprietary software from their Linux offerings" which is plainly wrong. SUSE Linux 10.1 comes with six CDs. The first five contain only Open Source software, only the last one (if you download: the binary add-on CD) contains proprietary software. Freespire speaks about their "OSS Edition", a term SUSE Linux 10.0 already used a year ago.


The list of commercial software on SUSE Linux 10.1 (full list available at Novell's website) includes Adobe Acrobat Reader, Java, Opera, and RealPlayer.


To be clear, I'm mainly talking about the openSUSE distribution, but let me point out that SUSE Linux Enterprise Desktop 10 also comes with proprietary software including Adobe Acrobat Reader, Java and RealPlayer, and that SUSE Linux Enterprise Server 10 provides Java as well, for examples.


openSUSE 10.2 (the successor to SUSE Linux 10.1) will follow the same model as SUSE Linux 10.1 in distributing and supporting both Open Source and proprietary software - and leaving the user a choice.


I love open source and that's why I'm working on openSUSE. I do also use proprietary software and consider it vital to have a good and stable platform on which both Open Source developers and proprietary software vendors can develop software. Users using this platform are free to use the software of their choice. With Linux and openSUSE, there's such a platform. For mixed source source, I suggest reading our CTO's blog.


The Free Standards Group with their Linux Standard Base (LSB) standardizes a application binary interface allowing application developers to build software that runs on any LSB certified platform. Recently both MySQL and RealPlayer certified their applications by the LSB.


Novell has certified all their recent distributions by the LSB, including the just announced SUSE Linux Enterprise 10 products as well as SUSE Linux 10.1. This is a clear commitment by Novell to a standard conforming base that both proprietary software vendors and open source developers can use. If you look at the other distributors certifying their products, you see there a few others as well - including Red Hat. But there is no certification for Fedora and neither for Linspire/Freespire.


Proprietary Kernel Drivers


So, what about proprietary kernel drivers? Fedora has taken an admirable stand against those (see e.g. Mike Harris' comment). Since about half a year ago, the openSUSE project has been vocal about our position, too (e.g. my announcement in february).


There are a couple of reasons for this in my opinion. The first reason is to respect the opinion of those members of the Linux kernel community that consider binary drivers a violation of the GPL. Supporting a proprietary kernel driver is a nightmare because such a driver might change the kernel in an unpredictable way. The Linux kernel developers will not investigate bug reports if a binary-only kernel module is loaded and ask for reproduction without the loaded module (e.g. read the linux-kernel FAQ).


During the last years lots of hardware vendors have opened their specs to developers so that they could write open source kernel drivers and support their hardware since they believe this is the best way to go. I think that we as community really need to constantly encourage companies to support the development of Open Source kernel drivers - and personally support this from our wallets.


Finally, closed source drivers can sometimes block you, you might not be able to update to newer kernel versions to support e.g. another driver you need...


Personally, I agree with Pamela Jones' column called "On Binary Drivers and Underwear" for LinuxUser & Developer: "I totally get it that folks want their computers to just work. I want that too. But would you please consider that if we pollute free-licensed open source software with secretive code, which we must with binary drivers, we lose what make GNU/Linux special - its openness and our freedom to control what happens on our computers."


For those users really needing an external kernel driver in SUSE Linux and openSUSE, users might easily find them for most recent distributions. External kernel drivers can now be provided as kernel module packages in a better way than before.


Arjan van de Ven wrote about a Doomsday scenario if binary drivers would be allowed universally, read it yourself in the archives of lkml.


openSUSE


So, summying up, what is the openSUSE distribution? It's a distribution containing open source packages including an open source Linux kernel with open source modules - and additionally some closed source user land applications in an add-on.


One of the goals of openSUSE is to create better software. I'd like to talk one day about our openSUSE buildservice and how that one will help to increase the amount of high quality open source packages. I would like to see the openSUSE distribution as platform of choice for both open source and proprietary software developers.


Freedom of Choice and Open Source


In my personal opinion you cannot talk about open source without talking about freedom of choice. I'm glad to be able to run open source software that I can change myself - both fixing and improving-, write bug reports about, discuss the source code, analyze it and check for privacy violations and security holes etc. Certain proprietary software might be in some areas more mature and I can get commercial support for it - something I wouldn't get for openSUSE but could get with commercial enterprise distributions. It's my choice which software to use and if both commercial and open source software can talk to each other, e.g. have standarized data formats for interchange of files, then I can do this any time. I do hate beeing forced to use exactly one tool to do my job - this is some kind of monopoly - and prefer a good competition in the market place.


I have the choice to buy proprietary software and/or help improving open source one. I would like everybody to have at least the same choice with kernel drivers - the chance to run an open source driver on all of your hardware.

1 comment:

The Dr. said...

I am also an OpenSUSE user. It is a great package and a great way to go.

YAST has been both a joy and a pain (when 10.1 originally hit YAST was hit and miss).

When possible, I also choose Open Source packages but, when given a choice between one and none, choose one, even if it is proprietary.

I like the way it is done in OpenSUSE (again, an optional disk that you can choose to download and use or not, your choice).

I WISH that WinPig would be a lot more granular. It would be great to not have more choice during initial installation as to what actually get's stuffed on your hard drive by that bloatware (and not having a separate program to do updates and have to have IE (aka Exploder) is kind of stupid too don't you think).

In any event, your comments are right on the money. OpenSUSE as a package is pretty darned complete. You want a great EMail server, just add Scalix on top of it (or any of the other choices out there but I like Scalix).

Scalix is even going to open source most if not all of their Community version.

If you've never seen it, just go to www.scalix.com.