Skip to content

uncenter/nixpkgs-track

Repository files navigation

nixpkgs-track

Track where Nixpkgs pull requests have reached (is that update in nixpkgs-unstable yet??).

$ nixpkgs-track 370713
[370713] helix: 24.07 -> 25.01
Merged 3 days 23 hours 9 minutes and 3 seconds ago (2025-01-03T21:58:20+00:00), 1 hour 18 minutes and 54 seconds after creation.
master: ✅
staging: ✅
staging-next: ✅
nixpkgs-unstable: ✅
nixos-unstable-small: ✅
nixos-unstable: ✅

Installation

Nix

nixpkgs-track is available from Nixpkgs.

nix run nixpkgs#nixpkgs-track

Cargo

cargo install nixpkgs-track

Usage

The simplest way to track a pull request is like so:

nixpkgs-track <PULL_REQUEST>

Where PULL_REQUEST is either the numerical ID or the GitHub URL of the pull request to track. For example, both 370713 and https://github.com/NixOS/nixpkgs/pull/370713 are valid references to github.com/NixOS/nixpkgs/pull/370713.

Tip

Depending on usage, you may need to provide a GitHub API token to avoid rate-limiting. This can be done with the --token option or GITHUB_TOKEN environment variable if necessary.

nixpkgs-track also supports saving a list of pull requests to check in the future.

add <PULL_REQUESTS...>

Add specified pull request(s) to the list.

remove [<PULL_REQUESTS...> | --all | --interactive]

Remove specified pull request(s) from the list. Remove all pull requests from the list with --all. Interactively remove pull requests from the list with --interactive.

list

List tracked pull requests and their metadata.

check

Check each tracked pull request. Equivalent to running nixpkgs-track <PULL_REQUEST> for each pull request in the list.

Library

This crate also exports a simple library interface for other programs. This is available as nixpkgs-track_lib on crates.io.

The two primary functions are nixpkgs_track_lib::fetch_nixpkgs_pull_request for fetching pull request data from the GitHub API, and nixpkgs_track_lib::branch_contains_commit for checking if a commit SHA (such as from a merged pull request: PullRequest.merge_commit_sha) is present in a specified branch on GitHub.

The implementation used for the command line interface can be found at crates/nixpkgs-track/src/main.rs, under the check function. See also src/commands/misc/nixpkgs.rs of @isabelroses's Blåhaj bot for Discord.

License & Credit

nixpkgs-track was originally created as a local and reliable CLI alternative to Alyssa Ross's Nixpkgs Pull Request Tracker website and based on getchoo/nixpkgs-tracker-bot. Currently though, nixpkgs-track is primarily derived from the recent ocfox/nixpkgs-tracker project.

MIT

About

📦 Track where Nixpkgs pull requests have reached.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •