| 13 Mar 2026 |
Yureka (she/her) | However the build is failing without an obvious error message | 10:11:05 |
Yureka (she/her) | I bisected it to 357ee01002bc31229f444dc15fab6abf64f372c6
build: attempt to normalize Rust handling to support static linking | 10:11:13 |
Yureka (she/her) | I already added rust-cbindgen | 10:11:38 |
Yureka (she/her) | I don't see any other obvious changes to the packaging | 10:11:45 |
piegames | In reply to @yuka:yuka.dev
I bisected it to 357ee01002bc31229f444dc15fab6abf64f372c6
build: attempt to normalize Rust handling to support static linking Wasn't that the so unification commit? | 10:32:18 |
piegames | If so, probably best to ask again on Zulip where our dragon can see it | 10:32:44 |
aloisw | I see a bunch of the stuff from https://github.com/NixOS/nixpkgs/pull/480992 missing, but that should only affect tests. | 11:17:38 |
Lisanna | Hello! Wanted to drop a line that I will be mentoring a GSoC project to refactor the Nix daemon's processConnection interface to make it usable by programs linking against libnix-store, possibly using gRPC (like Lix's build hook). I was curious what the Lix status was of converting the daemon to also using gRPC, in case we're at risk of duplicating effort. | 13:43:46 |
raitobezarius (DECT: 7248) | We're not going to use gRPC in Lix | 13:44:02 |
raitobezarius (DECT: 7248) | We're using already Cap'n'Proto | 13:44:07 |
Lisanna | Ah, OK, I must have confused them | 13:44:21 |
raitobezarius (DECT: 7248) | https://git.lix.systems/lix-project/lix/src/commit/5346b2bc6884ab71c1d0fc858f3b11484d01cbfb/lix/libstore/build/hook-instance.capnp | 13:44:36 |
Lisanna | ok, so I' | 13:45:22 |
Lisanna | * ok, so I'll rephrase then :p are there plans to extend capn proto to the daemon? Has that already started? | 13:45:41 |
raitobezarius (DECT: 7248) | This is going to start imminently in 2.96 | 13:45:52 |
raitobezarius (DECT: 7248) | Lix 2.94 made hook instance capnp | 13:45:57 |
raitobezarius (DECT: 7248) | Lix 2.95 used Cap'n'Proto for exchanging settings between libexec helpers and the daemon | 13:46:07 |
raitobezarius (DECT: 7248) | Lix 2.96 will offer daemon sockets with multi protocol support | 13:46:21 |
raitobezarius (DECT: 7248) | Lix 2.95 already has the inherent capability | 13:46:27 |
raitobezarius (DECT: 7248) | https://gerrit.lix.systems/c/lix/+/4951 | 13:46:36 |
Lisanna | ok, thank you! | 13:47:51 |
hexa | sad that you'll be spending time for cppnix instead of lix then 😉 | 14:18:26 |
piegames | That's not the sad thing, we're not doing software tribalism here. The sad thing is the usage of gRPC, which isn't the best technical option, and also will make CppNix and Lix fairly daemon-incompatible long-term | 14:41:54 |
piegames | IIRC snix is using gRPC, and it wasn't going too well for them? | 14:42:13 |
flokli | we're using gRPC if you cross the process boundary | 14:42:50 |
flokli | and it's working fine-ish? | 14:42:55 |
piegames | Or am I misremembering something here | 14:43:02 |
flokli | there's a few known perf issues due to how to the blob/chunk substitution doing more roundtrips than necessary, but that's more of a "we need to refactor the code at some point" than a gRPC-issue per se | 14:44:00 |
griff | And as long as the data flowing is compatible making a converter from gRPC to Capnp or even to old shitty daemon protocol should be possible | 14:45:51 |
flokli | we picked gRPC over captnproto because it's generally better supported across various programming languages, and it felt like captnproto still requires you to be on your own for a lot of things. | 14:45:54 |