We're implementing a Developer Certificate of Origin (DCO)

Those of us working on Radicle care about sustaining open source - the code as well as the community. Part of what enables this is supporting the legal rights of contributors. That’s why we take intellectual property seriously, even if it can feel like additional overhead to your contribution process. We’ve made an effort to make our licenses as clear and straightforward as possible, so Radicle contributors don’t have to decipher unique legal jargon in order to understand what their rights are or what rights they are giving away.

An open source project can only stay “free” if a proper license has been applied to it - and if it can trust that its contributors have the right to contribute under such a license. A project is only as strong as the integrity of its contributions. This is why, starting with our Beta launch, we will have all contributors to Radicle sign off each contribution (usually this means each commit) with git commit -s "NAME SURNAME <email>", which confirms their affirmation of our Developer Certificate of Origin (“DCO”). Our DCO, pasted below, includes some clarification language alongside the Linux Foundation’s standard DCO; it is a short self-certification where the developer acknowledges their right to contribute this commit and a simple way for developers to grant Radicle the right to redistribute this contribution a part of the project, in accordance with our GPLv3+Radicle Linking Exception (more on our licensing strategy and its evolution here).

We want to make contributing to open source accessible, transparent, and as straightforward as possible - and there is a legal side to making this happen. For now, commit sign offs will be the easiest and cleanest way for us to preserve the GPLv3+Radicle Linking Exception license, as described in our protocol for implementing the DCO below. There is a long road ahead of us as we rethink how we collaborate over code and enabling better ways of establishing identity and intellectual property rights — especially in the context of peer-to-peer networks —will continue to be a part of the conversation.

The Developer Certificate of Origin

By making your contribution, you are (1) making the declaration set
out in the Linux Foundation’s Developer Certificate of Origin
version 1.1 as set out below, in which the “open source licence indicated
in the file” is GPLv3 with the Radicle Linking Exception, and (2) granting the
additional permission referred to in the Radicle Linking Exception to
downstream recipients of current and future versions of [insert Radicle
program or library] released by the Radicle Foundation.

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer’s Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c ) The contribution was provided directly to me by some other
person who certified (a), (b) or (c ) and I have not modified

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.

Our protocol for implementing the DCO

  • All contributors to radicle-dev must sign off each contribution (usually this means each commit) with git commit -s "NAME SURNAME <email>".
  • Each commit sign off will be reviewed by the Radicle maintainer (by taking a look at their email address and Github profile) before merging the contribution.
  • All contributions from team members of Monadic while they were/are team members do not require a sign off, as they are contributing “on behalf” of Monadic GmbH, which is focused on supporting the development of Radicle.
  • Once an individual is no longer a team member of Monadic, they must sign off each contribution (see above).