2

Say a vendor has both a community version of their software and a more proprietary one.

How can this be done in licensing terms?

Can code be ported either way?

What are the appropriate practises if any?

curiousdannii
  • 7,768
  • 1
  • 27
  • 51
James P.
  • 375
  • 1
  • 8

1 Answers1

2

Dual-licensing is easily enough done, because licences do not inhere in code; they apply to the conveyance of code, so different conveyances may be done under different terms. Wikipedia has a fairly good entry on it.

Can code be ported either way? As curiousdanii has noted in response to your other, similar question, it depends on the "open source" licence used; in addition, it depends on who owns the copyright.

For movement from free to proprietary code, this is broadly impermissible under "strong copyleft" licences such as the GPL, and permissible under weaker free licences such as BSD.

For movement from proprietary to free code, this is entirely at the whim of the copyright holder, so projects that wish to have a dual-licensed model may well require copyright assignment. As this writer noted,

MySQL had a policy that any code contributed to the project required that the author assign the copyright to to the MySQL corporation. This gave them full control over the application, including the ability to publish it under different licenses.

I'm not sure what "appropriate practices" you might be referring to, so I can't answer the last part of your question.

MadHatter
  • 48,547
  • 4
  • 122
  • 166
  • Appropriate practises in the sense of what is acceptable. So in the case of copyleft licences apparently aim to keep code and derivative works open while preventing that all or parts are used in anything proprietary. – James P. Jun 09 '16 at 14:22
  • So, to sum things up, an initial piece of software can be diffused under two licences but they should evolve separately. No code should be copied from a project under strong copyleft, licenses like BSD make integration into proprietary code possible and proprietary code can be copied to strong copyleft or BSD if the copyright holder decides to do so. Is this correct? – James P. Jun 09 '16 at 14:26
  • 1
    No code should go from strong copyleft to proprietary except when moved by the copyright holder. Other than that, yes. – MadHatter Jun 09 '16 at 14:44
  • How is that exception possible? Unless mistaken, the intellectual property would be spread out among contributors. However, is the initiator of a project considered as being a "copyright" holder? – James P. Jun 09 '16 at 15:42
  • 1
    It depends on whether the project insists on copyright assignments. If it does, then the project is the copyright holder, and can move code from GPL to proprietary. If it doesn't, then any contributor can reuse their own contributions in some other proprietary code; but the project can't. That's why MySQL, amongst others, insists on copyright assignments (though it's not the only reason why a project might so insist). – MadHatter Jun 09 '16 at 15:48
  • Ok, posted a question along these lines. http://opensource.stackexchange.com/questions/3979/under-what-conditions-can-someone-dual-licence-existing-works – James P. Jun 09 '16 at 15:57
  • 1
    I don't feel I can answer the other one, as I'd merely be reiterating what I've said here. Hopefully someone else will come along and clarify matters. But if you think we're done here, could you please accept the answer? – MadHatter Jun 09 '16 at 16:13
  • I don't know too much about MySQL's past, but MySQL currently requires contributors to sign an agreement which assigns "joint ownership" of copyright to Oracle. The FAQ states "the OCA only asks you to share your rights. Unlike some contribution agreements that require you to transfer copyrights to another organization, the OCA does not take away your rights to your contributed intellectual property. …" – 3D1T0R Jun 08 '18 at 17:51