Track nixpkgs package update
Be notified when to upgrade a package

1 TODO Packaging

Move elsewhere

  • no need to open a separate PR for a simple backport. Just mention on the original PR (for master) that this should be backported to 19.03
  • if for some reason you need a PR for a release branch, please base it directly on release-19.03. (staging-19.03 is only used for changes that cause mass rebuilds).
  • please use git cherry-pick -x for cherry-picking commits from master to another branch so we can track the origin of each change

2 TODO Listing packages

2.1 TODO From NixOS/nixpkgs

I maintain packages in the NixOS/nixpkgs upstream repository. Let’s make the assumption that I am listed as maintainer in those packages (if not, well, I need to open a PR). Thus, I need to list all packages (or derivation in the Nix world) where I appear as a maintainer.

We can use rg (manual) for that task :

  • searching only pkgs/
  • searching for vdemeester and maintainers on the same line
  • displaying files only
rg -l -e ".*maintainer.*vdemeester" ~/src/

/home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/ /home/vincent/src/

Once we have that list, we need to get the url or repository (GitHub, Gitlab, …) for upstream, so we can map a name with a repository. We also need to use the name (name, or pname) of the derivation (instead of the folder name or the file name). We are going to play a bit with grep and cut.

for f in ${files}; do
    names=$(cat $f | grep --perl-regexp --only-matching 'name = "\K.*"' | cut --fields=1 --delimiter='{')
    for name in ${names}; do
        echo ${name%-$}

consul traefik kail notary gomodifytags-unstable skopeo gauge go-outline kube-prompt delve gotests gopkgs skaffold go-symbols goconvey vndr-unstable kustomize godef podman conmon runc containerd docker-proxy docker-runc docker-containerd docker-init docker cni minishift git-appraise-unstable

Now that we have a list, we want to get the potential URL to subscribe too… This is gonna be tricky as there can be several cases : fetchFromGitHub, fetchFromGit, …

2.2 TODO From vdemeester/nur-packages

It’s a bit easier than for NixOS/nixpkgs, as I maintain the whole repository, thus I need to watch all the packages in this repository.

3 TODO Subscribing to release updates

4 TODO Notification

Emacs (Org mode 8.0.3)

Vincent Demeester. Last Updated 2019-12-23 Mon 19:55 (exported 2020-03-07 Sat 16:47).