How to get an updated packages list or report after updating channels?

Hi there, I am configuring my NixOS via a local flake repository where I have nixpkgs and nixpkgs-unstable as an input. Is there a possibility to get a list or maybe some kind of report of updated packages after updating the flake.lock and rebuilding the system?

Something like this:
—nixpkgs—
git 2.35.0 → 2.36.0

You can diff two closures with nix store diff-closures or nvd diff:

$ begin
      set -l profiles (fd -t l --exact-depth=1 'system.*link' /nix/var/nix/profiles/)
      nvd diff $profiles[-2] $profiles[-1]
  end
<<< /nix/var/nix/profiles/system-2373-link
>>> /nix/var/nix/profiles/system-2374-link
Version changes:
[C*]  #01  bcache-tools          1.0.7 x2, 1.0.7_fish-completions x2 -> 1.0.7 x2, 1.0.7_fish-completions x3
[C*]  #02  coreutils-full        9.0, 9.0_fish-completions, 9.1, 9.1-info, 9.1_fish-completions -> 9.0, 9.0_fish-completions, 9.1, 9.1-info, 9.1_fish-completions x2
[C*]  #03  cpio                  2.13 x2, 2.13_fish-completions x2 -> 2.13 x2, 2.13_fish-completions x3
[C*]  #04  dconf                 0.40.0 x2, 0.40.0-lib x4, 0.40.0_fish-completions x2 -> 0.40.0 x2, 0.40.0-lib x4, 0.40.0_fish-completions x3
[C*]  #05  diffutils             3.8 x2, 3.8-info, 3.8_fish-completions x2 -> 3.8 x2, 3.8-info, 3.8_fish-completions x3
[C*]  #06  dosfstools            4.2 x2, 4.2_fish-completions x2 -> 4.2 x2, 4.2_fish-completions x3
[C.]  #07  etc-shells            <none> x2 -> <none> x3
[C*]  #08  findutils             4.9.0 x2, 4.9.0-info, 4.9.0_fish-completions x2 -> 4.9.0 x2, 4.9.0-info, 4.9.0_fish-completions x3
[C*]  #09  fish                  3.4.1, 3.4.1_fish-completions, 3.5.0, 3.5.0-doc, 3.5.0_fish-completions -> 3.4.1, 3.4.1_fish-completions, 3.5.0, 3.5.0_fish-completions, 3.5.1, 3.5.1-doc, 3.5.1_fish-completions
[C*]  #10  fontconfig            2.13.94, 2.13.94-bin, 2.13.94-dev, 2.13.94-lib, 2.13.94_fish-completions, 2.14.0 x2, 2.14.0-bin x2, 2.14.0-dev, 2.14.0-lib x2, 2.14.0_fish-completions -> 2.13.94, 2.13.94-bin, 2.13.94-dev, 2.13.94-lib, 2.13.94_fish-completions, 2.14.0 x2, 2.14.0-bin x2, 2.14.0-dev, 2.14.0-lib x2, 2.14.0_fish-completions x2
[C*]  #11  fuse                  2.9.9 x2, 2.9.9_fish-completions x2, 3.10.5, 3.10.5_fish-completions, 3.11.0, 3.11.0_fish-completions -> 2.9.9 x2, 2.9.9_fish-completions x3, 3.10.5, 3.10.5_fish-completions, 3.11.0, 3.11.0_fish-completions x2
[C*]  #12  gnugrep               3.7 x4, 3.7-info, 3.7_fish-completions x2 -> 3.7 x4, 3.7-info, 3.7_fish-completions x3
[C*]  #13  gnused                4.8 x3, 4.8-info, 4.8_fish-completions x2 -> 4.8 x3, 4.8-info, 4.8_fish-completions x3
[C*]  #14  gnutar                1.34 x4, 1.34-info, 1.34_fish-completions x2 -> 1.34 x4, 1.34-info, 1.34_fish-completions x3
[C*]  #15  iceauth               1.0.8 x2, 1.0.8_fish-completions x2 -> 1.0.8 x2, 1.0.8_fish-completions x3
[C*]  #16  iproute2              5.17.0, 5.17.0_fish-completions, 5.18.0, 5.18.0_fish-completions -> 5.17.0, 5.17.0_fish-completions, 5.18.0, 5.18.0_fish-completions x2
[C*]  #17  iputils               20211215 x2, 20211215_fish-completions x2 -> 20211215 x2, 20211215_fish-completions x3
[C*]  #18  kexec-tools           2.0.23 x4, 2.0.23_fish-completions x2 -> 2.0.23 x4, 2.0.23_fish-completions x3
[C*]  #19  less                  600 x2, 600_fish-completions x2 -> 600 x2, 600_fish-completions x3
[C*]  #20  libressl              3.4.3, 3.4.3-nc, 3.4.3_fish-completions, 3.5.3, 3.5.3-man, 3.5.3-nc, 3.5.3_fish-completions -> 3.4.3, 3.4.3-nc, 3.4.3_fish-completions, 3.5.3, 3.5.3-man, 3.5.3-nc, 3.5.3_fish-completions x2
[C*]  #21  man-db                2.10.2 x2, 2.10.2-doc, 2.10.2_fish-completions x2 -> 2.10.2 x2, 2.10.2-doc, 2.10.2_fish-completions x3
[C*]  #22  mdadm                 4.1 x2, 4.1_fish-completions x2 -> 4.1 x2, 4.1_fish-completions x3
[C*]  #23  mkpasswd              5.5.12 x2, 5.5.12_fish-completions x2 -> 5.5.12 x2, 5.5.12_fish-completions x3
[C*]  #24  net-tools             2.10 x2, 2.10_fish-completions x2 -> 2.10 x2, 2.10_fish-completions x3
[U.]  #25  nixos-system-desktop  22.11.20220720.0d67d56 -> 22.11.20220720.28b9471
[C*]  #26  openssh               9.0p1 x2, 9.0p1_fish-completions x2 -> 9.0p1 x2, 9.0p1_fish-completions x3
[C*]  #27  patch                 2.7.6 x2, 2.7.6_fish-completions x2 -> 2.7.6 x2, 2.7.6_fish-completions x3
[C*]  #28  polkit                0.120 x3, 0.120-bin x2, 0.120_fish-completions x2, 1.pam x2 -> 0.120 x3, 0.120-bin x2, 0.120_fish-completions x3, 1.pam x2
[C*]  #29  procps                3.3.16 x2, 3.3.16_fish-completions x2 -> 3.3.16 x2, 3.3.16_fish-completions x3
[C*]  #30  rtkit                 0.13 x2, 0.13_fish-completions x2 -> 0.13 x2, 0.13_fish-completions x3
[C*]  #31  setxkbmap             1.3.2 x2, 1.3.2_fish-completions x2 -> 1.3.2 x2, 1.3.2_fish-completions x3
[C*]  #32  shared-mime-info      2.2, 2.2_fish-completions -> 2.2, 2.2_fish-completions x2
[C*]  #33  which                 2.21 x2, 2.21_fish-completions x2 -> 2.21 x2, 2.21_fish-completions x3
[C*]  #34  xauth                 1.1 x2, 1.1_fish-completions x2 -> 1.1 x2, 1.1_fish-completions x3
[C*]  #35  xdg-utils-unstable    2020-10-21 x2, 2020-10-21_fish-completions x2 -> 2020-10-21 x2, 2020-10-21_fish-completions x3
[C*]  #36  xinput                1.6.3 x2, 1.6.3_fish-completions x2 -> 1.6.3 x2, 1.6.3_fish-completions x3
[C*]  #37  xlsclients            1.1.4 x2, 1.1.4_fish-completions x2 -> 1.1.4 x2, 1.1.4_fish-completions x3
[C*]  #38  xorg-server           1.20.14 x2, 1.20.14_fish-completions x2 -> 1.20.14 x2, 1.20.14_fish-completions x3
[C*]  #39  xprop                 1.2.5 x2, 1.2.5_fish-completions x2 -> 1.2.5 x2, 1.2.5_fish-completions x3
[C*]  #40  xrandr                1.5.1 x2, 1.5.1_fish-completions x2 -> 1.5.1 x2, 1.5.1_fish-completions x3
[C*]  #41  xrdb                  1.2.1 x2, 1.2.1_fish-completions x2 -> 1.2.1 x2, 1.2.1_fish-completions x3
[C*]  #42  xset                  1.2.4 x2, 1.2.4_fish-completions x2 -> 1.2.4 x2, 1.2.4_fish-completions x3
[C*]  #43  xsetroot              1.1.2 x2, 1.1.2_fish-completions x2 -> 1.1.2 x2, 1.1.2_fish-completions x3
[C*]  #44  xterm                 372 x2, 372_fish-completions x2 -> 372 x2, 372_fish-completions x3
Closure size: 7943 -> 7988 (167 paths added, 122 paths removed, delta +45).

To see what will change for an update before activating it you can diff /run/current-system and result (from nixos-rebuild build).

3 Likes