Thanks that’s what I have ended up doing but I do lose the ability to use the lock file to record the sha.
I find it interesting that flakes can have inputs specified in the output via fetchUrl and others like that.
What’s the reason all those things are allowed and not forced to be provided in inputs.
Is it just a backwards compatibility thing.
Objection: I guess the end game of flakes is to disable “classic” fetchers.
But you could use { flake = false; } and decompress the content yourself right at the top of your flake as a sort of compatibility layer in case flakes do not yet unpack gz inputs.