So, as someone very new to Nix, could someone check whether my understanding makes some sense:
flakes let you reproducibly compose nix
this also means that results can be cached, with all inputs of a flake being copied to the store so they can be cheaply reused
this includes the folder the flake is in, but there may often be build outputs or similar files that are unnecessary & expensive to copy
therefore these can be excluded from the copy; this isn't done by a configuration specific to the flake but by checking what is tracked by git
this is both confusing and privileges git over other vcs; in particular, using jujutsu with a collocated git repo is very unpleasant
but given that the folder contents aren't locked in flake.lock and already are present on the filesystem anyways… what even is the point of copying it too to the store in the first place?
#nix #flakes


