Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: "Bradley M. Kuhn via Gdb" <gdb@sourceware.org>
To: GDB Development <gdb@sourceware.org>
Cc: Mark Wielaard <mark@klomp.org>,
	Andrew Burgess <aburgess@redhat.com>,
	Luis Machado <luis.machado@arm.com>, Tom Tromey <tom@tromey.com>,
	Guinevere Larsen <blarsen@redhat.com>,
	Andrew Pinski <pinskia@gmail.com>, Eli Zaretskii <eliz@gnu.org>,
	zoe@fsf.org, ksiewicz@fsf.org
Subject: Re: DCO
Date: Mon, 27 Jan 2025 07:55:42 -0800	[thread overview]
Message-ID: <Z5esfoH+wMxmDyRP@ebb.org> (raw)
In-Reply-To: <87jzatwwl0.fsf@oldenburg3.str.redhat.com>

Hey GDB folks,

I'm not on this list, but I'm a big fan of GDB and have been doing work
adjacent to and in support of GDB and all the toolchain communities for some
time.  I read with interest this DCO thread you've been having; I'm grateful
that you cc'ed me, as I do have some experience and knowledge about the
situation that I think might be helpful.  In the past, I have also been
involved in these discussions from inside the FSF — but I haven't been
affiliated with the FSF since 2019.  As such, I can give perspective from
having had different vantage points at different times.

First of all, the DCO is a rather neat trick of legal hackery, and it works
ok for Linux but the reason it works well in the Linux project is somewhat
unique to Linux.  The most important thing I want to draw the GDB community's
attention to is that the DCO is specifically designed to shift the blame and
burden for improperly licensed code ending up in the codebase *onto the
individual developers personally*.  This works great for companies, as it
limits their liability.  In practice, it's rare anyone gets sued, so Linux
folks are ok with the legal hack.  But I regularly urge developers to think
carefully if they really want to take on such risk themselves.

My position is nuanced: copyright assignment to a trusted non-profit is a
really good tool for defending users' rights, but it has to be weighed
against the convenience and ease of contribution, and that calculation is
very hard to do.  One of the huge benefits of the FSF's copyright
assignment/disclaimer process is that it forces every developer to have a
really important conversation with their employer that they often don't
bother to have:

   (a) is it ok that I'm contributing this upstream?, and

   (b) what is the proper copyright holder arrangement for such
       contributions? , and

   (c) do we (employer/employee) all really agree about (b)?

Those are painful conversations, but it's a good thing if they happen as
early as possible.  Also, those conversations should occur *even if* a
developer isn't assigning copyright to a third party.  By default, absent a
separate agreement, an employee's copyrights will be assigned to their
employer anyway via "Work for Hire" (as it's called in the USA, and there are
similar doctrines around the world).

Those are a few reasons why my usual recommendation is that a project adapt
the Linux DCO text for the needs of a their specific project (i.e., one size
does not always fit all).  For example, the Samba Project decided to require
in their Certificate that contributors explicitly license under a v3-group
license.  Samba did this for for various reasons — including that it protects
the project and the developers better than the Linux DCO:
  https://gitlab.com/samba-team/devel/samba/-/blob/master/README.contributing

Most importantly, my concern is that individual developers who don't want to
assign to a charity (e.g., FSF or SFC) *push back* on their employers and
instead demand employment contracts that let employees personally keep their
own copyrights in the Free Software projects they contribute to.

