{"id":632,"date":"2018-05-08T07:59:14","date_gmt":"2018-05-08T05:59:14","guid":{"rendered":"https:\/\/blogs.gentoo.org\/mgorny\/?p=632"},"modified":"2018-08-13T18:00:58","modified_gmt":"2018-08-13T16:00:58","slug":"copyright-101-for-gentoo-contributors","status":"publish","type":"post","link":"https:\/\/blogs.gentoo.org\/mgorny\/2018\/05\/08\/copyright-101-for-gentoo-contributors\/","title":{"rendered":"Copyright 101 for Gentoo contributors"},"content":{"rendered":"<p>While the\u00a0work on\u00a0new Gentoo copyright policy is still in\u00a0progress, I\u00a0think it would be reasonable to\u00a0write a\u00a0short article on\u00a0copyright in\u00a0general, for the\u00a0benefit of\u00a0Gentoo developers and\u00a0contributors (proxied maintainers, in\u00a0particular).  There are some common misconceptions regarding copyright, and\u00a0I would like to specifically focus on\u00a0correcting them.  Hopefully, this will reduce the risk of users submitting ebuilds and\u00a0other files in\u00a0violation of\u00a0copyrights of\u00a0other parties.<\/p>\n<p><!--more--><\/p>\n<p>First of\u00a0all, I&#8217;d like to point out that <abbr title=\"I Am Not A Lawyer\">IANAL<\/abbr>.  The\u00a0following information is based on\u00a0what I&#8217;ve gathered from various sources over the\u00a0years.  Some or\u00a0all of\u00a0it may be incorrect.  I take no responsibility for that.  When in\u00a0doubt, please contact a\u00a0lawyer.<\/p>\n<p>Secondly, the\u00a0copyright laws vary from\u00a0country to\u00a0country.  In\u00a0particular, I have no clue how they work across two\u00a0countries with incompatible laws.  I attempt to provide a\u00a0baseline that should work both for US and\u00a0EU, i.e. \u2018stay on\u00a0the\u00a0safe side\u2019.  However, there is no guarantee that it will work everywhere.<\/p>\n<p>Thirdly, you might argue that a\u00a0particular case would not stand a\u00a0chance in\u00a0court.  However, my goal here is to avoid the\u00a0court in\u00a0the\u00a0first place.<\/p>\n<p>The\u00a0guidelines follow.  While I&#8217;m referring to \u2018code\u2019 below, the\u00a0same rules to apply to any copyrightable material.<\/p>\n<ol>\n<li>Lack of\u00a0clear copyright notice <strong>does not<\/strong> imply lack of\u00a0copyright.  When there is no\u00a0license declaration clearly applicable to the\u00a0file in\u00a0question, it is implicitly <a rel=\"external\" href=\"https:\/\/gitweb.gentoo.org\/repo\/gentoo.git\/tree\/licenses\/all-rights-reserved\">all-rights-reserved<\/a>.  In\u00a0other words, you <strong>can&#8217;t<\/strong> reuse that code in\u00a0your project.  You need to contact the\u00a0copyright holder and\u00a0ask him to give you rights to do so (i.e. add a\u00a0permissive license).<\/li>\n<li>Copyright still holds even if\u00a0the\u00a0author did not list his name, made it anonymously or\u00a0used a\u00a0fake name.  If it&#8217;s covered by\u00a0an\u00a0open source license, you can use it preserving the\u00a0original copyright notice.  If not, you need to reliably determine who the\u00a0real copyright holder is.<\/li>\n<li>\u2018Public domain\u2019 dedication <strong>is not<\/strong> recognized globally (e.g. in\u00a0the\u00a0EU copyright is irrevocable).  If\u00a0you wish to release your work with no\u00a0restrictions, please use an\u00a0equivalent globally recognized license, e.g. <a rel=\"external\" href=\"https:\/\/creativecommons.org\/share-your-work\/public-domain\/cc0\/\">CC0<\/a>.  If\u00a0you wish to include a\u00a0\u2018public domain\u2019 code in\u00a0your project, please consider contacting its author to use a\u00a0safer license option instead.<\/li>\n<li>Copyrights and\u00a0licenses <strong>do not<\/strong> merge when combining code.  Instead, each code fragment retains its original copyright.  When you include code with different copyright, you should include the\u00a0original copyright notice.  If you modify such code fragment, you only hold copyright (and\u00a0can enforce your own license) to your own changes.<\/li>\n<li>Copyright is only applicable to <em>original work<\/em>.  It is generally agreed that e.g.\u00a0a\u00a0typo fix is not\u00a0copyrightable (i.e. you can&#8217;t pursue copyright for doing that).  However, with anything more complex than that the\u00a0distinction is rather blurry.<\/li>\n<li>When a\u00a0project uses code fragments with multiple different licenses, you need to conform to <strong>all<\/strong> of them.<\/li>\n<li>When a\u00a0project specifies that you can choose between multiple licenses (e.g. BSD\/GPL dual-licensing, \u2018GPL-2 or newer\u2019), you need to conform only to the\u00a0terms of one of\u00a0the\u00a0specified licenses.  However, in\u00a0the\u00a0context of a\u00a0single use, you need to conform to <strong>all<\/strong> terms of\u00a0the\u00a0chosen license.  You <strong>can&#8217;t<\/strong> freely combine incompatible terms of\u00a0multiple licenses.<\/li>\n<li>Not all licenses can be combined within a\u00a0single project.  Before including code using a\u00a0different license, please research <a rel=\"external\" href=\"https:\/\/en.wikipedia.org\/wiki\/License_compatibility\">license compatibility<\/a>.  Most of those rules are asymmetrical.  For example:\n<ul>\n<li>you <strong>can&#8217;t<\/strong> include GPL code in\u00a0BSD-licensed project (since GPL forbids creating derivative work with less restrictive licensing);<\/li>\n<li>but you <strong>can<\/strong> include BSD-licensed code in\u00a0GPL project (since BSD does not forbid using more restrictive license in\u00a0derivative works);<\/li>\n<li>also, you <strong>can<\/strong> include BSD\/GPL dual-licensed code in\u00a0BSD-licensed project (since dual-licensing allows you to choose either of the\u00a0licenses).<\/li>\n<\/ul>\n<\/li>\n<li>Relicensing a\u00a0whole project can happen <strong>only<\/strong> if you obtain explicit permission from <strong>all<\/strong> people holding copyright to it.  Otherwise, you can only relicense those fragments to which you had obtained permission (provided that the\u00a0new license is compatible with the\u00a0remaining licenses).<\/li>\n<li>Relicensing a\u00a0project <strong>does not<\/strong> apply retroactively.  The\u00a0previous license still applies to the\u00a0revisions of\u00a0the\u00a0project prior to the\u00a0license change.  However, this applies only to factual license changes.  For example, if a\u00a0MIT-licensed project included LGPL code snippet that lacked appropriate copyright notice (and\u00a0added the\u00a0necessary notice afterwards), you can&#8217;t use the\u00a0snippet under (mistakenly attributed) MIT license.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>While the\u00a0work on\u00a0new Gentoo copyright policy is still in\u00a0progress, I\u00a0think it would be reasonable to\u00a0write a\u00a0short article on\u00a0copyright in\u00a0general, for the\u00a0benefit of\u00a0Gentoo developers and\u00a0contributors (proxied maintainers, in\u00a0particular). There are some common misconceptions regarding copyright, and\u00a0I would like to specifically focus on\u00a0correcting them. Hopefully, this will reduce the risk of users submitting ebuilds and\u00a0other files in\u00a0violation &hellip; <a href=\"https:\/\/blogs.gentoo.org\/mgorny\/2018\/05\/08\/copyright-101-for-gentoo-contributors\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Copyright 101 for Gentoo contributors&#8221;<\/span><\/a><\/p>\n","protected":false},"author":137,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[12],"tags":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/632"}],"collection":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/users\/137"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/comments?post=632"}],"version-history":[{"count":17,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/632\/revisions"}],"predecessor-version":[{"id":649,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/632\/revisions\/649"}],"wp:attachment":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/media?parent=632"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/categories?post=632"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/tags?post=632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}