| 13 Mar 2026 |
Lisanna | honestly I could be tempted away from cppnix into Lix dev, I <3 Lix but right now I'm trying to get a job working on Nix so cppnix is where I'm spending my free time to try to maximize hirability ): | 15:06:01 |
raitobezarius | i think the biggest annoyance about gRPC is that it mandates HTTP2 on the wire and it's so annoying | 15:06:52 |
raitobezarius | like gRPC over stdout/stdin is not a thing | 15:06:57 |
raitobezarius | if we had used gRPC, we would have needed to do crimes to implement what we did with libexec | 15:07:15 |
raitobezarius | capnp is way more behaved in that regards | 15:07:38 |
raitobezarius | you might be mixing up this with arcana | 15:09:03 |
raitobezarius | or even god forbids: gRPC over socketpair() | 15:10:24 |
griff | how are you going to do capnp remote? ssh, mTLS? | 15:11:21 |
raitobezarius | mTLS with the possibility to reuse SSH authnz | 15:11:32 |
raitobezarius | aka SSH as an authorization hook | 15:11:47 |
raitobezarius | SSH for the data channel seems a dead end tbh | 15:11:57 |
griff | why? | 15:12:25 |
Lisanna | * honestly I could eventually be tempted away from cppnix into Lix dev, I <3 Lix but right now I'm trying to get a job working on Nix so cppnix is where I'm spending my free time to try to maximize hirability ): | 15:12:51 |
raitobezarius | There's the performance problems of what SSH was optimized to do (TCP_NODELAY related topics) | 15:13:03 |
raitobezarius | There's the "use libssh if you want to have control over the thing like readiness, etc." but "if you use libssh, you lose all the advanced openssh features" | 15:13:22 |
raitobezarius | Maybe in Rust-land, we can use a proper config parser and have feature parity with openssh but people do depend on the exact details of openssh configs and this limits our ability to do better than an execve of ssh | 15:13:50 |
raitobezarius | (execve of ssh is also not a great way to run a wire remotely) | 15:14:00 |
raitobezarius | So, if we could bring this down to SSH is only used to authorize your mTLS connection, that'd give users the convenience of SSH key distribution/authentication while having a somewhat performant data channel (H2) | 15:14:40 |
flokli | In reply to @raitobezarius:matrix.org i think the biggest annoyance about gRPC is that it mandates HTTP2 on the wire and it's so annoying Hey, it could be worse. Like varlink over the network. | 15:17:42 |
raitobezarius | let's not talk about varlink | 15:17:54 |
flokli | Oh wait | 15:18:02 |
raitobezarius | also varlink is more like a channel for control planes than data planes | 15:18:25 |
raitobezarius | but i want off the gRPC wild ride, the Nix daemon bespoke protocol wild ride, the SSH as a high performance data plane wild ride and the Varlink wild ride please | 15:18:55 |
raitobezarius | (and cap'n'proto is not even perfect, i know) | 15:19:17 |
piegames | I understand. The RPC migration is getting paid for by an NLNet grant, and I'm currently applying to NLNet for a bytecode/libexpr Rust migration grant | 15:23:56 |
piegames | We might be able to do GSOC next year, but this year unfortunately there are not sufficient mentoring capacities | 15:24:24 |
raitobezarius | I don't think Lisanna would need a GSoC student role as they're mentoring ;-) | 15:25:50 |
raitobezarius | I don't know where you are based neither where you are aiming for a job, but the Lix community also has companies surrounding it in EU (mostly), not necessarily to work on Lix but to work with Lix on other topics; I knew in the past there were also US companies hiring in the Lix community as well | 15:27:24 |
raitobezarius | But I understand the strategy | 15:27:33 |
Lisanna | a lot of my background is low level C so honestly even just seeing stuff like conn << var is like "WOW that's so nice and convenient" for me a little bit still ^-^ | 15:27:55 |