| 16 May 2024 |
jade_ | i think the sensible move is probably to not do the include/ move but to do the pkg-config name and -l break still | 23:52:37 |
puck | aka "can we become the C api's upstream" | 23:52:38 |
puck | In reply to @jade_:matrix.org i think the sensible move is probably to not do the include/ move but to do the pkg-config name and -l break still the C api is also not in a directory, it's just #include <nix_api_expr.h> etc | 23:53:03 |
puck | i think we're likely to break the API (tho the ABI should stay .. closer to same) | 23:53:21 |
delroth | https://git.lix.systems/lix-project/lix/src/branch/main/src/libcmd/installables.cc#L470 like, wtf, seriously | 23:53:30 |
delroth | ok, I'll leave "fixing the UX" to someone else | 23:53:37 |
delroth | there is no way to make this /nix/store/...^out return a proper error message because if it throws then nix tries to interpret it as a flake, which also doesn't work because /nix/store/... isn't a flake, and that overrides the initial error | 23:54:22 |
Qyriad | even if you throw a UsageError? | 23:54:51 |
delroth | well yeah, look at the code | 23:55:00 |
delroth | it catches (...) | 23:55:03 |
Qyriad | what | 23:55:11 |
Qyriad | fucking hell | 23:55:21 |
jade_ | burn it | 23:55:27 |
jade_ | we should fix that catch | 23:55:35 |
Qyriad | kill catch (...) with fire basically anywhere we can | 23:55:49 |
delroth | I wonder what's the funniest parsing exception I could trigger which would lead nix to try and parse something as a flake | 23:56:46 |
Qyriad | I want to fuzz that parser so badly | 23:57:04 |
jade_ | fuzzing is cat behaviour | 23:57:20 |
puck | | 23:57:52 |
jade_ | puck: any opinions on choosing to intentionally leave the includes in their current location but still explode pkg-config and linking, vs also moving includes to lix/? | 23:58:46 |
puck | move it. people should use pkg-config always even under nixpkgs | 23:59:06 |
puck | or, hrm | 23:59:13 |
puck | no, that'd break anyways | 23:59:18 |
puck | i was thinking of the `foo -> <nix/foo> | 23:59:24 |
puck | * i was thinking of the foo -> <nix/foo> thing | 23:59:25 |
jade_ | yes, but lix/ includes do actually affect downstreams if they are including things via #include <nix/nixexpr.hh> | 23:59:30 |
jade_ | but otoh we want to explode our include paths very aggressively in teh future anyhow | 23:59:51 |
jade_ | so shrug | 23:59:53 |
puck | symlinks :D | 23:59:57 |
| 17 May 2024 |
jade_ | maybe the c api should be in nix/ still | 00:00:02 |