Commit 3f9d8b0
feat: provide nvd and nix-diff view of facter changes
Provides a `debug` namespace within `config.facter` which can be used to display a diff between the system closure with facter enabled, and without.
The diffs are in the form of `nvd` or `nix-diff` output e.g. higher level summary versus detailed breakdown.
Usage:
- `nix run .#nixosConfigurations.basic.config.facter.debug.nvd`
- `nix run .#nixosConfigurations.basic.config.facter.debug.nix-diff`
Examples:
```
❯ nix run .#nixosConfigurations.basic.config.facter.debug.nvd
<<< /nix/store/fqbia5p8hfnyzxipfjmzxn8v3b69mjvs-nixos-system-nixos-24.11.20240831.12228ff
>>> /nix/store/ijkh9sq03y72pfrjvncrsrhwh7g6k8q0-nixos-system-nixos-24.11.20240831.12228ff
Added packages:
[A.] #1 X-Reload-Triggers-systemd-networkd <none>
[A.] #2 X-Restart-Triggers-systemd-networkd <none>
[A.] #3 X-Restart-Triggers-systemd-resolved <none>
[A.] #4 etc-systemd-networkd.conf <none>
[A.] #5 etc-systemd-resolved.conf <none>
[A.] #6 graphics-driver.conf <none>
[A.] #7 graphics-drivers <none>
[A.] #8 hwdata 0.385
[A.] #9 libXfixes 6.0.1
[A.] #10 libXxf86vm 1.1.5
[A.] #11 libdrm 2.4.122
[A.] #12 libpciaccess 0.18.1
[A.] #13 libxshmfence 1.3.2
[A.] #14 llvm 18.1.8-lib
[A.] #15 lm-sensors 3.6.0
[A.] #16 mesa 24.2.1, 24.2.1-drivers
[A.] #17 unit 99-ethernet-default-dhcp.network, 99-wireless-client-dhcp.network
[A.] #18 unit-systemd-network-wait-online-.service <none>
[A.] #19 unit-systemd-networkd-wait-online.service <none>
[A.] #20 unit-systemd-networkd.service <none>
[A.] #21 unit-systemd-networkd.socket <none>
[A.] #22 unit-systemd-resolved.service <none>
[A.] #23 vulkan-loader 1.3.283.0
[A.] #24 wayland 1.23.0
[A.] #25 xcb-util-keysyms 0.4.1
Removed packages:
[R.] #1 X-Restart-Triggers-resolvconf <none>
[R-] #2 dhcpcd 10.0.6
[R.] #3 dhcpcd.conf <none>
[R-] #4 openresolv 3.13.2
[R.] #5 unit-dhcpcd.service <none>
[R.] #6 unit-network-setup.service <none>
[R.] #7 unit-resolvconf.service <none>
[R.] #8 unit-script-network-setup-start <none>
Closure size: 562 -> 581 (55 paths added, 36 paths removed, delta +19, disk usage +700.6MiB).
```
```
❯ nix run .#nixosConfigurations.basic.config.facter.debug.nix-diff
- /nix/store/fqbia5p8hfnyzxipfjmzxn8v3b69mjvs-nixos-system-nixos-24.11.20240831.12228ff:{out}
+ /nix/store/ijkh9sq03y72pfrjvncrsrhwh7g6k8q0-nixos-system-nixos-24.11.20240831.12228ff:{out}
• The input derivation named `boot.json` differs
- /nix/store/zcmdy29f5di6rrfkkld3x773q1d7c1bv-boot.json.drv:{out}
+ /nix/store/j0wxsmw6fxgzd59pdcljkpq430jbk8jn-boot.json.drv:{out}
• The input derivation named `initrd-linux-6.6.48` differs
- /nix/store/3z3jgifv3rj5wrh4cx23gzc9hlrwrxwj-initrd-linux-6.6.48.drv:{out}
+ /nix/store/ds7pcp97k33p93z460b5vzrii02jjkcf-initrd-linux-6.6.48.drv:{out}
• The input derivation named `initrd-nixos.conf` differs
- /nix/store/y458hw08d5hv2bcf295fv9wvbsfvprrq-initrd-nixos.conf.drv:{out}
+ /nix/store/989v278ws16mnvlx6fwsa925vgx9a0ia-initrd-nixos.conf.drv:{out}
• The environments do not match:
text=''
virtio_balloon
virtio_console
virtio_rng
virtio_gpu
bochs
dm_mod
''
• The input derivation named `linux-6.6.48-modules-shrunk` differs
- /nix/store/dk2xshi6hr85wjyia60nizahl2rq31sz-linux-6.6.48-modules-shrunk.drv:{out}
+ /nix/store/xxk67p9wy7hxq33gd1mfz5dqcsm2mhsr-linux-6.6.48-modules-shrunk.drv:{out}
• The environments do not match:
rootModules=''
virtio_net virtio_pci virtio_mmio virtio_blk 9p 9pnet_virtio uhci_hcd ata_piix floppy virtio_blk virtio_pci ext2 ext4 autofs tpm-tis tpm-crb efivarfs ahci sata_nv sata_via sata_sis sata_uli ata_piix pata_marvell nvme sd_mod sr_mod mmc_block uhci_hcd ehci_hcd ehci_pci ohci_hcd ohci_pci xhci_hcd xhci_pci usbhid hid_generic hid_lenovo hid_apple hid_roccat hid_logitech_hidpp hid_logitech_dj hid_microsoft hid_cherry hid_corsair pcips2 atkbd i8042 rtc_cmos virtio_balloon virtio_console virtio_rng virtio_gpu bochs dm_mod
''
• Skipping environment comparison
• Skipping environment comparison
...
...
...
```
Co-authored-by: magicrb <richard@brezak.sk>1 parent fa11d87 commit 3f9d8b0
2 files changed
+74
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
0 commit comments