depot/third_party/nixpkgs/maintainers/scripts
Default email 657f08b14c Project import generated by Copybara.
GitOrigin-RevId: 807e9154dcb16384b1b765ebe9cd2bba2ac287fd
2024-10-29 11:11:06 +00:00
..
bootstrap-files Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
convert-to-import-cargo-lock Project import generated by Copybara. 2024-09-26 11:04:55 +00:00
doc Project import generated by Copybara. 2024-01-02 12:29:13 +01:00
haskell Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
kde Project import generated by Copybara. 2024-10-11 07:15:48 +02:00
pluginupdate-py Project import generated by Copybara. 2024-09-26 11:04:55 +00:00
__init__.py Project import generated by Copybara. 2024-07-27 08:49:29 +02:00
all-tarballs.nix Project import generated by Copybara. 2023-10-09 21:29:22 +02:00
build.nix Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
check-by-name.sh Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
check-cherry-picks.sh Project import generated by Copybara. 2024-04-21 17:54:59 +02:00
check-hydra-by-maintainer.nix Project import generated by Copybara. 2023-07-15 19:15:38 +02:00
check-maintainer-github-handles.sh Project import generated by Copybara. 2021-12-18 20:06:50 -05:00
check-maintainers-sorted.nix Project import generated by Copybara. 2023-03-15 17:39:30 +01:00
convert-to-import-cargo-lock.sh Project import generated by Copybara. 2023-03-27 12:17:25 -07:00
copy-tarballs.pl Project import generated by Copybara. 2024-06-20 20:27:18 +05:30
db-to-md.sh Project import generated by Copybara. 2023-01-11 08:51:40 +01:00
debian-patches.sh Project import generated by Copybara. 2022-12-02 08:20:57 +00:00
dep-licenses.sh Project import generated by Copybara. 2022-04-15 03:41:22 +02:00
eval-release.nix Project import generated by Copybara. 2024-05-15 17:35:15 +02:00
eval-release.sh Project import generated by Copybara. 2022-12-02 08:20:57 +00:00
feature-freeze-teams.pl Project import generated by Copybara. 2022-10-21 20:38:19 +02:00
fetch-kde-qt.sh Project import generated by Copybara. 2024-10-11 07:15:48 +02:00
find-tarballs.nix Project import generated by Copybara. 2024-04-21 17:54:59 +02:00
fix-maintainers.pl Project import generated by Copybara. 2023-10-19 15:55:26 +02:00
get-maintainer.sh Project import generated by Copybara. 2024-01-02 12:29:13 +01:00
hydra-eval-failures.py Project import generated by Copybara. 2020-10-27 01:29:36 +01:00
hydra_eval_check Project import generated by Copybara. 2020-04-24 19:36:52 -04:00
luarocks-config.lua Project import generated by Copybara. 2022-06-16 19:23:12 +02:00
luarocks-packages.csv Project import generated by Copybara. 2024-10-29 11:11:06 +00:00
nix-call-package Project import generated by Copybara. 2020-04-24 19:36:52 -04:00
nix-diff.sh Project import generated by Copybara. 2020-04-24 19:36:52 -04:00
nix-generate-from-cpan.nix Project import generated by Copybara. 2024-04-21 17:54:59 +02:00
nix-generate-from-cpan.pl Project import generated by Copybara. 2023-07-15 19:15:38 +02:00
nixpkgs-lint.nix Project import generated by Copybara. 2024-06-05 17:53:02 +02:00
nixpkgs-lint.pl Project import generated by Copybara. 2020-11-30 09:33:03 +01:00
patchelf-hints.sh Project import generated by Copybara. 2022-06-16 19:23:12 +02:00
README.md Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
rebuild-amount.sh Project import generated by Copybara. 2024-10-29 11:11:06 +00:00
remove-old-aliases.py Project import generated by Copybara. 2023-10-09 21:29:22 +02:00
sha-to-sri.py Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
update-channel-branches.sh Project import generated by Copybara. 2022-12-02 08:20:57 +00:00
update-dotnet-lockfiles.nix Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
update-octave-packages Project import generated by Copybara. 2023-03-24 01:07:29 +01:00
update-octave-shell.nix Project import generated by Copybara. 2023-03-24 01:07:29 +01:00
update-python-libraries Project import generated by Copybara. 2023-03-04 15:14:45 +03:00
update-redirected-urls.sh Project import generated by Copybara. 2020-11-30 09:33:03 +01:00
update-ruby-packages Project import generated by Copybara. 2021-08-10 22:31:46 +08:00
update.nix Project import generated by Copybara. 2024-09-19 17:19:46 +03:00
update.py Project import generated by Copybara. 2024-10-11 07:15:48 +02:00
vanity-manual-equalities.txt Project import generated by Copybara. 2020-04-24 19:36:52 -04:00
vanity.sh Project import generated by Copybara. 2021-12-06 17:07:01 +01:00

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.

Conventions

sha-to-sri.py

sha-to-sri.py path ... (atomically) rewrites hash attributes (named hash or sha(1|256|512)) into the SRI format: hash = "{hash name}-{base64 encoded value}".

path must point to either a nix file, or a directory which will be automatically traversed.

sha-to-sri.py automatically skips files whose first non-empty line contains generated by or do not edit. Moreover, when walking a directory tree, the script will skip files whose name is yarn.nix or contains generated.