Archive for July, 2009

No GPL software in Windows Mobile Marketplace?

Tuesday, July 21st, 2009

Symbol suggesting GPL v3 is bannedI was just looking at the details surrounding the upcomming app store for the Windows Mobile platform (which seem to change almost weekly). It really seems Microsoft are going out of their way to make it unfriendly for developers making software that they want to publish for free, or as open source.

Not only will free applications require a $99 USD certification / code signing fee (counting towards the 5 free signings you get as a one time bonus until the end of this year) but Microsoft also appears to have restrictions on which licenses you can choose to release your products under.

Section 7 of the Windows Marketplace Application Provider Agreement states that you represent and warrant to Microsoft that:

Your Application does not include software, documentation, or other materials that , in whole or in part, are governed by or subject to an Excluded License, or that would otherwise cause the Application to be subject to the terms of an Excluded License

What’s an Excluded License you may ask? Well it’s defined earlier in the same document as:

“Excluded License” means any license requiring, as a condition of use, modification and/or distribution of the software subject to the license, that the software or other software combined and/or distributed with it be (a) disclosed or distributed in source code form; (b) licensed for the purpose of making derivative works; or (c) redistributable at no charge. Excluded Licenses include, but are not limited to the GPLv3 Licenses. For the purpose of this definition, “GPLv3 Licenses” means the GNU General Public License version 3, the GNU Affero General Public License version 3, the GNU Lesser General Public License version 3, and any equivalents to the foregoing

Putting aside any potential issues or feelings surrounding GPL v3 for the moment, don’t the first three conditions seem overly broad and vague to you?

I’m no lawyer, but that seems to be an OR between the clauses a, b and c. The section also appears to apply not only to any potential modifications of your software, but also the “software subject to the license” itself. The more times I read this section the more interpretations I can make as to its intent and meaning.

In comparision a similiar clause within Apple’s iPhone SDK Agreement is significantly more clearer in intent and purpose:

If Your Application includes any FOSS [free and open-source software], You agree to comply with all applicable FOSS licensing terms. You also agree not to use any FOSS in the development of Your Application in such a way that would cause the non-FOSS portions of the SDK to be subject to any FOSS licensing terms or obligations.

That to me seems like it’s much more easier to interpret and understand as a developer.

As an example, would the Microsoft agreement allow me to publish an application via the Windows Marketplace which I also want to release in source code form via my blog (under a license that requires source code to any modifications to be provided)? As some one who contributes source code to the community, I would be interested in knowing the answer.

What’s up Microsoft?