Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC 0114] Code of Conduct for NixOS Community #114

Closed
wants to merge 29 commits into from
Closed
Changes from 5 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
f5ad5d9
RFC#114: initial commit
jonringer Nov 4, 2021
13cf895
Clarify in what way CoC differs from rust CoC
jonringer Nov 4, 2021
254d9a0
they -> the
jonringer Nov 4, 2021
1bb9a18
established -> establish
jonringer Nov 4, 2021
e4299a3
embarressing -> embarrassing
jonringer Nov 4, 2021
25b6b5f
right -> "single right"
jonringer Nov 4, 2021
dd80852
expand accepted characteristics to include socioeconomic and lack of …
jonringer Nov 4, 2021
08bd6a2
clarify behavior
jonringer Nov 4, 2021
7c4ba48
"struggles with" -> lacks
jonringer Nov 4, 2021
635b826
More than just moderation name has now changed
jonringer Nov 4, 2021
ad897b2
clarify bullet point
jonringer Nov 4, 2021
95cb6f0
clarify drawbacks
jonringer Nov 4, 2021
44e15e5
Add community ethos as alternative
jonringer Nov 4, 2021
7f85952
Clarify origin of discourse thread
jonringer Nov 4, 2021
0c18e56
Use stable url for citizen code-of-conduct
jonringer Nov 5, 2021
b73719b
Update 0114-nixos-code-of-conduct.md
edolstra Feb 22, 2023
91b75f9
Remove mention of moderation team
jonringer Mar 7, 2023
dd485f4
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
535eaae
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
29923df
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
65c87da
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
6f31115
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
ba3775f
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
5a6caf5
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
8abd01d
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
2762131
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
854dc99
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
ee0aba2
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
2215c14
Update rfcs/0114-nixos-code-of-conduct.md
jonringer Mar 7, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 108 additions & 0 deletions rfcs/0114-nixos-code-of-conduct.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
---
feature: NixOS Code of Conduct
jonringer marked this conversation as resolved.
Show resolved Hide resolved
start-date: 2021-11-03
author: @jonringer
co-authors:
shepherd-team:
shepherd-leader:
related-issues: #98 #102
---

# Summary
[summary]: #summary

The NixOS Community needs some foundation of shared values which can be used
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
jonringer marked this conversation as resolved.
Show resolved Hide resolved
to determine appropriate when contributing and interacting with the community.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
We currently have a [community ethos](https://nixos.org/community/index.html), but
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
jonringer marked this conversation as resolved.
Show resolved Hide resolved
this only states that we are an inclusive community, but doesn't define
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
inappropriate behavior when interacting with the community. This RFC aims
to establish the shared values, so they can be used to identify behavior
which is disruptive to the community.
jonringer marked this conversation as resolved.
Show resolved Hide resolved

This RFC does not intend to define moderation practices. This is intended to only lay
a framework of shared values for the community.
jonringer marked this conversation as resolved.
Show resolved Hide resolved

# Motivation
[motivation]: #motivation

The NixOS community struggles with a clearly defined way in which someone's behavior may
jonringer marked this conversation as resolved.
Show resolved Hide resolved
be disruptive. A well-defined Code of Conduct gives an explicit
set of expectations for all contributors, which will also make it easier to identify
when behavior becomes disruptive.
jonringer marked this conversation as resolved.
Show resolved Hide resolved

# Detailed design
[design]: #detailed-design

These statutes are taken from [rust-lang's Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct),
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
jonringer marked this conversation as resolved.
Show resolved Hide resolved
which provides a great compromise between explicit behaviors and subjective goals.
Only the moderation body name has been changed.
jonringer marked this conversation as resolved.
Show resolved Hide resolved

- We are committed to providing a friendly, safe and welcoming environment for
all, regardless of level of experience, gender identity and expression,
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
sexual orientation, disability, personal appearance, body size, race, ethnicity, age,
religion, nationality, or other similar characteristics.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
- Please avoid using overtly sexual aliases or other nicknames that might
detract from a friendly, safe and welcoming environment for all.
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
- Please be kind and courteous. There’s no need to be mean or rude.
- Respect that people have differences of opinion and that every design or
implementation choice carries a trade-off and numerous costs. There is seldom a right answer.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
- Please keep unstructured critique to a minimum. If you have solid ideas
you want to experiment with, make a fork and see how it works.
- We will exclude you from interaction if you insult, demean or harass anyone.
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
That is not welcome behavior. We interpret the term “harassment” as including the definition in the
[Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md);
jonringer marked this conversation as resolved.
Show resolved Hide resolved
if you have any lack of clarity about what might be included in that concept,
please read their definition. In particular, we don’t tolerate behavior that excludes
people in socially marginalized groups.
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
- Private harassment is also unacceptable. No matter who you are, if you feel
you have been or are being harassed or made uncomfortable by a community member,
please contact one of the channel ops or any of the NixOS moderation team immediately.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
please contact one of the channel ops or any of the NixOS moderation team immediately.
please contact one of the channel ops or any of the moderation team members immediately.

Not sure about what channel ops is supposed to mean. Channel operators? I didn't know we even have such a thing. This text should link to those points of contact. I wouldn't know how to find them.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is referring to some type of moderator across various platforms (e.g. discourse, github, matrix, etc)

Whether you’re a regular contributor or a newcomer, we care about making this community
a safe place for you and we’ve got your back.
- Likewise any spamming, trolling, flaming, baiting or other attention-stealing behavior is not welcome.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also add the CODE_OF_CONDUCT.md in the .github repo, so it's visible on all repos.

# Examples and Interactions
[examples-and-interactions]: #examples-and-interactions

There have been a few spectacular failures of communication and good faith within the community.
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
Most notable recent examples include the [block evasion thread](https://discourse.nixos.org/t/github-block-evasion-is-not-acceptable/12763),
heated discussions in [RFC #98](https://github.com/NixOS/rfcs/pull/98) and [RFC #111](https://github.com/NixOS/rfcs/pull/111).
Each of these incidents have caused significant discussion on IRC (when it was still official),
jonringer marked this conversation as resolved.
Show resolved Hide resolved
matrix, discourse, and would bleed over into github and even non-official platforms.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
These discussions are generally very polarizing, and causes an enormous amount
jonringer marked this conversation as resolved.
Show resolved Hide resolved
of emotional and mental stress to those involved.
These incidents are also very embarrassing for the greater nix community,
jonringer marked this conversation as resolved.
Show resolved Hide resolved
and not having a way to identify disruptive before it becomes a heated
zimbatm marked this conversation as resolved.
Show resolved Hide resolved
issue is detrimental to the health of the community.

In conjunction with a moderation team (out-of-scope for this RFC), these incidents could have been
better arbitrated as to have a more satisfactory resolution before escalation. This
Code of Conduct will better equip the moderation process by providing clear expectations
for behavior within the community.

# Drawbacks
[drawbacks]: #drawbacks

- There are more "rules" for the community to follow. However, these statutes are intended to
still allow individuals to participate within the community in a healthy way for all.
jonringer marked this conversation as resolved.
Show resolved Hide resolved

# Alternatives
[alternatives]: #alternatives

- #98 Also provides an opinionated values and goals for the moderation team. However,
these rules are less well-defined, and allow for broader interpretations
of unacceptable behavior.

- #102 Codifies some of the existing moderation practices, and uses the
existing [community ethos](https://nixos.org/community/index.html) as moderation criteria.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
Comment on lines +91 to +96
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These should be linked. And the nixos.org piece should be a permalink as above.


# Unresolved questions
[unresolved]: #unresolved-questions

# Future work
[future]: #future-work

- Ratification of a "NixOS moderation team" as described in the second to last bullet.
jonringer marked this conversation as resolved.
Show resolved Hide resolved
- Add Code of Conduct to nixos.org, and mention the Code of Conduct on all relevant
repositories under the NixOS organization.
Comment on lines +107 to +108
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should probably be in the "detailed design" section.