<infinisil>
I mean yes, some let's should be exposed
<infinisil>
I'm not arguing against that. But Nix as a language can't default to exposing all of them
<pie_>
i didnt say all lets should or must be exposed, but if you have a mechanism for exposing a sufficient number of lets such that it isnt massively unwieldy, exposing them all should be fine too
<pie_>
if you expose some why not all
<pie_>
oh
<infinisil>
Well you can't expose them
<pie_>
i didnt look at your example
<pie_>
the problem is that its behind a function application right?
<infinisil>
I guess, but that's not a problem
<pie_>
anyway i dont know how to do this in a non-unwieldy way, and nested let contexts are probably inevitable, and also the only thing i came up with so far is the contexts would have to be assigned to a derivation after evaluation probably
<pie_>
infinisil: oh, its not a problem?
<pie_>
*in a non-unwieldy way (or at all)
<infinisil>
I mean, let's aren't made to be exposed, they need to support things like being in functions and stuff
<infinisil>
And "exposing them" wouldn't even be clearly defined
<pie_>
a more tedious way to do this would be to dump a bunch of stuff in passthru
<infinisil>
Yeah, I'd make a PR to nixpkgs to expose that however you want
<infinisil>
Maybe put it in `container-lib.nix` next to `containers.nix`
<pie_>
let letscope@ ( rec { ... }); in mkDerivation { passthru = {} // letscope }
<pie_>
or whatever the syntax would be
<pie_>
its ugly as hell of course
<infinisil>
Why not just `let scope = rec { ... }; in`?