Subject: [PATCH] admin/notes/elpa: Add note on contributing to external packages
From: Stefan Kangas <[email-masked]>
To: [email-masked]
Date: Mon, 10 Mar 2025 12:15:48 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Severity: wishlist

I'm forwarding this from emacs-devel so that we don't lose track of it.

-------------------- Start of forwarded message --------------------
From: david <[email-masked]>
To: [email-masked]
Cc: Stefan Kangas <[email-masked]>, Philip Kaludercic
 <[email-masked]>
Subject: [PATCH] admin/notes/elpa: Add note on contributing to external
 packages
Date: Mon, 10 Mar 2025 09:01:38 -0400
From 83f6b11ae86af12a03c125f685277e92ad5bca5b Mon Sep 17 00:00:00 2001
From: dimagid <[email-masked]>
Date: Mon, 10 Mar 2025 08:39:40 -0400
Subject: [PATCH] Add note about externally hosted packages to admin/notes/elpa

---
 admin/notes/elpa | 63 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/admin/notes/elpa b/admin/notes/elpa
index afcda71d1dd..97aa15935b1 100644
--- a/admin/notes/elpa
+++ b/admin/notes/elpa
@@ -33,3 +33,66 @@ the package.
 
 It is easy to use the elpa branch to deploy a "local" copy of the
 package archive.  For details, see the README file in the elpa branch.
+
+* Contributing to Externally Hosted Packages
+
+Some GNU ELPA packages are primarily developed in external repositories
+(e.g., on GitHub, GitLab, or similar platforms). If you maintain such a
+package, it is important to ensure that contributors understand the
+requirements for contributing, especially when it comes to copyright
+assignment to the Free Software Foundation (FSF). Here’s what you need
+to do:
+
+1. Include Clear Contribution Guidelines in Your Repository
+   Ensure your external repository's README or CONTRIBUTING file
+   includes the following:
+   - A notice that the package is distributed through GNU ELPA.
+   - A statement that contributors must assign copyright for their
+     contributions to the FSF, if the contribution is significant
+     (e.g., more than a few lines of code).
+   - For complete information, see the CONTRIBUTE file in the Emacs
+     repository.
+
+2. Handling Contributions Requiring Copyright Assignment
+   When a contributor submits a pull request or patch that requires
+   copyright assignment:
+   - Acknowledge the Contribution: Thank the contributor and let them
+   know that their contribution will need to go through the FSF’s
+   copyright assignment process before it can be merged.
+   - Explain the Process: Provide the contributor with clear instructions
+   on how to complete the copyright assignment process. This typically
+   involves:
+     - Filling out the FSF’s copyright assignment form.
+     - Sending the signed form to the FSF.
+     - Waiting for confirmation from the FSF that the assignment has
+     been processed.
+   - Point to Resources: Direct the contributor to the FSF’s copyright
+   assignment page for more information:
+     https://www.fsf.org/licensing/assigning.html
+
+3. Consult with GNU ELPA Administrators
+   If you are unsure whether a contribution requires copyright assignment
+   or how to handle a specific case:
+   - Consult with the GNU ELPA administrators by emailing
+   [email-masked].
+   - Provide details about the contribution (e.g., the size of the
+   patch, the contributor’s contact information, and any relevant
+   context).
+
+4. Merging Contributions
+   Once the contributor has completed the copyright assignment process
+   and you have received confirmation from the FSF:
+   - Merge the contribution into your external repository.
+   - Ensure the contributor is properly credited in the commit history.
+   - If applicable, update the AUTHORS or THANKS file in your repository
+   to acknowledge their contribution.
+
+5. Maintaining Compliance
+   - Periodically review your repository’s contribution guidelines to
+   ensure they are up-to-date and align with GNU ELPA policies.
+   - Stay in touch with the GNU ELPA administrators to address any
+   questions or concerns about contributions and copyright assignment.
+
+By following these steps, you can ensure that contributions to your
+externally hosted package are handled in a way that complies with
+GNU ELPA policies and respects the FSF’s copyright requirements.
-- 
2.48.1