provides software and services that enable enterprises
Live Chat 1-888-673-6564
The Enterprise Open Source Blog
  • Home
  • Search
  • Contact Us
  • Products and Support
  • Services
  • Enterprise OSS Blog
  • Wazi Technical Blog
  • Resources Library
  • Cloud Services
  • Partners
  • Customers
  • Community
  • Company
  • Careers
  • News and Events

Subscribe by Email

Your email:

Most Popular Posts

  • Enterprise Apache Tomcat 7 Clustering - Designing an Efficient, Reliable and Productive Application Server Cluster
  • Open Source Virtual Whiteboards and Dimdim Review
  • An Enterprise Apache Tomcat Clustering Guide
  • Supporting CentOS In The Cloud With Windows Azure
  • VLC License Change: A lesson in perseverance
  • An In-Depth Look at Tomcat’s Clustering Mechanisms
  • Apache HTTP Server: New Features for Version 2.4
  • Why Closed Source is Better Than Open Source
  • Access Serial Ports through Ruby
  • JBoss AS7 Clustering Using mod_cluster and http 2.4 (Part 1)

Connect With Us!

Current Articles | RSS Feed RSS Feed

VLC License Change: A lesson in perseverance

Posted by Jilayne Lovejoy on Fri, Nov 30, 2012
  
Email This Email Article  
Tweet  
  

I suppose it's not shocking or newsworthy (to most people) when an open source project changes its license.  Some projects involve a small number of developers, making consensus around such changes easy; some projects have a contributor agreement whereby copyright is assigned to a single entity, averting the need for consensus.1  However, when an open source project has many contributors and no contributor agreement, then such a switch is indeed attention-grabbing.  Why?  Because to do so means obtaining the permission for the license change from each contributor—a task that is undoubtedly arduous and tedious, requiring an unswerving attention-to-detail and perseverance.  But it can be done, as so proved by the efforts of Jean-Baptiste Kempf in switching VLC from GPLv2 to LGPLv2.1.

VLCVLC is a cross-platform, multi-media player and streaming solution.  This popular open source project is maintained by VideoLAN, a non-profit organization dedicated to "developing and promoting free, open-source multimedia solutions".  In September 2011 at the VideoLAN Developer Days, key project developers approved the idea of changing the license.  The reasoning given was to better "match the evolution of the video industry and to spread the VLC engine as a multi-platform open-source multimedia engine and library."2  The license change was to begin with the VLC engine, libVLC, thus allowing applications based on libVLC to be under non-GPL licenses.  Later, key plugins and modules would also be re-licensed under LGPLv2.1.  The VLC media player itself would continue to be under GPL v2. 

The initial license change for libVLC was completed a few months later in December 2011.  This involved about 150 developers and 80,000 lines of code.  If a developer did not respond to the re-licensing request, that developer's code was rewritten.3  Then came the task of contacting the authors of the various plug-ins and modules, focusing on the playback modules first.  This was a bit more challenging, involving some 300 developers and 300,000 lines of code.  Kempf was kind enough to describe his methods for doing so in a few blog posts.4  He began with details of how to correctly compile the list of names and email addresses and the measures he took to appropriately narrow that list down to remove dupes, people who had already responded in the first relicensing phase, and so forth.  His response rate for the initial emails was only 25%, with 25% bouncing and 50% not responding.  This had to be frustrating but not entirely surprising.  To deal with the remaining 75%, Kempf employed a variety of methods that could be described as stalking or resolutely resourceful, depending on your perspective; social media, the telephone directory, whois lookups, friends or co-workers, and showing up where they work were all fair game. (In any case, Kempf may find himself soon employed as a private detective...)  Kempf also provides a summary of the outcome and pre-emptive analysis and answer to the question, "what if I made a mistake?"  And let's not forget all the attendant work in changing the licensing information and notices in each file and elsewhere in the project code and documentation.  Like I said, perseverance and attention-to-detail required. 

