diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-12-15 19:32:38 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-12-15 19:32:38 +0100 |
commit | 6b8e2555ef013b579cda57025b17d662e0f1fe1f (patch) | |
tree | 5a83c673af26c9976acd5a5dfa20e09e06898047 /nixpkgs/maintainers | |
parent | 66ca7a150b5c051f0728f13134e6265cc46f370c (diff) | |
parent | 02357adddd0889782362d999628de9d309d202dc (diff) | |
download | nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar.gz nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar.bz2 nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar.lz nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar.xz nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.tar.zst nixlib-6b8e2555ef013b579cda57025b17d662e0f1fe1f.zip |
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs
Diffstat (limited to 'nixpkgs/maintainers')
-rw-r--r-- | nixpkgs/maintainers/README.md | 7 | ||||
-rw-r--r-- | nixpkgs/maintainers/maintainer-list.nix | 142 | ||||
-rw-r--r-- | nixpkgs/maintainers/scripts/README.md | 58 | ||||
-rwxr-xr-x | nixpkgs/maintainers/scripts/doc/list-systemd-manpages.zsh | 33 | ||||
-rwxr-xr-x | nixpkgs/maintainers/scripts/get-maintainer.sh | 73 | ||||
-rw-r--r-- | nixpkgs/maintainers/scripts/luarocks-packages.csv | 1 | ||||
-rw-r--r-- | nixpkgs/maintainers/team-list.nix | 14 |
7 files changed, 315 insertions, 13 deletions
diff --git a/nixpkgs/maintainers/README.md b/nixpkgs/maintainers/README.md index 5bb9c58db024..f121ec756413 100644 --- a/nixpkgs/maintainers/README.md +++ b/nixpkgs/maintainers/README.md @@ -165,3 +165,10 @@ team after giving the existing members a few days to respond. *Important:* If a team says it is a closed group, do not merge additions to the team without an approval by at least one existing member. + + +# Maintainer scripts + +Various utility scripts, which are mainly useful for nixpkgs maintainers, +are available under `./scripts/`. See its [README](./scripts/README.md) +for further information. diff --git a/nixpkgs/maintainers/maintainer-list.nix b/nixpkgs/maintainers/maintainer-list.nix index 5ce24431c00a..d20aa7db61ad 100644 --- a/nixpkgs/maintainers/maintainer-list.nix +++ b/nixpkgs/maintainers/maintainer-list.nix @@ -26,8 +26,10 @@ - `githubId` is your GitHub user ID, which can be found at `https://api.github.com/users/<userhandle>`, - `keys` is a list of your PGP/GPG key fingerprints. - Specifying a GitHub account ensures that you automatically get a review request on - pull requests that modify a package for which you are a maintainer. + Specifying a GitHub account ensures that you automatically: + - get invited to the @NixOS/nixpkgs-maintainers team ; + - once you are part of the @NixOS org, OfBorg will request you review + pull requests that modify a package for which you are a maintainer. `handle == github` is strongly preferred whenever `github` is an acceptable attribute name and is short and convenient. @@ -603,6 +605,12 @@ githubId = 4717906; name = "Jakub Skokan"; }; + ajaxbits = { + email = "contact@ajaxbits.com"; + github = "ajaxbits"; + githubId = 45179933; + name = "Alex Jackson"; + }; ajgrf = { email = "a@ajgrf.com"; github = "ajgrf"; @@ -2266,6 +2274,15 @@ githubId = 16821405; name = "Ben Kuhn"; }; + benlemasurier = { + email = "ben@crypt.ly"; + github = "benlemasurier"; + githubId = 47993; + name = "Ben LeMasurier"; + keys = [{ + fingerprint = "0FD4 7407 EFD4 8FD8 8BF5 87B3 248D 430A E8E7 4189"; + }]; + }; benley = { email = "benley@gmail.com"; github = "benley"; @@ -3726,6 +3743,12 @@ githubId = 1740337; name = "Chris Ostrouchov"; }; + cottand = { + email = "nico@dcotta.eu"; + github = "cottand"; + githubId = 45274424; + name = "Nico D'Cotta"; + }; couchemar = { email = "couchemar@yandex.ru"; github = "couchemar"; @@ -4131,7 +4154,7 @@ email = "davidlewis@mac.com"; github = "oceanlewis"; githubId = 6754950; - name = "David Armstrong Lewis"; + name = "Ocean Armstrong Lewis"; }; davidcromp = { email = "davidcrompton1192@gmail.com"; @@ -5163,6 +5186,12 @@ name = "Edvin Källström"; githubId = 84442052; }; + ekimber = { + email = "ekimber@protonmail.com"; + github = "ekimber"; + name = "Edward Kimber"; + githubId = 99987; + }; ekleog = { email = "leo@gaspard.io"; matrix = "@leo:gaspard.ninja"; @@ -5593,6 +5622,12 @@ githubId = 2147649; name = "Euan Kemp"; }; + eureka-cpu = { + email = "github.eureka@gmail.com"; + github = "eureka-cpu"; + githubId = 57543709; + name = "Chris O'Brien"; + }; evalexpr = { name = "Jonathan Wilkins"; email = "nixos@wilkins.tech"; @@ -5659,6 +5694,12 @@ githubId = 454695; name = "Artur Taranchiev"; }; + ewuuwe = { + email = "ewu.uweq@pm.me"; + github = "ewuuwe"; + githubId = 63652646; + name = "Xaver Oswald"; + }; exarkun = { email = "exarkun@twistedmatrix.com"; github = "exarkun"; @@ -5712,6 +5753,12 @@ githubId = 25955146; name = "eyJhb"; }; + eymeric = { + name = "Eymeric Dechelette"; + email = "hatchchcien@protonmail.com"; + github = "hatch01"; + githubId = 42416805; + }; f2k1de = { name = "f2k1de"; email = "hi@f2k1.de"; @@ -6828,6 +6875,12 @@ githubId = 6893840; name = "Yacine Hmito"; }; + gracicot = { + email = "gracicot42@gmail.com"; + github = "gracicot"; + githubId = 2906673; + name = "Guillaume Racicot"; + }; graham33 = { email = "graham@grahambennett.org"; github = "graham33"; @@ -6933,6 +6986,11 @@ githubId = 21156405; name = "GuangTao Zhang"; }; + guekka = { + github = "Guekka"; + githubId = 39066502; + name = "Guekka"; + }; guibert = { email = "david.guibert@gmail.com"; github = "dguibert"; @@ -8804,6 +8862,12 @@ githubId = 6321578; name = "John Rinehart"; }; + john-rodewald = { + email = "jnrodewald99@gmail.com"; + github = "john-rodewald"; + githubId = 51028009; + name = "John Rodewald"; + }; john-shaffer = { email = "jdsha@proton.me"; github = "john-shaffer"; @@ -9336,6 +9400,7 @@ katexochen = { github = "katexochen"; githubId = 49727155; + matrix = "@katexochen:matrix.org"; name = "Paul Meyer"; }; kayhide = { @@ -10793,6 +10858,12 @@ fingerprint = "97A0 AE5E 03F3 499B 7D7A 65C6 76A4 1432 37EF 5817"; }]; }; + lukas-heiligenbrunner = { + email = "lukas.heiligenbrunner@gmail.com"; + github = "lukas-heiligenbrunner"; + githubId = 30468956; + name = "Lukas Heiligenbrunner"; + }; lukaswrz = { email = "lukas@wrz.one"; github = "lukaswrz"; @@ -11974,7 +12045,7 @@ }; milran = { email = "milranmike@protonmail.com"; - github = "milran"; + github = "wattmto"; githubId = 93639059; name = "Milran Mike"; }; @@ -11990,6 +12061,12 @@ githubId = 9799623; name = "Rick van Schijndel"; }; + mindstorms6 = { + email = "breland@bdawg.org"; + github = "mindstorms6"; + githubId = 92937; + name = "Breland Miley"; + }; minijackson = { email = "minijackson@riseup.net"; github = "minijackson"; @@ -13130,6 +13207,12 @@ fingerprint = "9B1A 7906 5D2F 2B80 6C8A 5A1C 7D2A CDAF 4653 CF28"; }]; }; + ninjafb = { + email = "oscar@oronberg.com"; + github = "NinjaFB"; + githubId = 54169044; + name = "NinjaFB"; + }; nintron = { email = "nintron@sent.com"; github = "Nintron27"; @@ -13427,7 +13510,8 @@ name = "Nathan Viets"; }; nyanbinary = { - email = "vextium@skiff.com"; + email = "nyanbinary@keemail.me"; + matrix = "@niko:conduit.rs"; github = "nyabinary"; githubId = 97130632; name = "Niko"; @@ -14622,6 +14706,11 @@ githubId = 146413; name = "Tobias Poschwatta"; }; + poweredbypie = { + name = "poweredbypie"; + github = "poweredbypie"; + githubId = 67135060; + }; PowerUser64 = { email = "blakelysnorth@gmail.com"; github = "PowerUser64"; @@ -15341,7 +15430,7 @@ revol-xut = { email = "revol-xut@protonmail.com"; name = "Tassilo Tanneberger"; - github = "revol-xut"; + github = "tanneberger"; githubId = 32239737; keys = [{ fingerprint = "91EB E870 1639 1323 642A 6803 B966 009D 57E6 9CC6"; @@ -16045,8 +16134,8 @@ }; SamirTalwar = { email = "lazy.git@functional.computer"; - github = "abstracte"; - githubId = 47852; + github = "SamirTalwar"; + githubId = 47582; name = "Samir Talwar"; }; samlich = { @@ -16237,6 +16326,11 @@ githubId = 5104601; name = "schnusch"; }; + Schweber = { + github = "Schweber"; + githubId = 64630479; + name = "Schweber"; + }; sciencentistguy = { email = "jamie@quigley.xyz"; name = "Jamie Quigley"; @@ -17337,13 +17431,12 @@ name = "Stel Abrego"; }; stepbrobd = { - name = "StepBroBD"; - github = "StepBroBD"; + name = "Yifei Sun"; + email = "ysun@hey.com"; + github = "stepbrobd"; githubId = 81826728; - email = "Hi@StepBroBD.com"; - matrix = "@stepbrobd:matrix.org"; keys = [{ - fingerprint = "5D8B FA8B 286A C2EF 6EE4 8598 F742 B72C 8926 1A51"; + fingerprint = "AC7C 52E6 BA2F E8DE 8F0F 5D78 D973 170F 9B86 DB70"; }]; }; stephank = { @@ -18348,6 +18441,11 @@ github = "NoneTirex"; githubId = 26038207; }; + tirimia = { + name = "Theodor-Alexandru Irimia"; + github = "tirimia"; + githubId = 11174371; + }; titanous = { email = "jonathan@titanous.com"; github = "titanous"; @@ -18526,6 +18624,12 @@ githubId = 1486805; name = "Toon Nolten"; }; + tornax = { + email = "tornax@pm.me"; + github = "TornaxO7"; + githubId = 50843046; + name = "tornax"; + }; toschmidt = { email = "tobias.schmidt@in.tum.de"; github = "toschmidt"; @@ -19222,6 +19326,12 @@ githubId = 118959; name = "VinyMeuh"; }; + viperML = { + email = "ayatsfer@gmail.com"; + github = "viperML"; + githubId = 11395853; + name = "Fernando Ayats"; + }; viraptor = { email = "nix@viraptor.info"; github = "viraptor"; @@ -19319,6 +19429,12 @@ githubId = 3413119; name = "Vonfry"; }; + vonixxx = { + email = "vonixxx@tuta.io"; + github = "vonixxx"; + githubId = 144771550; + name = "Luca Uricariu"; + }; votava = { email = "votava@gmail.com"; github = "janvotava"; diff --git a/nixpkgs/maintainers/scripts/README.md b/nixpkgs/maintainers/scripts/README.md new file mode 100644 index 000000000000..2b99a4e75114 --- /dev/null +++ b/nixpkgs/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 diff --git a/nixpkgs/maintainers/scripts/doc/list-systemd-manpages.zsh b/nixpkgs/maintainers/scripts/doc/list-systemd-manpages.zsh new file mode 100755 index 000000000000..6737a4d3fef1 --- /dev/null +++ b/nixpkgs/maintainers/scripts/doc/list-systemd-manpages.zsh @@ -0,0 +1,33 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i zsh -p zsh +set -euo pipefail + +# cd into nixpkgs' root, get the store path of `systemd.man` +cd "$(dirname "$0")/../../.." +SYSTEMD_MAN_DIR="$(nix-build -A systemd.man)/share/man" + +# For each manual section +for section in {1..8}; do + sec_dir="${SYSTEMD_MAN_DIR}/man${section}" + + # skip section 3 (library calls) + ! [[ $section -eq 3 ]] || continue + + # for each manpage in that section (potentially none) + for manpage in ${sec_dir}/*(N); do + # strip the directory prefix and (compressed) manpage suffix + page="$(basename "$manpage" ".${section}.gz")" + + # if this is the manpage of a service unit + if [[ "$page" =~ ".*\.service" ]]; then + # ... and a manpage exists without the `.service` suffix + potential_alias="${sec_dir}/${page%\.service}.${section}.gz" + ! [[ -e "${potential_alias}" && + # ... which points to the same file, then skip + "$(gunzip -c "${potential_alias}")" == ".so ${page}.${section}" ]] || continue + fi + + # else produce a JSON fragment, with the link to the upstream manpage (as HTML) + echo " \"${page}(${section})\": \"https://www.freedesktop.org/software/systemd/man/${page}.html\"," + done +done diff --git a/nixpkgs/maintainers/scripts/get-maintainer.sh b/nixpkgs/maintainers/scripts/get-maintainer.sh new file mode 100755 index 000000000000..3061d2ccc72f --- /dev/null +++ b/nixpkgs/maintainers/scripts/get-maintainer.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p jq ncurses +# shellcheck shell=bash + +# Get a nixpkgs maintainer's metadata as a JSON object +# see HELP_MESSAGE just below, or README.md. + +set -euo pipefail + +declare -A SELECTORS=( [handle]= [email]= [github]= [githubId]= [matrix]= [name]= ) +HELP_MESSAGE="usage: '$0' [selector] value +examples: + get-maintainer.sh nicoo + get-maintainer.sh githubId 1155801 + +\`selector\` defaults to 'handle', can be one of: + ${!SELECTORS[*]} +" + +MAINTAINERS_DIR="$(dirname "$0")/.." + +die() { + tput setaf 1 # red + echo "'$0': $*" + tput setaf 0 # back to black + exit 1 +} + +listAsJSON() { + nix-instantiate --eval --strict --json "${MAINTAINERS_DIR}/maintainer-list.nix" +} + +parseArgs() { + [ $# -gt 0 -a $# -lt 3 ] || { + echo "$HELP_MESSAGE" + die "invalid number of arguments (must be 1 or 2)" + } + + if [ $# -eq 1 ]; then + selector=handle + else + selector="$1" + shift + fi + [ -z "${SELECTORS[$selector]-n}" ] || { + echo "Valid selectors are:" "${!SELECTORS[@]}" >&2 + die "invalid selector '$selector'" + } + + value="$1" + shift +} + +query() { + # explode { a: A, b: B, ... } into A + {handle: a}, B + {handle: b}, ... + local explode="to_entries[] | .value + { \"handle\": .key }" + + # select matching items from the list + # TODO(nicoo): Support approximate matching for `name` ? + local select + case "$selector" in + githubId) + select="select(.${selector} == $value)" + ;; + *) + select="select(.${selector} == \"$value\")" + esac + + echo "$explode | $select" +} + +parseArgs "$@" +listAsJSON | jq -e "$(query)" diff --git a/nixpkgs/maintainers/scripts/luarocks-packages.csv b/nixpkgs/maintainers/scripts/luarocks-packages.csv index c0f416edcb9e..1a581a450c26 100644 --- a/nixpkgs/maintainers/scripts/luarocks-packages.csv +++ b/nixpkgs/maintainers/scripts/luarocks-packages.csv @@ -17,6 +17,7 @@ dkjson,,,,,, fennel,,,,,,misterio77 fifo,,,,,, fluent,,,,,,alerque +fzy,,,,,,mrcjkb gitsigns.nvim,https://github.com/lewis6991/gitsigns.nvim.git,,,,5.1, haskell-tools.nvim,,,,,, http,,,,0.3-0,,vcunat diff --git a/nixpkgs/maintainers/team-list.nix b/nixpkgs/maintainers/team-list.nix index 389aca1123b6..4209b5058790 100644 --- a/nixpkgs/maintainers/team-list.nix +++ b/nixpkgs/maintainers/team-list.nix @@ -290,6 +290,7 @@ with lib.maintainers; { members = [ theuni dpausp + frlan leona ]; scope = "Team for Flying Circus employees who collectively maintain packages."; @@ -429,6 +430,7 @@ with lib.maintainers; { cleeyv ryantm lassulus + yayayayaka ]; scope = "Maintain Jitsi."; shortName = "Jitsi"; @@ -562,6 +564,18 @@ with lib.maintainers; { enableFeatureFreezePing = true; }; + lxc = { + members = [ + aanderse + adamcstephens + jnsgruk + megheaiulian + mkg20001 + ]; + scope = "All things linuxcontainers. LXC, Incus, LXD and related packages."; + shortName = "lxc"; + }; + lxqt = { members = [ romildo |