mirror of
https://gh.wpcy.net/https://github.com/fairpm/tsc.git
synced 2026-06-19 03:13:30 +08:00
175 lines
5.2 KiB
Markdown
175 lines
5.2 KiB
Markdown
# Welcome to the FAIR Package Manager GitHub Repository
|
||
|
||
We’re happy that you’re here and want to learn more about the project structure and our different roles.
|
||
|
||
To learn about the different contribution pathways you can take, you can read [about how to get started](getting-started.md) which has more detail about how you can contribute to the project.
|
||
|
||
## Contributions
|
||
|
||
There are many ways to contribute to the project. You can:
|
||
|
||
- Contribute with a pull request
|
||
- Join a discussion on a ticket
|
||
- Join a working group
|
||
- Contribute to documentation
|
||
- Help with developer engagement
|
||
- Come to a [meeting](https://zoom-lfx.platform.linuxfoundation.org/meetings/fair-package-manager?view=month)
|
||
|
||
---
|
||
|
||
## Active Working Groups
|
||
|
||
For a list of active working groups, please see the [Working Groups README](working-groups/README.md#active-working-groups)
|
||
|
||
---
|
||
|
||
## Code Signing
|
||
|
||
When committing code to a Project repository, you need to sign your commits by adding this to your commit messages:
|
||
|
||
```
|
||
Signed-off-by: Author Name <authoremail@example.com>
|
||
```
|
||
|
||
If you're unfamiliar with signing commits, here are some resources:
|
||
|
||
- [Script it](https://stackoverflow.com/a/46536244/2575)
|
||
- Cursor/VSCode: go to `Extensions -> Git` and check the option (globally or per project)
|
||
- CLI:
|
||
```bash
|
||
git commit -s
|
||
```
|
||
|
||
---
|
||
|
||
## Legal Requirements
|
||
|
||
[To be updated]
|
||
|
||
### Licensing & Copyright
|
||
|
||
- You **retain copyright**
|
||
- Code contributions must use the **GNU GPL v2 license**
|
||
- Docs and content: **Creative Commons Attribution 4.0**
|
||
- All code contributions must include a **DCO sign-off**
|
||
- Sign-off applies to your employer if applicable
|
||
- Project releases use **GPL v2**
|
||
- Will follow Upstream Project license terms
|
||
- **License exceptions** require a two-thirds TSC vote
|
||
- Files should use **SPDX identifiers**
|
||
|
||
---
|
||
|
||
## Technical Steering Committee (TSC)
|
||
|
||
The TSC governs the project, ensures progress, and adheres to governance practices.
|
||
|
||
### Composition
|
||
|
||
- **[TSC Chair(s)](organizers.md#tsc-co-chairs)** – One or three (voting)
|
||
- **[Organizers](organizers.md#tsc-members)** – Appointed maintainers and leaders (voting)
|
||
- **Contributors** – Community members in any capacity (non-voting)
|
||
|
||
TSC involvement includes all aspects of the project: code, documentation, marketing, accessibility, and more.
|
||
|
||
### Responsibilities
|
||
|
||
- Coordinate project direction
|
||
- Approve proposals (new ideas, deprecations, scope changes)
|
||
- Manage sub-projects
|
||
- Create working groups for technical issues
|
||
- Appoint collaboration representatives
|
||
- Define norms, workflows, release, and security policies
|
||
- Set contribution guidelines and resolve issues with the Series Manager
|
||
- Vote on multi-project-impacting changes
|
||
- Lead marketing, events, and outreach
|
||
|
||
---
|
||
|
||
## Project Roles
|
||
|
||
### Contributor
|
||
|
||
Anyone contributing in any form, including:
|
||
|
||
- Code
|
||
- Documentation
|
||
- Training materials
|
||
- Project management
|
||
- Translation
|
||
- Architecture
|
||
- Support
|
||
|
||
> Contributors to the technical project are not TSC members.
|
||
|
||
### Organizer
|
||
|
||
Contributors elevated to leadership roles:
|
||
|
||
- Modify/approve repository content
|
||
- Lead contributors or working groups
|
||
|
||
**Becoming an Organizer:**
|
||
|
||
- Requires majority approval of existing Organizers
|
||
- An existing Organizer can nominate a Contributor
|
||
- Nominee must accept nomination
|
||
- When possible, nominations are approved by [lazy consensus](https://www.apache.org/foundation/glossary.html#LazyConsensus)—if no objections are raised within 5 business days, the nomination moves forward
|
||
- If objections are raised, a vote will be held
|
||
|
||
**Removal:**
|
||
|
||
- Requires majority vote of existing Organizers
|
||
|
||
> Voting rights limited: related companies can only use up to **30%** of the TSC’s total votes per our [Charter](charter.md).
|
||
|
||
### TSC Chairs
|
||
|
||
The TSC decides whether to have 1 or 3 chairs. They:
|
||
|
||
- Run TSC meetings
|
||
- Ensure voting process adherence
|
||
- Act as primary liaison with the governing board
|
||
- May be non-developers
|
||
- Cannot all be from the same company (if 3 co-chairs)
|
||
|
||
#### Nominations
|
||
|
||
- Nominations for TSC Chair(s) are open to all Organizers
|
||
- Interested persons may nominate themselves
|
||
- Nominations are facilitated by the Linux Foundation ([example](https://github.com/orgs/fairpm/discussions/43))
|
||
|
||
#### Term Limits and Rotation
|
||
|
||
To ensure continuity and stable leadership, Co-Chair terms are staggered as follows:
|
||
|
||
* All Co-Chair positions serve a three-year term
|
||
* To establish staggered terms:
|
||
* The initial three Co-Chairs will serve 1-, 2-, and 3-year terms, as agreed upon among themselves
|
||
* After the first year, one Co-Chair will rotate off and a new one will be elected annually
|
||
* This rotation helps preserve stability by ensuring:
|
||
* Only one Co-Chair changes each year
|
||
* At least two experienced Co-Chairs remain at all times
|
||
|
||
---
|
||
|
||
## Voting Process
|
||
|
||
- Consensus is preferred
|
||
- When necessary, TSC votes: 1 vote per member
|
||
- **Quorum**: 50% of voting members required
|
||
- **Majority vote** to pass decisions
|
||
- Asynchronous voting allowed with:
|
||
- 50% participation
|
||
- Clear deadline
|
||
- Unresolved issues can be escalated to the **Series Manager**
|
||
|
||
---
|
||
|
||
## Code of Conduct
|
||
|
||
We want our project to be **welcoming and inclusive**. All project members must adhere to our Code of Conduct.
|
||
|
||
👉 **[View the full Code of Conduct here](code-of-conduct.md)**
|
||
|
||
---
|