-
-
Notifications
You must be signed in to change notification settings - Fork 15.5k
maintainers: document new maintainers and team changes #85247
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
Conversation
e0e4dca
to
bebafce
Compare
bebafce
to
b6fae4b
Compare
email = "user@example.com"; | ||
name = "Example User"; | ||
keys = [{ | ||
longkeyid = "rsa8192/0xF04F7A19AAA63AFE"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
key ids are only fingerprints truncated to 64 bits (note here how it's the tail end of the next line), which is few enough to no longer be cryptographically secure. the only reason that key ids ever existed (other than a mistake in the openpgp spec) is to have a handle that is "easier to handle for humans".
unless we make the assumption that humans should ever handle such data manually, there is no practical use case for key ids that holds up either cryptographically or ux-wise. we should deprecate them where possible, or at least not further institutionalize them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you cite a reference w.r.t. longkeyids being cryptographically insecure? I was under the impression they were secure okay, and the default shortkey ID was insecure.
I would like it if you opened a PR removing the longkeyid from the maintainer list with that reference. That said, this change is out of scope for this particular PR, since it is documenting the process as it is today.
Given longkeyid being insecure, this PR will need to be updated to validate the signature on the commandline, since GitHub only shows the longkey.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll make a PR 👍
In the morning, I'll finish updating this PR to have instructions on validating the signature on the command line, since GitHub doesn't expose the full signing key. |
Is there a policy on GPG keys? For example requiring maintainers to use that key to sing commit once in the |
Signatures on commits in combination with fingerprints in the maintainer list allows us to tell whether a commit was made by a specific author in the maintainers list. But that's in itself is more of a means than an end. A policy that requires signatures in any way is bound to add hurdles to maintainership. If we want to move any further in that direction, we should have a clear picture of the intended goals, and how the introduced policies support those. (All of that is probably also far out of scope of this poor PR ;) |
That's what I was asking. If maintainers have a gpg key their commits should be signed with that key and checked, IMO. Otherwise I don't see the point of adding the keys. It would be a cool addition to ofBorg.
I was honestly asking, not proposing anything. I agree something like that should ge through an RFC, at least. |
No, they're not required or checked. Right now the keys in the maintainer list are informational only. OfBorg could probably add a "signed-by-maintainer" label as a positive sign? Sometimes people commit patches via the web UI. One theory of ofborg's design and operation is don't punish anyone, instead use the power of automation and positive labeling to encourage behavior we do like. |
4673bd9
to
96dcc69
Compare
Those commits will be signed by GitHub, which we can treat as GitHub saying that the owner of the GitHub account made the commit. So we could (and should IMO) definitely check that a commit was signed by the either the person’s own key or by GitHub if there’s a key listed in maintainers.nix for the committer email. |
@alyssais I think it is useful to verify that the commit adding a specific key to the maintainer list is signed by exactly that key, as a proof of ownership. That is why I wrote that it must be signed by exactly that key. Does that make sense, or do you think we don't need that proof of ownership? I check on our end and the user's end, ensuring the user still has control of it. |
Yes, this makes total sense. I was talking more generally. For most other commits, a GitHub signature should also be accepted. |
Definitely. I'm definitely not wanting to set policy here for anything except for the commit adding a key to the maintainer file :) I added a issue to ofborg, maybe we could move further discussion of signing outside of this scope there? NixOS/ofborg#461 (or post an alterantive issue -- I don't want to shave the gpg yaks on this issue, on things outside of the scope of this issue :') ) |
I’m making heavy use of the |
Again, I'm not planning on setting policy here beyond the scope of specifying how this maintainer entry is validated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
GPG fingerprint might be an issue but out of scope for this PR.
def5798
to
cadc500
Compare
I updated this PR by rebasing it on latest master, which required converting docbook to markdown, which was done with pandoc. @SuperSandro2000 Regarding whether CI does these checks, it at least would've done them at some point: NixOS/ofborg#438. Seems like this was not propagated with the move to github actions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please also add anchors for stable linking.
cadc500
to
15b9a82
Compare
@jtojnar Done that |
Thank you infinisil! Apart from the small merge conflict, is there anything that is still needed for merge? |
15b9a82
to
d059ca4
Compare
d059ca4
to
9d5471c
Compare
Nvm, this PR adds some tests which are failing cause of the new fields, should be fixed now. |
9d5471c
to
2f446d8
Compare
Okay, all green now, merging. |
This broke eval for PRs |
Fixed by 404bfe2 |
Ah, sorry. I did rebase an hour earlier, I guess there was a race condition here. |
Hm, it was already there, weird how eval was green here. |
I'm improving the documentation for this in #305237 |
Motivation for this change
Write down rules for validating maintainers and changes to teams. In particular, I know of at least one company which would like to create a maintainer team, but keep it closed.
Rendered:
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)