App stores are all the rage these days, with companies vying to release their software ahead of competitors. Not surprisingly, open source components are being used to speed development of these applications. But companies need to ensure their open source usage fits within the requirements of both the app stores and open source component licenses -- or risk removal from these outlets (and not just Apple's).
Companies using open source aren't complying with licenses
OpenLogic recently released results from a scan and license compliance assessment of 635 leading mobile applications. Of these, 66 applications -- just over 10 percent -- were found to contain components with an Apache or GPL/LGPL license. Among these 66 titles, more than 70 percent failed to comply with requirements of the open source license.
[ Get the latest insights and news on open source trends with InfoWorld's Technology: Open Source newsletter. Subscribe today! | Learn how to develop for HTML5 in InfoWorld's HTML5 Deep Dive PDF special report. ]
OpenLogic's analysis suggests that companies using open source components in their app store offerings are doing so without fully understanding license implications. That's dangerous: Ignoring license requirements means that your application could be pulled from the app store, thereby harming your competitive position and frustrating your users.
GPLv2 and Apple App Store license incompatibility is the pressing concern
Another issue to consider is that the terms of service at the most popular app store -- the Apple App Store -- is incompatible with the GPLv2 license. Companies considering using GPLv2 components in their App Store-destined application should think twice, unless the incompatibility is resolved. Until the GPLv2 and App Store incompatibility is remedied, I encourage you to seek legal counsel before using GPLv2 code in your App Store-destined applications.
What's the issue? The GPLv2 license doesn't allow someone to impose further restrictions on the code than outlined in the original licensor agreement. The GPLv2 also doesn't allow restrictions on usage. On the other hand, the Apple App Store terms of service prohibits usage as defined in the list of rules: If an activity does not appear on the list, a user is not allowed to employ the App Store application in that way.
In effect, in the context of a GPLv2 license, an Apple App Store item that abides by Apple's terms of service is deemed to be restricting usage and imposing further limitation on usage rights than were envisioned by the original licensor of the open source code.
Far from being an abstract example, this situation is precisely why the popular VLC media player was removed from the App Store.
Although Apple does not explicitly prevent applications from using GPLv2 licenses (the de facto prohibition comes from the conflict with Apple's terms), Microsoft made waves when it was revealed that the Windows Marketplace did not allow apps to use copyleft licenses such as GPLv2. Considering the situation that companies face when developing for the Apple App Store, you can understand why Microsoft thought it easier to disallow the use of GPLv2 altogether.