I’m using nh for sometime now.
I’m looking for a way to see the changes before updating.
nh have -n to just do a dry run check , but it builds everything , which consumes my metered internet connection.
So before doing a full upgrade, I want to quickly check how much internet data is needed for my upgrade, anyone have any tricks to find this?
As far as I understand, -n has to build first to know what exactly will be performed.
There is currently not really a way to know the runtime dependencies of a closure without building it first.
What could be done is to print the differences in the derivations, which might tell you things that won’t be needed for the download…
nix build does in theory know about the --dry-run flag–which nh doesn’t forward as far as I can tell–which would make nix print what it thinks it needs to download and what it thinks it has to build locally. This will still result in looking up substitutors, so it is not free of charge.
Though if you are tight or limited on bandwidth, you very likely want to ensure to not update much more than every other week, to stay within the staging cycles. Those usually require downloading a near full closure anyway.