nixpkgs/maintainers/scripts
Robert Scott fbad66daa5 add "Check cherry-picks" github action
the intention being to catch commits which declare themselves as
cherry-picks, but either:

 - don't refer to a commit in the master or staging branches
 - are significantly altered from their original commit

determining the latter is not an exact science, but the heuristic of
looking for differences in only the added or removed lines seems to
work quite well. still, this should be considered an assistant
for reviewers rather than a hard failure. unfortunately github
workflows don't have a way of raising a gentle warning instead of a
failure.

the formatting of the output also leaves something to be desired due
to the limitations of github actions' "group" commands.
2024-04-01 16:10:13 +01:00
..
bootstrap-files maintainers/scripts/bootstrap-files: fix nar extract on linux 2024-03-22 09:10:27 +00:00
convert-to-import-cargo-lock maintainers/scripts/convert-to-import-cargo-lock: fetch submodules 2023-03-26 00:02:16 +01:00
doc doc/manpage-urls.json: Add *all* systemd manpages 2023-12-12 23:06:11 +00:00
haskell maintainers/haskell/hydra-report: slightly optimise get-report --slow 2024-03-30 13:56:58 +01:00
kde scripts/kde/generate-sources: fix shebang 2024-03-26 21:09:34 +03:00
all-tarballs.nix release.nix: namespace bootstrap tools with triples 2023-10-07 19:38:01 +00:00
build.nix
check-by-name.sh workflows/check-by-name.yml: Switch to new separate repo 2024-03-26 21:24:48 +01:00
check-cherry-picks.sh add "Check cherry-picks" github action 2024-04-01 16:10:13 +01:00
check-hydra-by-maintainer.nix maintainers/scripts/check-hydra-by-maintainer: remove pkgs.lib use 2023-05-22 23:28:53 +02:00
check-maintainer-github-handles.sh
check-maintainers-sorted.nix
convert-to-import-cargo-lock.sh maintainers/scripts/convert-to-import-cargo-lock: init 2023-03-26 00:02:15 +01:00
copy-tarballs.pl Merge pull request #223261 from xworld21/copy-tarballs-use-all-urls 2023-05-11 16:20:07 +02:00
db-to-md.sh
debian-patches.sh
dep-licenses.sh
eval-release.nix Avoid top-level with ...; in maintainers/scripts/eval-release.nix 2024-03-06 12:21:08 -08:00
eval-release.sh
feature-freeze-teams.pl
fetch-kde-qt.sh maintainers/scripts/fetch-kde-qt.sh: fix handling of fallback file urls 2023-03-16 20:58:56 +08:00
find-tarballs.nix Avoid with lib; at the top level in maintainers/scripts/find-tarballs.nix 2024-03-06 12:10:16 -08:00
fix-maintainers.pl maintainers/fix-maintainers.pl: error on unset GH_TOKEN 2023-10-09 09:05:38 -04:00
get-maintainer.sh maintainers-list.nix: Document (current) invitation process, add get-maintainer.sh (#267084) 2023-12-08 02:57:38 +01:00
hydra_eval_check
hydra-eval-failures.py
luarocks-config.lua
luarocks-packages.csv luaPackages.mimetypes: init at 1.0.0-3 2024-03-20 13:08:02 +01:00
mdize-module.sh
nix-call-package
nix-diff.sh
nix-generate-from-cpan.nix treewide: add meta.mainProgram to packages with a single binary 2024-03-19 03:14:51 +01:00
nix-generate-from-cpan.pl nix-generate-from-cpan: generate SRI hashes 2023-07-16 15:43:23 +01:00
nixpkgs-lint.nix treewide: add meta.mainProgram to packages with a single binary 2024-03-19 03:14:51 +01:00
nixpkgs-lint.pl
patchelf-hints.sh
pluginupdate.py maintainers/scripts/pluginupdate.py: filter invalid XML characters 2024-01-03 23:23:09 +01:00
README.md workflows/check-by-name.yml: Switch to new separate repo 2024-03-26 21:24:48 +01:00
rebuild-amount.sh
remove-old-aliases.py maintainers/scripts/remove-old-aliases: Drop pkgs. prefix if present 2023-09-12 11:41:36 +00:00
sha-to-sri.py maintainers/scripts/sha256-to-SRI.py: rename to sha-to-sri.py 2023-09-22 18:37:24 +02:00
update-channel-branches.sh
update-dotnet-lockfiles.nix buildDotnetModule: make fetch-deps find output path automatically 2023-06-24 19:13:16 -03:00
update-octave-packages
update-octave-shell.nix
update-python-libraries
update-redirected-urls.sh
update-ruby-packages
update.nix
update.py maintainers/scripts/update.nix: Remove unicode from message and comply with CONTRIBUTING.md 2023-04-05 11:28:47 +10:00
vanity-manual-equalities.txt
vanity.sh

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

check-by-name.sh

An alias for pkgs/test/check-by-name/run-local.sh, see documentation.

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.