!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

346 Members
(Technical) development of Lix, the package manager, a Nix implementation. Please be mindful of ongoing technical conversations in this channel.125 Servers

Load older messages


SenderMessageTime
22 Apr 2025
@helle:tacobelllabs.nethelle (just a stray cat girl)what is the specific failure mode?13:21:51
@k900:0upti.meK900SSH connection is established, but SOMETHING else is executed instead of the thing we asked for 13:22:21
@helle:tacobelllabs.nethelle (just a stray cat girl)which is more likely then you think in our experience13:23:13
@k900:0upti.meK900But then we end up in a situation where we can't actually check that13:23:53
@k900:0upti.meK900In a way that's generic enough 13:24:03
@k900:0upti.meK900 And there's a billion other failure modes we don't check for 13:24:14
@k900:0upti.meK900 For example, if your shell just ends up running sleep 1000 or whatever, we'll never catch it 13:24:35
@k900:0upti.meK900Because we're waiting for a line of stdout13:24:43
@helle:tacobelllabs.nethelle (just a stray cat girl)mmm13:24:49
@k900:0upti.meK900Like there is absolutely a failure mode this does catch 13:26:38
@k900:0upti.meK900But there's also a billion others that it doesn't 13:26:46
@k900:0upti.meK900And it introduces more potential failures 13:26:54
@k900:0upti.meK900So is it worth it? 13:27:00
@k900:0upti.meK900I don't actually have a good answer 13:27:05
@k900:0upti.meK900 We don't have enough data to know 13:27:19
@k900:0upti.meK900And I don't have a good enough intuition to guess13:27:30
@k900:0upti.meK900Something I like about removing it is that it basically removes the remote shell from the equation 13:28:04
@helle:tacobelllabs.nethelle (just a stray cat girl)

so uh, can we somewhat strongly propose we migrate away from --stdio and instead start using the socket forwarding, although idk if the unix socket for the nix daemon should ever be in a non-standard location ie, not in /nix/var/nix/daemon-socket/socket

ssh -N would then just be enough, no shell or starting nix-daemon involved, idk if there are any odd cases

and migrating this to libssh is also iirc possible

13:28:22
@k900:0upti.meK900 There is only one requirement - be able to run nix-store 13:28:29
@helle:tacobelllabs.nethelle (just a stray cat girl)trying to think if there is some edge case we are forgetting to allow for this13:28:49
@k900:0upti.meK900
In reply to @helle:tacobelllabs.net

so uh, can we somewhat strongly propose we migrate away from --stdio and instead start using the socket forwarding, although idk if the unix socket for the nix daemon should ever be in a non-standard location ie, not in /nix/var/nix/daemon-socket/socket

ssh -N would then just be enough, no shell or starting nix-daemon involved, idk if there are any odd cases

and migrating this to libssh is also iirc possible

That would require a third remote protocol
13:28:53
@k900:0upti.meK900But yes probably doable 13:29:01
@helle:tacobelllabs.nethelle (just a stray cat girl)we thought that what nix-daemon --stdio did was the same as what was communicated over the unix pipe?13:29:30
@k900:0upti.meK900At least for some cases13:29:34
@helle:tacobelllabs.nethelle (just a stray cat girl)(only briefly read the code)13:29:40
@k900:0upti.meK900
In reply to @helle:tacobelllabs.net
we thought that what nix-daemon --stdio did was the same as what was communicated over the unix pipe?
Yes but we can't replace the existing protocols with "just talk to the daemon" because there may be no daemon
13:30:00
@helle:tacobelllabs.nethelle (just a stray cat girl)ah, true13:30:07
@k900:0upti.meK900Or the daemon may be pointed at a different store 13:30:10
@k900:0upti.meK900etc etc 13:30:12
@k900:0upti.meK900So we can't just have that 13:30:17

Show newer messages


Back to Room ListRoom Version: 10