At this point, you may be thinking that all this work is a grand argument for having a contributor agreement that licenses or assigns each contributor's contribution to a central organization. However, France, where VideoLAN is organized, recognizes moral rights.  Moral rights include the right of attribution, integrity, disclosure and withdrawal, and are based on the rationale that there exists a personal and inalienable bond between authors and their work.  As such, moral rights cannot be assigned or waived.5 Legal considerations aside, a community may decide to not employ a contributor's agreement to retain the inevitable democratic process required for such a task as changing the project's license.

You might remember that VLC was the subject of a little snafu involving Apple's App Store and a conflict of terms between the GPL v2 and the iTunes Terms of Service not too long ago.6  Presumably as a result, the VLC media player was pulled from the Apple App Store and is still not available.  Thus, the question now is, will relicensing VLC under LGPL v2.1 change anything in this regard?  The LGPL licenses are considered to be a "lesser" version of the GPL licenses due to more lenient conditions around the requirement to apply the license to derivative works where an application links to the covered library.  Nonetheless, this does not impact the potential conflicting terms between LGPL and an end-user agreement (EULA) that includes restrictions upon the use of the software; to avoid such a conflict the EULA would need to contain a carve out: text allowing the terms of LGPL to prevail in the case of a conflict.  According to the FSF's interpretation, Apple's terms of service imposed restrictions on the end-users that violated Section 6 of the GPL v2, which states that "[y]ou may not impose any further restrictions on the recipients' exercise of the rights granted herein."7  Section 10 of the LGPL v2.1 has the exact same language, so I would presume that the same analysis would apply. Furthermore, there is still the issue of providing the source code—also required by LGPL when distributing a library in binary form—which has yet (in my view) to be truly addressed by the app store distribution model.

But I digress... license compliance and compatibility aside, the point of this post was to commend a valiant effort to change a license on a popular project.  I have more than a few times heard comments that such a task is insurmountable, impossible, impractical, or some other such adjective.  Regardless of whether you agree with the license change for VLC or the rationale behind the decision, you cannot deny that to take on the task of properly tracking down all the developers is no small feat and deserves credit and respect.  Thanks for the hard work, Jean-Baptiste!  And thanks for sharing your process and success.

 


1 For more on copyright ownership in software, see Johnny, Omar; Miller, Marc; Webbink, Mark (2010) 'Copyright in Open Source Software – Understanding the Boundaries', IFOSS L. Rev., 2(1), pp 13 – 38.
2 http://www.videolan.org/press/lgpl.html
3 http://www.videolan.org/press/lgpl-libvlc.html
4 http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project
5 See Cyrill P. Rigamonti, Deconstructing Moral Rights, 47 Harv. Int'l L.J. 353 (2006). Also see http://ifosslawbook.org/france/ for an overview of intellectual property protection in France as applied to software. 
6 http://arstechnica.com/apple/2010/11/the-vlc-ios-license-dispute-and-how-it-could-spread-to-android/
7 See http://www.fsf.org/blogs/licensing/more-about-the-app-store-gpl-enforcement for a more thorough explanation. 

VideoLAN, VLC, and VLC media player are trademarks internationally registered by the VideoLAN non-profit organization.

 

Follow @jilaynelovejoy
View Jilayne  Lovejoy's LinkedIn profileView Jilayne Lovejoy's profile

Follow @openlogic
Follow @OSCloudServices

This work is licensed under a Creative Commons Attribution 3.0 Unported License
Creative Commons License.
Tags: Licenses, Open Source Software

Comments

Currently, there are no comments. Be the first to post one!
Post Comment
Name
 *
Email
 *
Website (optional)
Comment
 *

Allowed tags: <a> link, <b> bold, <i> italics

Loading...
Error sending email
Email sent successfully

Email article
Email To : 
Your name : 
Message : (maximum 200 characters)

