diff options
author | nicoo <nicoo@mur.at> | 2023-12-08 02:57:38 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-08 02:57:38 +0100 |
commit | 1d7f14656a699e61e549f16e8e3e406241a31c87 (patch) | |
tree | 99f2c78fcc8505e8a7c94db3e7c8f6ca706ef801 /maintainers/scripts/README.md | |
parent | 09dc04054ba2ff1f861357d0e7e76d021b273cd7 (diff) |
maintainers-list.nix: Document (current) invitation process, add get-maintainer.sh (#267084)
* maintainer-list: Document automatic invites to @NixOS/nixpkgs-maintainers * maintainers/scripts: Add `get-maintainer.sh` Supports querying `maintainers-list.nix` by Nix attribute, email address, github name or id, matrix account, or name. * maintainers/scripts/get-maintainer.sh: More verbose help message * maintainers/scripts/get-maintainer.sh: Fix (some) `shellcheck` lints * maintainers/scripts: Add README * maintainers/scripts/get-maintainer.sh: Put inline documentation at the top of the file * maintainers/scripts: Document this is not a stable interfact to nixpkgs Co-authored-by: Silvan Mosberger <github@infinisil.com> * scripts/README: Add example for `get-maintainer.sh` --------- Co-authored-by: Silvan Mosberger <github@infinisil.com>
Diffstat (limited to 'maintainers/scripts/README.md')
-rw-r--r-- | maintainers/scripts/README.md | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/maintainers/scripts/README.md b/maintainers/scripts/README.md new file mode 100644 index 0000000000000..2b99a4e751141 --- /dev/null +++ b/maintainers/scripts/README.md @@ -0,0 +1,58 @@ +# Maintainer scripts + +This folder contains various executable scripts for nixpkgs maintainers, +and supporting data or nixlang files as needed. +These scripts generally aren't a stable interface and may changed or be removed. + +What follows is a (very incomplete) overview of available scripts. + + +## Metadata + +### `get-maintainer.sh` + +`get-maintainer.sh [selector] value` returns a JSON object describing +a given nixpkgs maintainer, equivalent to `lib.maintainers.${x} // { handle = x; }`. + +This allows looking up a maintainer's attrset (including GitHub and Matrix +handles, email address etc.) based on any of their handles, more correctly and +robustly than text search through `maintainers-list.nix`. + +``` +❯ ./get-maintainer.sh nicoo +{ + "email": "nicoo@debian.org", + "github": "nbraud", + "githubId": 1155801, + "keys": [ + { + "fingerprint": "E44E 9EA5 4B8E 256A FB73 49D3 EC9D 3708 72BC 7A8C" + } + ], + "name": "nicoo", + "handle": "nicoo" +} + +❯ ./get-maintainer.sh name 'Silvan Mosberger' +{ + "email": "contact@infinisil.com", + "github": "infinisil", + "githubId": 20525370, + "keys": [ + { + "fingerprint": "6C2B 55D4 4E04 8266 6B7D DA1A 422E 9EDA E015 7170" + } + ], + "matrix": "@infinisil:matrix.org", + "name": "Silvan Mosberger", + "handle": "infinisil" +} +``` + +The maintainer is designated by a `selector` which must be one of: +- `handle` (default): the maintainer's attribute name in `lib.maintainers`; +- `email`, `name`, `github`, `githubId`, `matrix`, `name`: + attributes of the maintainer's object, matched exactly; + see [`maintainer-list.nix`] for the fields' definition. + +[`maintainer-list.nix`]: ../maintainer-list.nix |