Skip to content

About

Review a nixpkgs pull request, get yours on the list

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Maintainer Mode

Tools that make it easier to contribute to nixpkgs.

I (zimbatm) build Maintainer Mode for myself, to make my maintenance of nixpkgs more enjoyable. It runs in public at maintainermode.org, so other contributors can use it too. It is not an official NixOS project.

nixpkgs is big: more than 100,000 packages, 2,000 NixOS modules, thousands of open pull requests and issues. Most of the friction is finding what needs you, and knowing enough about it to act. Maintainer Mode reduces that friction in three ways.

1. Navigate nixpkgs

Information about all of nixpkgs, for everyone, with no login:

  • A page for each package, NixOS module and directory, with all the meta information, its maintainers and teams, its open issues and pull requests, and its health:
    • the newest upstream release, and the open version bumps;
    • advisories from the security tracker, with CVSS, EPSS and OSV;
    • the last Hydra build, or the NixOS test of a module;
    • the version in each channel, and when a fix needs a backport;
    • packaging gaps, and one risk score that sums it all up.
  • A page for each pull request: its place in the queues, the packages it touches and their health, the diff, the reviews and a review checklist. You leave the review on GitHub.
  • Search across packages, modules and directories. An exact name opens its page, and @login opens the page of a person.
  • Statistics: the state of nixpkgs month by month (pull requests, reviews, merge times), and of its packages (outdated, vulnerable, unmaintained).
  • Queues: pull requests that need review, and pull requests ready to merge.

2. Make it yours

Sign in with GitHub, and Maintainer Mode shows what you care about:

  • What you maintain: every package and module whose meta.maintainers or meta.teams names you, worst first.
  • What you watch: subscribe to any package, module or directory.
  • Needs you: the top of the home page. It lists what waits for you, the most urgent first: a serious advisory on your machines, a new review on your pull request, a blocked pull request, a pull request to review. Snooze an item, or push Next to go through them.
  • Your pull requests: set a follow-up plan on each one. If nobody reviews in some days, you get a reminder to ask the maintainers, or to merge it yourself when you are a committer. Maintainer Mode never merges.
  • Needs review, for you: by default, the review queue shows the pull requests on what you maintain or watch.
  • Your system: upload the closure of your machines, and follow the packages you really run. It stays private.
  • Notifications: an inbox on the site and a private Atom feed for the reviews, merges and closes of your own pull requests, and for new pull requests, merges, issues, advisories and releases.
  • Your progress: your reviews, your streak and your goals. There is no leaderboard.
  • For committers: what is ready to merge in your areas, on the Ready to merge tab of the review page.
  • Onboarding: a first visit walks you through all of this.

3. Act on it

Buttons that start work for you, in your own repositories, with your token:

  • Review in CI runs nixpkgs-review on a pull request.
  • Update with nix-update bumps a package and pushes a branch to your fork, also when the build fails, so you can continue from there.
  • Claude Code, if you opt in to LLMs: a session on a pull request with the nixpkgs AI policy in its instructions, and an MCP server for your own tools.

New to nixpkgs?

Maintainer Mode helps you find work. nixpkgs decides how the work is done. Read its own guides first:

Principles

  • It never writes to nixpkgs. No reviews, no merges, no comments, no labels. The one write it makes is on your click: it starts a workflow in a repository you own.
  • It grants nothing. Committers decide; Maintainer Mode shows evidence.
  • No leaderboard. Review credit decides which pull requests get on the list. It never ranks people. See the rules.
  • Your data stays yours. Subscriptions, uploads and settings show only to you, and never in a public number.
  • Open about its state. Data status shows what the server has read and how fresh it is.

Documentation

The site also shows these pages, in the Docs tab of /state.

Page What it covers
docs/rules.md review credit, routing, the state of nixpkgs (/state?tab=rules)
docs/health.md package pages, the risk score, upstream, channels
docs/personal.md what you maintain and watch, your package set
docs/actions.md Actions, the LLM opt-in, the MCP server
docs/api.md the JSON API and the command line
docs/data.md how the data is read, the event log, the archive
docs/operations.md run it, its variables, what we took
docs/events.md the plan of the event log
docs/ingest.md the plan of the archive
docs/rescan.md server rescans of flakes, and their threat model

Run it

nix build
./result/bin/maintainer-mode serve --db maintainer-mode.sqlite

The NixOS module is nixosModules.default; nixosModules.instance sets up maintainermode.org. CI is nix flake check. More in docs/operations.md.

Licence

MIT

About

Review a nixpkgs pull request, get yours on the list

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages