RFC#36 (now merged as rfcs/0036-rfc-process-team-amendment.md at d9aad9291186cc10375afa5aaefed2b01357cf7e · NixOS/rfcs · GitHub and as a part of README.md) contains as a «Further work» entry the following:
Define how the Steering Committee is picked in the future and how to replace members thereof if they are not able to participate in the meetings, including guidelines on when to replace members. (a timeline, not being active, etc.)
Now that the RFC is merged (and is in the process of being applied), I think we can start collection the points of view on this topic. Right now I believe it is time not to look for consensus (yet), but a time to make sure we don’t forget any considerations.
@domenkozar mentioned the following possible things to borrow from Python’s process:
a) Conflict of interest - putting an upper cap of 2 persons to work for a single employer
b) Vote of no confidence - vote to disassemble the whole team or a single member
Both for the notion of «vote of no confidence» and for confidence in incoming members we might eventually need to have an idea who is represented by the Steering Committee (and in what proportion). NixOS contributors (current or recent special position holders, committers, listed package maintainers, all authors of accepted contributions)? NixOS users (how to define that consituency)? NixOS Foundation donors willing to be publically acknowledged?
What conflicts of interest do we want to foresee? We might want to avoid single for-profit corporation having too much representation. Do we want to set some expectations of presentation of different supported platforms (with possibly different technical priorities)? Is non-NixOS Linux a separate platform? Anything about desktop use vs server use?
What is the type of the selection process? Is the medium term plan to have candidates selected by consensus of some small team (possibly conditional on confidence from wider constituency) or by a wide vote on a long list? In the second case, what are the properties of the voting process that we want to achieve?
What I forgot to mention?