Lix is deprecating CA derivations, and it's not too difficult to have
this be handled entirely by Zilch. This also improves stability and
future handling of the feature, as Zilch does not depend on how the
daemon handles CA derivations. Though right now, the behavior of
CA derivations is identical to that of the experimental feature, at
this time.
Building CA derivations requires a small scheduler to bypass the Nix
behavior. Each CA derivation is recorded, and then all derivations that
have no CA dependencies get built. These are used to resolve the
realisations for the derivations that depend upon them, and the the
cycle continues.
It's possible for the thread to be interrupted between configuring the
timeout and the file descriptor wait. This causes a low-probability 60
second wait until the timeout expires.
Now that this is fixed, we can set a normal timeout on the socket once
again, so do that.
Link: https://github.com/ursetto/socket-egg/pull/7