LWN.net Logo

Open source Skype client under development

Skype has announced that an open source Linux client is under development. Skype is a popular voice over IP (VoIP) application. "Yes, there's an open source version of Linux client being developed. This will be a part of larger offering, but we can't tell you much more about that right now. Having an open source UI will help us get adopted in the 'multicultural' land of Linux distributions, as well as on other platforms and will speed up further development. We will update you once more details are available." (Thanks to Nicola Soranzo)
(Log in to post comments)

Open source Skype client under development

Posted Nov 2, 2009 17:17 UTC (Mon) by rahulsundaram (subscriber, #21946) [Link]

Very likely that just the UI parts will be open and the actual protocol library will remain closed.

Open source Skype client under development

Posted Nov 2, 2009 17:23 UTC (Mon) by elanthis (guest, #6227) [Link]

If so, one wonders why one would want to use the Skype UI at all instead of integrating into Pidgin/Empathy/Kopete/etc.

It's irritating as hell how I need three IM clients open to communicate with everyone I know. Parents use Skype, a number of other friends use Steam -- which I can't get to at all on Linux, of course -- and everyone else I know is spread out among AIM, MSN, and Yahoo. Until the parents jumped on Skype and I started using Steam on my laptop I was able to get by with just Pidgin, which was awesome.

Open source Skype client under development

Posted Nov 2, 2009 17:34 UTC (Mon) by mosfet (guest, #45339) [Link]

Even if Skype only open sources it's UI and includes the protocol only as a closed sourced binary blob: There is then an open source API to this blob, which other front ends can use.

> Steam -- which I can't get to at all on Linux

According to the Wine AppDB it should work:

http://appdb.winehq.org/objectManager.php?sClass=version&...

Open source Skype client under development

Posted Nov 2, 2009 17:44 UTC (Mon) by wtogami (subscriber, #32325) [Link]

Would tying a binary-only blob into a pidgin protocol plugin be a violation of the GPL? Probably.

Open source Skype client under development

Posted Nov 2, 2009 17:56 UTC (Mon) by nye (guest, #51576) [Link]

Don't really see how - it seems rather a stretch to say that that would make the blob suddenly a derivative work of Pidgin. The glue part would be of course, and would thus have to be released under the GPL, but there's no problem there since a GPL application can obviously link to a closed library without issue.

Open source Skype client under development

Posted Nov 2, 2009 18:41 UTC (Mon) by mem (subscriber, #517) [Link]

Uhm... no.

The binary blob can have its own license and be happy like that.

Pidgin can have it's GPL lincense and be happy like that, too.

The mix, binary blob + pidgin, has to be licensed under the GPL's terms, which obviously isn't possible given that the binary blob is a binary blob. This effectively makes the mix non-distributable. If people really wish to use that little monster, they have to obtain the binary blob independently from Pidgin.

This is the same situation that you find when the Linux kernel loads a binary-only module. And that has been discussed and documented in a lot of places, for example: http://kerneltrap.org/node/1735

Open source Skype client under development

Posted Nov 3, 2009 0:43 UTC (Tue) by SEMW (guest, #52697) [Link]

> If people really wish to use that little monster, they have to obtain the binary blob independently from Pidgin.

True. But modern package management surely makes that a fairly trivial detail for most people. When my Mother listens to a wma file in totem, she neither knows nor cares that the program itself came from the main Ubuntu repository wheras the necessary codec came from the Medibuntu repository. Similarly, there's surely no reason you couldn't have the binary blob, along with any necessary glue to let it be used as a pidgin plugin, distributed likewise (separately from pidgin, in distributions' non-free repositories)?

Open source Skype client under development

Posted Nov 3, 2009 13:48 UTC (Tue) by nye (guest, #51576) [Link]

>The mix, binary blob + pidgin, has to be licensed under the GPL's terms, which obviously isn't possible given that the binary blob is a binary blob

I don't agree with that reasoning.

You have three pieces of software:
1) Pidgin - GPL
2) Blob - developed independently so not a derivative work of any GPL software
3) Plugin - GPL (has to be since it is a derivative work of Pidgin)

Component 3, the plugin, can link against any libraries without making any of them a derivative work of each other (I hope we can agree on that part).

From here we can see trivially that it is legal for one to write and use the plugin, though perhaps not distribute it.

In order to distribute it, the plugin must then obviously be released under the GPL, so the question is whether software which links to proprietary libraries may be released under the GPL.

I agree that there is a reasonable reading of the GPL which would lead to the answer being 'no', but then that would appear to make vast amounts of GPL software potentially illegal to distribute for proprietary operating systems (anything requiring any components not shipped with the OS out of the box, and now that I think about it, most of Debian's 'contrib' repositories), which is not a position I've seen taken seriously.

Open source Skype client under development

Posted Nov 3, 2009 14:49 UTC (Tue) by farnz (guest, #17727) [Link]

And, indeed, as long as you're not distributing all three bits together, there's a probably legal way to distribute in parts:

  1. Pidgin, licensed purely under GPL, distributed by itself. Clearly legal.
  2. The blob, licensed under its own terms, distributed in accordance with those terms. Again, clearly legal.
  3. The plugin, licensed under GPL with an optional exception to allow linking with the blob, distributed by itself. This is the bit you'll need to speak to a Real Lawyer about.

The only question marks are whether the plugin ends up qualifying legally as a derived work of both the blob and of Pidgin, and whether the interaction between the blob's licence for derived works and the GPL is legally acceptable.

My non-lawyer's intuition is that if the blob's licence for derived works allows open source plugins, then the scenario I outline is clearly OK. Combining Pidgin with the plugin leaves you with a pure GPL work, which cannot then be distributed with the blob (but can be used with the blob - the GPL only talks about distribution). Combining the blob and the plugin gets you a GPL with exception for the blob work, which cannot be distributed with Pidgin (but again, can be used with Pidgin). So long as you don't combine all three before distribution, you can use them.

Open source Skype client under development

Posted Nov 3, 2009 23:39 UTC (Tue) by Wol (guest, #4433) [Link]

wrt (3) ...

Except, as the end user, you DON'T need the GPL's permission to link the plugin to the blob.

If the distributor leaves it to the end user to get hold of the blob by other means, then everything's legal, end of.

Cheers,
Wol

Open source Skype client under development

Posted Nov 4, 2009 8:19 UTC (Wed) by farnz (guest, #17727) [Link]

I wouldn't be quite so confident - we're into the legally grey territory that I don't think anyone wants to get clarified by a court (they'd affect most, if not all, of the pre-packaged software industry, and not just on Linux). Yes, the end-user is OK if the only licence causing issues is the GPL, but there are two question-marks to clarify, and either Pidgin's copyright owners or the blob's copyright owners could cause the plugin to be legally impossible to distribute:

  1. Does the GPL mean that the Pidgin plugin must be licensed under the GPL with no exceptions? If so, does this mean that the Pidgin plugin may not be distributed in a form where it's designed to link with a non-GPL-
  2. Does the binary blob's licence mean that the Pidgin plugin must be distributed under a non-GPL licence? If so, does it (whether intentionally or accidentally) prohibit the existence of the combination of Pidgin, the plugin and the blob? This could make it illegal (EULA-style) to use the plugin.

I'm not aware of precedent for either question, given that the user has accepted the blob's licence, and while I would be very surprised if the question was brought to court (by either party), I wouldn't go as far as "end of".

The reason I said that this affects the entire pre-packaged software industry is that whatever a court decides determines such questions as whether any form of EULA can be enforced. This is a rather big deal, and I doubt that anyone big wants to risk a court giving the "wrong" answer.

Open source Skype client under development

Posted Nov 4, 2009 2:03 UTC (Wed) by khc (subscriber, #45209) [Link]

As a pidgin developer (and I believe my opinion is shared by most, if not all, other pidgin developers), I believe that there cannot be a pidgin plugin that links to non-GPL compatible libraries and still claims to play within the rules of GPL. While some alternative reading of the GPL may make this legal, I certainly think that it violates the intent of the license.

Of course it's unlikely that anyone will sue though.

Open source Skype client under development

Posted Nov 3, 2009 15:37 UTC (Tue) by mem (subscriber, #517) [Link]

anything requiring any components not shipped with the OS out of the box, and now that I think about it, most of Debian's 'contrib' repositories

If you examine Debian's contrib section and its dependencies wrt to the non-free section, you'll note two things: there are very few actual dependencies and the ones that do exist are mostly in the form of "free program" depending on "non-free data". You'll also note that if free data becomes available, the free program in contrib is "promoted" to the main section. You'll also note that you don't find a sinle case of "code" depending on "code". And yes, there are a handful of debatable cases, for example the game Warsow, where (at least part of) its non-free data is quite likely code from the POV of the game engine.

The "ships with the OS" exception that you refer to has been subject of debate for years and if my memory serves well, it was part of the KDE/Qt case: KDE, being GPL, depended on non-free Qt, which wasn't part of the OS, even if some people tried to argue that it was. If you recall that situation, you'll remember that for a long time KDE wasn't included anywhere in Debian.

Open source Skype client under development

Posted Nov 5, 2009 15:48 UTC (Thu) by nye (guest, #51576) [Link]

I see your point. I was thinking that there were pieces of software in contrib that were capable of using non-free libraries to perform certain functions[0], but perhaps they're only allowed into contrib if they add functionality by calling an inarguably standalone executable that you may choose to install from elsewhere.

This has however led me to conclude that there is a good argument for a fair bit of software compiled for Windows being technically not distributable, depending on how generously the 'system libraries' exception is interpreted.

[0] Like hugin, say - although that's a patent issue rather than a copyright one, and I think that's actually in main because it doesn't *need* the problematic part. Okay so that was a bad example :P.

Open source Skype client under development

Posted Nov 2, 2009 17:58 UTC (Mon) by sourcejedi (guest, #45153) [Link]

I don't think so.

It has been said that using Ndiswrapper to load non-GPL windows drivers is kosher. The logic is that the windows driver is clearly not a derivative work of the linux kernel.

I think similar logic would apply in this case. I think it would still depend how the binary blob was licensed tho.

Open source Skype client under development

Posted Nov 2, 2009 21:19 UTC (Mon) by cry_regarder (subscriber, #50545) [Link]

Just say no.

Open source Skype client under development

Posted Nov 3, 2009 17:21 UTC (Tue) by jengelh (subscriber, #33263) [Link]

No. ;-)  

Open source Skype client under development

Posted Nov 2, 2009 20:21 UTC (Mon) by krake (subscriber, #55996) [Link]

> If so, one wonders why one would want to use the Skype UI at all
instead of integrating into Pidgin/Empathy/Kopete/etc.

I am pretty sure this is what they are aiming at.

Actually I would bet that somebody is working on something like Telepathy
integration already, probably at Nokia or contracted by Nokia (Maemo's IM
infrastructue is Telepatyh based, isn't it).

Open source Skype client under development

Posted Nov 2, 2009 17:25 UTC (Mon) by Kit (guest, #55925) [Link]

Sounds likely to be the case, but even so that's an improvement that should be lauded (not /as much/ as them open sourcing all of it, but it's still a step in the right direction).

Open source Skype client under development

Posted Nov 4, 2009 15:46 UTC (Wed) by MKesper (guest, #38539) [Link]

No.

The core stays absolutely proprietary and there are very good reasons why you should not use skype.

Open source Skype client under development

Posted Nov 2, 2009 18:13 UTC (Mon) by kirkengaard (subscriber, #15022) [Link]

Yeah. Two possibilities: the author is confusing UI and client, and means one or the other, while saying both. If they mean an open-source (as in F/OSS designed and licensed stem to stern) client, then it's possible that this will be a foothold on acceptance in "multicultural Linux-land." If it's just the UI, and requires a proprietary binary library of whatever sort, that's a problem.

Open source Skype client under development

Posted Nov 2, 2009 19:34 UTC (Mon) by tzafrir (subscriber, #11501) [Link]

Just the UI.

To quote his later comment:

> You are wrong. Skype is and has always been free software.
> Now we will open source the parts we _can_ open source.
> I think this is quite a good development.

Open source Skype client under development

Posted Nov 2, 2009 17:59 UTC (Mon) by armijn (subscriber, #3653) [Link]

Hm, I'd rather see better support for truly open protocols so people can move away from Skype.

Open source Skype client under development

Posted Nov 2, 2009 18:38 UTC (Mon) by clugstj (subscriber, #4020) [Link]

I don't really see that coming from Skype.

Open source Skype client under development

Posted Nov 3, 2009 0:19 UTC (Tue) by robert_s (subscriber, #42402) [Link]

"Having an open source UI will help us get adopted in the 'multicultural' land of Linux distributions"

No it won't. It will just fool a few people into thinking it's Free, but it won't be distributable by a non-commercial distribution, and it still won't work on non-x86.

Open source Skype client under development

Posted Nov 3, 2009 8:53 UTC (Tue) by jamesh (subscriber, #1159) [Link]

I wonder if eBay's plans to replace the peer to peer layer in Skype (due to the licensing spat with the founders) have anything to do with this?

Open source Skype client under development

Posted Nov 3, 2009 14:07 UTC (Tue) by PhilHannent (guest, #1241) [Link]

I would not think so. I would expect that they need to leverage more developers due to not being able to expand the team due to lack of money.

The current team can focus on a good libskype that works on more architectures and leave the UI development to submitted work.

The real question I would like to know is what license and what copyright assignments will there be?

Open source Skype client under development

Posted Nov 3, 2009 9:02 UTC (Tue) by PO8 (guest, #41661) [Link]

Even providing a binary protocol library blob would help me. Right now I can't use Skype for video because the V4L support in the current ancient Skype binary doesn't seem to talk to modern kernels' V4L. If we could stuff video and audio directly at a library (and vice versa), it would mean that we could track ALSA and V4L API changes, at least.

Open source Skype client under development

Posted Nov 3, 2009 15:33 UTC (Tue) by kjp (subscriber, #39639) [Link]

Yes, sadly I agree... anything is better than the stagnation currently there. It would also be nice if google would support linux with google video chat. The only thing I can use at the moment for cross platform video is VLC - great video, but only one way and I have to use the cell phone for audio :(

Open source Skype client under development

Posted Nov 3, 2009 15:51 UTC (Tue) by dps (subscriber, #5725) [Link]

At the moment I am suffering the problems trying to install skype on a 64 bit debian box. If skype's "open source" offering includes a closed source
32 bit library then that is a problem.

The next job is to build a 32 bit python package, including 32 bit python development. I want different standard locations and pyconfig.h contains constants like SIZEOF_SIZE_T which are depend on whether you are in the 32 or 64 bit universe.

Hint to skype: many webcams recommend 64 bit hardware. Would it really be hyper-impossible to provide a 64 bit binary?

Open source Skype client under development

Posted Nov 3, 2009 18:41 UTC (Tue) by sjj (guest, #2020) [Link]

Get the beta 2.1 version, it works at least with my usb webcam just fine, *and* it uses PulseAudio.

Legal troubles

Posted Nov 3, 2009 17:11 UTC (Tue) by erwbgy (subscriber, #4104) [Link]

It looks like EBay is having some legal troubles with its sale of Skype. The former owners are apparently suing over source code being shown to potential investors.

If this doesn't get resolved then Skype may have to switch to a different underlying technology. Let's hope it is SIP-based, but don't hold your breath.

If it does go ahead it will be interesting to see if the new owners will be more open to Skype being used from other clients and on other platforms.

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds