Skip to content

Commit a5b848b

Browse files
Reformat text to have at most one sentence per line
The reason for this is given in the new section of `CONTRIBUTING.md`. Co-authored-by: Michael Daniels <[email protected]>
1 parent 328e1f9 commit a5b848b

File tree

6 files changed

+101
-37
lines changed

6 files changed

+101
-37
lines changed

CONTRIBUTING.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,12 @@ To mitigate this, all people with [code owner entries](./.github/CODEOWNERS) for
1818
This is done by [automatically opening an issue in regular intervals](./.github/workflows/review.yml) to ping all code owners.
1919

2020
This serves as an initial fallback, but more automatic approaches could be implemented in the future, e.g. by scraping and comparing the state.
21+
22+
## Drafting notes
23+
24+
Text is written in Markdown.
25+
26+
For the sake of human-readable diffs and patches, each line must contain at most one sentence.
27+
Long sentances may be broken into multiple lines at points of sub-sentance punctuation (e.g. comma, em-dash, semicolon) boundaries.
28+
Markdown explicitly ignores the location of line-breaks within paragraphs, so this convention does not affect the meaning of the text.
29+
(This rule is an instance of the general principle of "semantic line breaks", discussed at greater length at <https://sembr.org/>.)

doc/constitution.md

Lines changed: 46 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ It has the following responsibilities, which it may delegate as appropriate:
3232
- Decision authority may be delegated to other teams when significant analysis is needed, but the SC remains responsible if the delegated team fails to reach a decision.
3333
- Evolve the constitution, including governance structures and processes, as needed, subject to supermajority approval.
3434
- Coordination with the NixOS Foundation Board:
35-
- Collaborate with the NixOS Foundation Board to set policies and priorities for high-visibility actions, events, and resources under the Foundation's care. Both the SC and the board need to approve such policies.
35+
- Collaborate with the NixOS Foundation Board to set policies and priorities for high-visibility actions, events, and resources under the Foundation's care.
36+
Both the SC and the board need to approve such policies.
3637
- Any delegation of responsibilities related to these areas also delegates communication with the Board on the relevant topics.
3738
- Be involved in the [board composition change process](#board-composition-changes)
3839
- Creation and Management of Teams:
@@ -47,7 +48,8 @@ It has the following responsibilities, which it may delegate as appropriate:
4748
- Ensure the existence and proper execution of processes for granting access to projects and resources.
4849
- As of the establishment of the SC, [official resources](https://github.com/NixOS/org/blob/main/doc/resources.md) and access details are listed in the repository.
4950

50-
The SC has the authority to make decisions within the scope of its responsibilities; the restrictions on this authority are all explicitly listed in this constitution. The SC may make a decision to revoke delegation of a specific part of authority, if necessary — even if the authority in question has been with a certain team since before the current constitution.
51+
The SC has the authority to make decisions within the scope of its responsibilities; the restrictions on this authority are all explicitly listed in this constitution.
52+
The SC may make a decision to revoke delegation of a specific part of authority, if necessary — even if the authority in question has been with a certain team since before the current constitution.
5153

5254
### NixOS Foundation Board
5355

@@ -58,7 +60,9 @@ In particular, its responsibilities are to:
5860
- Serve as an interface between the community and the corporate/governmental/financial world
5961
- Manage trademarks
6062
- Handle external relationships, partnerships, and donations
61-
- Work with the SC to establish foundation policies that balance the interests of volunteers, commercial actors, and public institutions, while staying within legal and administrative feasibility constraints. Both the SC and the board need to approve such policies. This includes sponsorship eligibility and trademark policies.
63+
- Work with the SC to establish foundation policies that balance the interests of volunteers, commercial actors, and public institutions, while staying within legal and administrative feasibility constraints.
64+
Both the SC and the board need to approve such policies.
65+
This includes sponsorship eligibility and trademark policies.
6266
- Build and maintain beneficial and collaborative relationships
6367
- Maintain and support grants/grant providers
6468
- Provide a framework for the community to self-organise:
@@ -71,9 +75,12 @@ In particular, its responsibilities are to:
7175

7276
#### Board Composition Changes
7377

74-
Prior to appointing a new board member, the board shall inform the SC and give the SC the opportunity to object to the appointment by simple majority. In case of objection, the SC shall privately provide the written reasons to the board. The objection of the SC is binding to the board unless recalled by the SC.
78+
Prior to appointing a new board member, the board shall inform the SC and give the SC the opportunity to object to the appointment by simple majority.
79+
In case of objection, the SC shall privately provide the written reasons to the board.
80+
The objection of the SC is binding to the board unless recalled by the SC.
7581

76-
Board members have terms of no longer than 2 years. At the end of a term of a board member:
82+
Board members have terms of no longer than 2 years.
83+
At the end of a term of a board member:
7784
- If the member wishes to remain on the board, the board may approve a term renewal.
7885
- If the board approves the renewal, the SC is given the ability to object with a supermajority.
7986
- The board can override such an objection only by a unanimous decision.
@@ -91,26 +98,31 @@ The following decisions require at least a 2/3 supermajority agreement of the fu
9198
- Forced removal of SC members
9299
- Objecting to NixOS Foundation board member term renewals
93100

94-
Furthermore, the SC decides on the Election Committee (EC) with a 2/3 supermajority. If the SC cannot come to supermajority agreement on the list of EC members, they will elect an EC using the same tallying system as the previous SC election, where only SC members can vote.
101+
Furthermore, the SC decides on the Election Committee (EC) with a 2/3 supermajority.
102+
If the SC cannot come to supermajority agreement on the list of EC members, they will elect an EC using the same tallying system as the previous SC election, where only SC members can vote.
95103

96104
Disqualifications of candidates in an election requires supermajority among the currently serving SC members.
97105

98-
Substantial amendments to the Nix Community Values require 90% agreement in a poll among eligible voters. Deciding that an amendment is not substantial can be done by unanimity among a full SC.
106+
Substantial amendments to the Nix Community Values require 90% agreement in a poll among eligible voters.
107+
Deciding that an amendment is not substantial can be done by unanimity among a full SC.
99108

100109
#### Ordinary decisions
101110

102111
Everything within the authority of SC that doesn't require an extraordinary decision can be decided with a simple majority (more than 50%) of a full SC (vacant seats count as abstaining).
103112

104-
An exception to that is when there is when the [conflict of interest balance](#conflict-of-interest-coi-balance) condition is suspected to be violated. In that case, all non-involved currently serving SC members will have a simple majority decision over whether there is a violation.
113+
An exception to that is when there is when the [conflict of interest balance](#conflict-of-interest-coi-balance) condition is suspected to be violated.
114+
In that case, all non-involved currently serving SC members will have a simple majority decision over whether there is a violation.
105115

106116
### Composition and Appointment
107117

108118
The SC consists of 7 elected members.
109119
Regular elections are once a year, with half (alternating rounding every year) of the seats up for election,
110120
such that each member holds a seat for one term of at most 2 years before it is up for election again.
111-
Members can at most serve two consecutive terms. There is no lifetime maximum.
121+
Members can at most serve two consecutive terms.
122+
There is no lifetime maximum.
112123

113-
The previous SC appoints an Election Committee (EC) of at least 3 people to administer the election. If the SC cannot come to supermajority agreement on the list of EC members, they will elect an EC using the same tallying system as the previous SC election, where only SC members can vote.
124+
The previous SC appoints an Election Committee (EC) of at least 3 people to administer the election.
125+
If the SC cannot come to supermajority agreement on the list of EC members, they will elect an EC using the same tallying system as the previous SC election, where only SC members can vote.
114126
SC members can be EC members only if they're leaving after the election.
115127

116128
#### Vote eligibility
@@ -124,7 +136,8 @@ There are two automatic ways to become eligible for voting, either:
124136

125137
The list of automatically eligible voters is made public.
126138

127-
People not automatically eligible then have some time to send a request to the EC, which can then make an exception and approve them as voters. This is for people whose official contributions are not all visible in the NixOS GitHub organisation, but have contributed roughly the equivalent of 25 commits, also counting contributions such as:
139+
People not automatically eligible then have some time to send a request to the EC, which can then make an exception and approve them as voters.
140+
This is for people whose official contributions are not all visible in the NixOS GitHub organisation, but have contributed roughly the equivalent of 25 commits, also counting contributions such as:
128141
- Participation in official teams
129142
- Infrastructure maintenance
130143
- Organisation of official events
@@ -155,7 +168,8 @@ After the nomination deadline, the SC can prevent a nominee from becoming a cand
155168

156169
#### Procedure
157170

158-
The election is done using a proportional representation oriented tallying system based on ranked ballots. One option is to use [proportional representation mode from Condorcet Internet Voting Service (CIVS)](http://web.archive.org/web/20240412235900/https://civs1.civs.us/proportional.html), but a reasonable alternative is also permitted.
171+
The election is done using a proportional representation oriented tallying system based on ranked ballots.
172+
One option is to use [proportional representation mode from Condorcet Internet Voting Service (CIVS)](http://web.archive.org/web/20240412235900/https://civs1.civs.us/proportional.html), but a reasonable alternative is also permitted.
159173

160174
In any election where seats with different end-of-term dates are available, winning candidates with higher final election rankings are appointed to the longer terms.
161175

@@ -164,24 +178,38 @@ In any election where seats with different end-of-term dates are available, winn
164178
- To stagger the terms, the first election will appoint half the members rounded up with 2-year terms and the remaining members with 1-year terms.
165179
- The EC for the first election will be the members of the [Nix Constitutional Assembly (NCA)](https://github.com/nixos/nix-constitutional-assembly?tab=readme-ov-file#members), which are thus ineligible to be elected for the first SC
166180
- All nominees become candidates for the first election, because there's no existing SC that would decide over disqualifying candidates.
167-
- And to help the first elected SC establish itself, members of the NCA are integrated into the SC as non-voting members for 6 months after the appointment. The NCA ceases to exist at the moment of SC appointment.
181+
- And to help the first elected SC establish itself, members of the NCA are integrated into the SC as non-voting members for 6 months after the appointment.
182+
The NCA ceases to exist at the moment of SC appointment.
168183

169184
#### Conflict of Interest (CoI) Balance
170185

171-
To encourage diversity, there is a soft limit of one individual with the same CoI (e.g. employees of the same company or otherwise the same payer for Nix work) immediately after election results coming into force. If the results of an election would result in multiple individuals with the same CoI being elected, the lowest vote getters with any particular CoI will be removed until the condition is satisfied. Note that everybody's vote still has the same impact, because each voter is asked to evaluate all candidates. In case of doubts on what constitutes the same CoI (subsidiaries, grants, part-time work, etc.), the election committee decides. The candidates must disclose already-agreed-upon changes of affiliation that are to happen during the term, and at the time of election these are also considered as relevant CoIs. After all candidates are known and before the voting period starts, the EC must publicly commit to the list of candidate pairs considered to have the same CoI.
186+
To encourage diversity, there is a soft limit of one individual with the same CoI (e.g. employees of the same company or otherwise the same payer for Nix work) immediately after election results coming into force.
187+
If the results of an election would result in multiple individuals with the same CoI being elected, the lowest vote getters with any particular CoI will be removed until the condition is satisfied.
188+
Note that everybody's vote still has the same impact, because each voter is asked to evaluate all candidates.
189+
In case of doubts on what constitutes the same CoI (subsidiaries, grants, part-time work, etc.), the election committee decides.
190+
The candidates must disclose already-agreed-upon changes of affiliation that are to happen during the term, and at the time of election these are also considered as relevant CoIs.
191+
After all candidates are known and before the voting period starts, the EC must publicly commit to the list of candidate pairs considered to have the same CoI.
172192

173-
Furthermore, there is a hard maximum of two members with the same CoI at any time. If this condition is suspected to be violated because of job changes, acquisitions, or other events, all non-involved currently serving SC members will have a simple majority decision over whether there is a violation. In case it is deemed a violation, sufficient members of the committee must resign until the max representation limit is achieved. If it is impossible to find sufficient members to resign, all members with that same CoI will be removed and a new special election shall be held.
193+
Furthermore, there is a hard maximum of two members with the same CoI at any time.
194+
If this condition is suspected to be violated because of job changes, acquisitions, or other events, all non-involved currently serving SC members will have a simple majority decision over whether there is a violation.
195+
In case it is deemed a violation, sufficient members of the committee must resign until the max representation limit is achieved.
196+
If it is impossible to find sufficient members to resign, all members with that same CoI will be removed and a new special election shall be held.
174197

175198
#### Special Elections
176199

177-
In the event of a resignation or other loss of a steering committee member (including a [removal for conduct](#removal-for-conduct)), a special election for that position may be held if the SC deems it necessary, or the SC does not have half of the normal size. Otherwise, the missing positions are assumed to be abstaining from all the SC votes. A committee member elected in a special election will serve out the remainder of the term of the person they are replacing, regardless of the length of that remainder.
200+
In the event of a resignation or other loss of a steering committee member (including a [removal for conduct](#removal-for-conduct)), a special election for that position may be held if the SC deems it necessary, or the SC does not have half of the normal size.
201+
Otherwise, the missing positions are assumed to be abstaining from all the SC votes.
202+
A committee member elected in a special election will serve out the remainder of the term of the person they are replacing, regardless of the length of that remainder.
178203

179204
#### Full Reelections
180205

181-
A simple majority within the SC may call a reelection of the entire SC based on perceived loss of confidence. In this case, it also has to be decided whether this election is considered a special election for the remainders of all the corresponding terms, or an initial election for full 2-year terms for half of the seats rounded up and 1-year half-terms for the remaining seats.
206+
A simple majority within the SC may call a reelection of the entire SC based on perceived loss of confidence.
207+
In this case, it also has to be decided whether this election is considered a special election for the remainders of all the corresponding terms, or an initial election for full 2-year terms for half of the seats rounded up and 1-year half-terms for the remaining seats.
182208

183209
### Removal for conduct
184210

185-
A supermajority within the SC may remove SC members for violating the community expectations for members in positions of high authority. The reasons include but are not limited to unfitting conduct and unavailability, and a summary of the reason should be respectfully described. The SC is explicitly expected to be held to higher standards than applied to project communication in general.
211+
A supermajority within the SC may remove SC members for violating the community expectations for members in positions of high authority.
212+
The reasons include but are not limited to unfitting conduct and unavailability, and a summary of the reason should be respectfully described.
213+
The SC is explicitly expected to be held to higher standards than applied to project communication in general.
186214

187215
The removal can be justification for a special election where the removed person is not eligible to be a candidate.

doc/freescout.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,18 @@ In a conversation, the most important actions in the top bar are:
8484
- Assigning sends an email to the assignee
8585
- Flag icon: Mark as:
8686
- Active (default): Waiting on you/assignee
87-
- Pending: Waiting on contact. Getting a reply marks it as active and sends a notification to the assignee
88-
- Closed: Not actionable. Getting a reply marks it as active and sends a notification to the assignee
87+
- Pending: Waiting on contact.
88+
Getting a reply marks it as active and sends a notification to the assignee
89+
- Closed: Not actionable.
90+
Getting a reply marks it as active and sends a notification to the assignee
8991
- Spam
9092
9193
The mail icon allows you to compose and send a new email to start a conversation.
9294
9395
### Extra
9496
95-
Freescout has a [lot of modules](https://freescout.net/modules/) to extend its functionality. The following modules are currently installed:
97+
Freescout has a [lot of modules](https://freescout.net/modules/) to extend its functionality.
98+
The following modules are currently installed:
9699
- [Extended Editor](https://freescout.net/module/extended-editor/)
97100
- [Teams](https://freescout.net/module/teams/)
98101

doc/governance.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ The [second election](https://github.com/nixos/SC-election-2025) ran in 2025.
77

88
## RFC Process
99

10-
The Nix RFC (Request For Comments) process exists to establish wider consensus for substantial changes. See the [rfcs repository](https://github.com/NixOS/rfcs) for more information.
10+
The Nix RFC (Request For Comments) process exists to establish wider consensus for substantial changes.
11+
See the [rfcs repository](https://github.com/NixOS/rfcs) for more information.
1112

1213
## Teams
1314

0 commit comments

Comments
 (0)