On Mon, Nov 28, 2011 at 8:27 PM, Thomas
        Bruederli 
<thomas@roundcube.net>
        wrote:
        
          Hi folks,
          
          Some time ago we already had a discussion about possible
          license
          changes. See http://lists.roundcube.net/mail-archive/dev/2010-01/0000022.html
          to refresh your memory.
          
          Now, almost two years later we came to the conclusion that
          it's time to act.
          But let me describe our thoughts a bit more:
          
          Current Situation
          =================
          
          Roundcube has inherited and built upon code from a variety of
          projects, allowing it to grow quickly to the solution we all
          love
          today. In doing so, it has effectively also inherited its
          licensing
          policy from projects which were not handling these issues as
          carefully
          as one might have wished.
          
          These projects have often done a "licensed under the GNU
          General
          Public License (GPL)" without an explicit version. Sometimes
          this
          statement was accompanied with a link to a web page, most
          importantly
          http://www.gnu.org/licenses/gpl.
          This link was pointing at version 2
          of the GPL, but it is the link that always leads to the latest
          version, so right now is pointing to GPL version 3. And so did
          Roundcube itself.
          
          This, and the provisions in GPLv2 which say that you may at
          your
          option choose a later version if there is no explicit version
          mentioned means that right now Roundcube is "GPL v2 or v3,
          either may
          be binding for you depending on how you got it" and would
          *not* allow
          proprietary extensions and modules and may or may not allow
          proprietary skins, depending on your interpretation.
          
          This is clearly not a perfect situation and it doesn't reflect
          the
          consensus within the Roundcube community (especially after the
          last
          licensing discussion) that proprietary modules (plugins)
          should be
          allowed, as should be proprietary skins. We meanwhile have
          specified
          Version 2 in our source but some links still point to the
          above
          mentioned URL which now shows Version 3 of the GPL.
          
          So it would make a lot of sense to clarify this explicitly.
          
          At the same time, the possibility of Roundcube being under
          GPLv2
          blocks some innovation we would like to do for future
          versions, such
          as for example inline ODF support through WebODF, which is
          licensed
          under the GNU Affero General Public License (AGPL) Version 3.
          
          Background information for the interested
          =========================================
          
          * GNU General Public License (GPL) Version 2:
           https://www.gnu.org/licenses/gpl-2.0.html
          
          * GNU General Public License (GPL) Version 3:
           https://www.gnu.org/licenses/gpl-3.0.html
          
          * A Quick Guide to GPLv3:
           https://www.gnu.org/licenses/quick-guide-gplv3.html
          
          * GNU Affero General Public License (AGPL) Version 3:
           https://www.gnu.org/licenses/agpl-3.0.html
          
          * Frequently Asked Questions about the GNU Licenses:
           https://www.gnu.org/licenses/gpl-faq.html
          
          
          Proposed license clarification
          ==============================
          
          Because of the incorporated numerous other components, the
          only
          options for licenses
          are in the GNU GPL family, namely GNU GPLv2, GNU GPLv3, GNU
          AGPLv3.
          
          In order to become license compatible with some of the
          technologies we
          would like to be able to use in order to improve Roundcube, we
          should
          at the very least choose GNU GPL version 3.
          
          We could also choose GNU AGPLv3, which would provide more
          rights to
          the users of Roundcube. It would mean that all users have the
          right to
          obtain the code of the instance that is providing their
          service (minus
          the additional modules, of course).
          
          It would also ensure that modifications on the basic Roundcube
          codebase will have to be made available as soon as the are
          being used
          to provide services over the internet, not just when they are
          distributed in other ways.
          
          This is the first choice we have.
          
          Personally I'm okay with either, but as the recent discussion
          showed
          us, there are some arguments against the AGPL option. I would,
          however, in any case suggest we explicitly leave the "or any
          later
          version" default in, so future license updates won't require
          us to
          look at this again.
          
          Secondly, if we want to allow proprietary modules and skins,
          which has
          turned out to be a major concern of our "users", we should add
          the
          explicit permission to create modules under any license,
          including a
          proprietary one, which can be done through the following
          exception to
          GPLv3 or AGPLv3:
          
              This file forms part of the Roundcube Platform for which
          the
              following exception is added: Plug-ins and Skins which
          merely
              make function calls to the Roundcube Platform, and for
          that
              purpose include it by reference shall not be considered
              modifications of the Platform.
          
              If you wish to use this file in another project or create
          a
              modified version that will not be part of the Roundcube
          Platform,
              you may remove the exception above and use this source
          code under
              the original version of the license.
        
        
        
        I think this is incorrect and therefor I need some
          clarification: how is this possible with either license?
        
        
        Right now, this is not even possible for Wordpress and
          themes, is it? If I buy a Wordpress plugin or theme, I am
          allowed to put the source code online. And Wordpress is "just"
          GPL (as is RoundCube currently). With the AGPL, I'd have to
          provide the source to a RoundCube plugin because people can
          use it through (!) a browser.
        
        
        I don't know how you plan to have a legally binding license
          and then have home-grown exceptions.
        
        
        You should reach out to the FSF, as did Wordpress:
        
        
        
        TL;DR: PHP files in themes must be GPL,
          CSS/Images/JavaScript must not be GPL (but can be of course).
          I'm guessing plugins are 100% GPL.
        
        
        While the GPL allows someone who hosts RoundCube to make
          modifications and not share them, the AGPL does not allow this
          under any circumstances because people can 'connect' to
          RoundCube via a browser. The AGPL tries to close this
          so-called loophole. I'm not even sure if for example images
          and css from a RoundCube skin could be licensed anything else
          than AGPL.
        
        
        Not that I am not a fan of open source, but I think there
          should be limits as in what RoundCube as a project imposes on
          the people who use it. I release all my open source with BSD
          and MIT usually which is a (in layman's terms) "do as you
          like"-license.
        
        
        Sharing and contributing is the high road, but not
          everything can be shared and the reasons should not be our
          concern.
        
        
        I think the AGPL makes it harder for commercial entities to
          use RoundCube. These entities include plugin developers, web
          hosters, theme designers, etc..
         
        Till
        
        
        
          
          The first paragraph provides the permission.
          
          The second paragraph allows re-use of Roundcube's code in
          other
          projects without the additional permission. Otherwise it would
          be too
          easy to circumvent the license and re-use may be limited by
          the
          licenses of the projects that wish to re-use code.
          
          The Way forward
          ===============
          
          Because the Copyright in Roundcube is not consolidated, making
          these
          updates requires the agreement of all contributors to
          Roundcube.
          
          So if you have in the past contributed to Roundcube, we would
          very
          much like to ask you for your explicit agreement with this
          path
          forward and your preference with regards AGPLv3 / GPLv3, and
          whether
          you would exclude one or the other, and for which reasons.
          
          We believe this primarily represents a clarification and an
          adjustment
          to what we practiced over the past years, and we hope that you
          will
          also see it that way.
          
          But of course we cannot force anyone to agree, so for those
          who prefer
          to have their code removed from Roundcube rather than agree to
          the
          update, please let us know.
          
          Timing
          ======
          
          This will not affect the 0.7 release, which will still take
          place
          under the somewhat fuzzy licensing situation, but we'll want
          to apply
          this to HEAD so we can make sure all code is properly updated
          and
          conflicting code replaced before the 0.8 release.
          
          
          Please let us know, what you think about this proposal.
          
          Best regards,
          Thomas