Enterprise OSS Blog Policy

If you read a post on The Enterprise OSS Blog, please leave a comment. Let us know what you think, even if it's just a few words. Comments do not require approval, but they are moderated.OpenLogic reserves the right to remove any comments it deems inappropriate.

 

click-to-chat-with-a-live-open-source-expert

get-a-quote-on-support

download-the-support-evaluation-kit

Browse by Tag

  • 2013 (2)
  • Agile (1)
  • Apache (2)
  • apache tomcat (1)
  • AS 7 (1)
  • as7 (1)
  • Auditing (5)
  • Azure (2)
  • Budget (1)
  • BusyBox (1)
  • CentOS (3)
  • Closed Source Software (1)
  • cloud (4)
  • clustering (1)
  • CMS (1)
  • Code Scanning (1)
  • commercial distribution (1)
  • Community (4)
  • compliance (40)
  • C-Suite (1)
  • Database (1)
  • developers (2)
  • DevOps (15)
  • diploma (1)
  • Drupal (1)
  • enterprise software (2)
  • foss (5)
  • Gitbhub (1)
  • GNU-Bash (1)
  • Governance (36)
  • guide (1)
  • Hadoop (2)
  • HBase (2)
  • http 2.4 (1)
  • httpd 2.4 (1)
  • Java (1)
  • javascript (1)
  • jboss (3)
  • JBoss Cluster (1)
  • Joomla (1)
  • Legal (21)
  • Legal & Compliance (62)
  • Legal and Compliance (2)
  • license compliance (1)
  • Licenses (12)
  • Linux (4)
  • lisp code (1)
  • martin fowler (1)
  • Mobile (3)
  • mod_cluster (2)
  • MySQL (1)
  • Neal Ford (1)
  • open source (19)
  • open source compliance (1)
  • open source components (1)
  • open source events (1)
  • Open Source Governance (2)
  • open source legal issues (1)
  • Open Source Licensing (3)
  • Open Source Management (38)
  • Open Source Policy (3)
  • open source software (15)
  • Open Source Software Adoption (4)
  • open source software policy (1)
  • Open Source Training (1)
  • Open Source Trends (337)
  • Open Source vs. Commercial Software (3)
  • OSS (5)
  • OSS Packages (2)
  • PaaS (1)
  • paredit (1)
  • picketlink (1)
  • Policy (4)
  • PostgreSQL (1)
  • Presentations (1)
  • Programming (2)
  • red hat (1)
  • RHEL (1)
  • Ruby (1)
  • Scanning (27)
  • Scanning & Governance (12)
  • Scanning & Provisioning (30)
  • Security (13)
  • Shibboleth (1)
  • software compliance (1)
  • Software Development (2)
  • Software Development Lifecycle (7)
  • software infrastructure (1)
  • Solr (1)
  • struts (1)
  • Support (48)
  • Support & Services (2)
  • SUSE (1)
  • Technical Governance (1)
  • The Cloud (35)
  • The C-Suite (2)
  • tomcat (4)
  • Training (10)
  • Ubuntu (1)
  • Uncategorized (69)
  • Windows (1)
  • Windows Azure (1)
  • Wordpress (1)
  • Zookeeper (1)
Home | Search | Contact Us | Products and Support | Services | Enterprise OSS Blog | Wazi Technical Blog | Resources Library | Cloud Services | Partners | Customers | Community | Company | Careers | News and Events
Products
OpenLogic Exchange (OLEX)
License Compliance Module
OSS Discovery
OSS Deep Discovery
OpenUpdate
Services
Open Source Support
CentOS Support
Scanning & Compliance
Open Source Training
Professional Services
Solutions
Support & Indemnification
Open Source Governance
Open Source Scanning
Open Source Provisioning
Consulting & Training
Contact Us
1-888-673-6564


© 2013 OpenLogic, Inc. All rights reserved.
Site Map  |  Privacy Policy