Ultimately, individuals make up Free Software projects, and I support the
idea that a project have individual voices as part of its copyright holdings
(i.e., I am sympathetic to those who don't want a projects' copyright
assigned 100% to any organization, even if it's a charity.)  But, I don't
think an oligarchy of copyright holders — whereby the copyright is held
mostly by for-profit employers — serves Free Software's community-oriented,
charitable, and individual-developer-and-user-minded goals.  We have observed
that application of the DCO method of contribution (without a more
comprehensive plan) often leads to that oligarchical outcome over time.

I'm glad to discuss these topics more on this thread, offer my time to help
GDB on how to implement a DCO-like solution effectively, and I also hope to
reprise the licensing BoF at Cauldron this year to discuss these issues more.
(We spent much of the time in the 2024 Licensing BoF discussing this very
issue.)

Also, IANAL, TINLA, and I also, as mentioned, I have not been affilaited with
the FSF since 2019.  Nevertheless, I suspect that FSF folks would agree with
most (but not all) of my views above, and I see they're cc'ed and hope
they'lll also comment sharing their views.

Sincerely,
--
Bradley M. Kuhn - he/them
Policy Fellow & Hacker-in-Residence at Software Freedom Conservancy
========================================================================
Become a Conservancy Sustainer today: https://sfconservancy.org/sustainer


  parent reply	other threads:[~2025-01-27 16:04 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-14 21:52 Contributing to gdb shaunak saha via Gdb
2024-06-17 12:21 ` Guinevere Larsen via Gdb
2024-06-17 15:00   ` DCO: Was: " Andrew Pinski via Gdb
2024-06-17 15:57     ` Guinevere Larsen via Gdb
2024-06-17 16:07       ` Jan Beulich via Gdb
2024-06-17 16:32       ` Eli Zaretskii via Gdb
2024-06-17 16:37         ` Guinevere Larsen via Gdb
2024-06-17 16:45           ` Eli Zaretskii via Gdb
2024-06-17 18:18             ` Guinevere Larsen via Gdb
2024-06-17 18:24               ` Andrew Pinski via Gdb
2024-06-17 19:57                 ` Eli Zaretskii via Gdb
2024-06-17 19:37               ` Eli Zaretskii via Gdb
2024-06-17 19:48                 ` Guinevere Larsen via Gdb
2024-06-18 12:25                   ` Eli Zaretskii via Gdb
2024-06-27 17:48                     ` Thiago Jung Bauermann via Gdb
2024-06-27 19:03                       ` Eli Zaretskii via Gdb
2024-06-29  3:27                         ` Thiago Jung Bauermann via Gdb
2024-06-17 19:15           ` Arsen Arsenović via Gdb
2024-06-18 11:54             ` Eli Zaretskii via Gdb
2024-06-28  0:43               ` NightStrike via Gdb
2024-06-28  6:08                 ` Eli Zaretskii via Gdb
2024-06-21 13:20       ` Nick Clifton via Gdb
2024-06-23 22:06       ` Tom Tromey
2024-12-02  8:56         ` Luis Machado via Gdb
2025-01-13 17:14           ` Andrew Burgess via Gdb
2025-01-13 17:32             ` Eli Zaretskii via Gdb
2025-01-17 10:37               ` Florian Weimer via Gdb
2025-01-17 10:44                 ` Luis Machado via Gdb
2025-01-17 13:01                 ` Eli Zaretskii via Gdb
2025-01-21 19:10                   ` Guinevere Larsen via Gdb
2025-01-13 17:42             ` Simon Marchi via Gdb
2025-01-14 15:17               ` automated coding style tool (was: RE: DCO: Was: Re: Contributing to gdb) Aktemur, Tankut Baris via Gdb
2025-01-14 17:11                 ` automated coding style tool Tom Tromey
2025-01-14 17:14                   ` Luis Machado via Gdb
2025-01-14 17:23                     ` Simon Marchi via Gdb
2025-01-14 23:04                       ` Tom Tromey
2025-01-15  6:03                         ` Maciej W. Rozycki
2025-01-18 18:39                           ` Tom Tromey
2025-01-22 22:36                             ` Maciej W. Rozycki
2025-01-15 10:20                         ` Luis Machado via Gdb
2025-01-15 12:24                           ` Aktemur, Tankut Baris via Gdb
2025-01-17 13:42                           ` Andrew Burgess via Gdb
2025-01-17 15:13                             ` Joel Brobecker via Gdb
2025-01-17 15:55                               ` Simon Marchi via Gdb
2025-01-17 17:36                                 ` Phi via Gdb
2025-01-17 19:27                                   ` Simon Marchi via Gdb
2025-01-18 18:56                           ` Tom Tromey
2025-01-20 11:30                             ` Luis Machado via Gdb
2025-01-14 17:15                   ` Simon Marchi via Gdb
2025-01-14  9:49             ` DCO: Was: Re: Contributing to gdb Luis Machado via Gdb
2025-01-14 13:56               ` Eli Zaretskii via Gdb
2025-01-14 15:10               ` Simon Marchi via Gdb
2025-01-14 15:28                 ` Luis Machado via Gdb
2025-01-14 15:47                   ` Simon Marchi via Gdb
2025-01-14 16:33                     ` Luis Machado via Gdb
2025-01-14 16:42                     ` Eli Zaretskii via Gdb
2025-01-15 11:49                       ` Mark Wielaard
2025-01-14 16:46               ` Andrew Burgess via Gdb
2025-01-15 11:25                 ` Mark Wielaard
2025-01-15  6:20               ` Maciej W. Rozycki
2025-01-15 11:05               ` Mark Wielaard
2025-01-14 15:28             ` Mark Wielaard
2025-01-17 10:42               ` Florian Weimer via Gdb
2025-01-17 13:09                 ` Eli Zaretskii via Gdb
2025-01-19 16:37                 ` Mark Wielaard
2025-01-27 15:55                 ` Bradley M. Kuhn via Gdb [this message]
2025-01-27 16:36                   ` DCO Krzysztof Siewicz via Gdb
2025-01-27 17:22                   ` DCO Guinevere Larsen via Gdb
2025-01-31 19:36                     ` DCO Mark Wielaard
2024-06-18 13:32     ` DCO: Was: Re: Contributing to gdb Michael Matz via Gdb
2024-06-19  7:38   ` shaunak saha via Gdb
2024-06-19 12:07     ` Guinevere Larsen via Gdb
2024-06-25 22:27       ` shaunak saha via Gdb
2024-06-26 17:38 ` Tom Tromey
2024-06-28  7:23   ` shaunak saha via Gdb

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z5esfoH+wMxmDyRP@ebb.org \
    --to=gdb@sourceware.org \
    --cc=aburgess@redhat.com \
    --cc=bkuhn@sfconservancy.org \
    --cc=blarsen@redhat.com \
    --cc=eliz@gnu.org \
    --cc=ksiewicz@fsf.org \
    --cc=luis.machado@arm.com \
    --cc=mark@klomp.org \
    --cc=pinskia@gmail.com \
    --cc=tom@tromey.com \
    --cc=zoe@fsf.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox