Relax - Microsoft has not banned open source from Marketplace

This recent Slashdot article is sure to cause some hubbub. As usual (when it comes to anything Microsoft), it's completely inaccurate. The only licenses that have been banned are GPLv3 and its derivatives and equivalents, including LGPLv3, and Affero GPLv3. Why these particular licenses, and why specifically version 3?

Because version 3 of the GPL family of licenses includes what has been dubbed the "anti-Tivoization" clause. Tivoization, from the name TiVo, is what that company did to its hardware in order to prevent unauthorized firmware modifications. In essence, they released the complete source code to the firmware that runs on TiVo boxes, but compiling such source code does not yield binaries that can run on the TiVo. That is because the authorized, official binary code is modified by TiVo to include a digital signature that must be accepted by the hardware before said code is allowed to run. GPLv3 includes a clause that prohibits this behavior.

Microsoft must therefore ban licenses with an "anti-Tivoization" clause because both the Xbox and Windows Phone 7 hardware perform "Tivoization". They only accept code that has been signed by Microsoft (unless the hardware is developer unlocked).

So don't fret. All weak copyleft licenses and very liberal licenses such as MIT/X11 are perfectly fine for use in Xbox and WP7 code.

EDIT: Upon closer reading of the App Hub agreement legalese, it looks like all copyleft licenses are banned - not just GPLv3, but all versions of the GPL, as well as MPL and even Microsoft's own Ms-RL. However, other, permissive free software licenses, such as BSD, MIT/X11, Apache, and Microsoft's Ms-PL can indeed be used in WP7 and Xbox software.

comments powered by Disqus