On Wed, Mar 05, 2025 at 02:51:42AM +0200, Adrian Bunk wrote: > On Thu, Feb 20, 2025 at 11:23:20AM +0200, Faidon Liambotis wrote: > >... > > The API issue has been fixed upstream in a backwards-compatible way: > > https://github.com/NixOS/nix/commit/edbfe863ce4ae4b89e554f29807e62674055f251 > > Note that 2.25.4+dfsg-1 in experimental already includes this code. > >... > > It does not seem to (likely due to 2.25.4 < 2.26): > https://buildd.debian.org/status/logs.php?pkg=nix&ver=2.25.4%2Bdfsg-1%2Bb1
The commit above is indeed from 2.26, but it's been backported to 2.25.x and is part of the 2.25.4 upstream release: https://github.com/NixOS/nix/commit/bead70acc207e065606f1989697d1b13722d02ae In turn, the code in question is part of 2.25.4+dfsg-1. (Jordan, both of these commits can be cherry-picked and apply cleanly to 2.24.9 as well.) So that leaves the question of why 2.25.4+dfsg-1 is FTBFS. I looked a little bit into it: The (tiny really) changes in the commit above are behind an #if HAVE_LOWDOWN_1_4 guard, with HAVE_LOWDOWN_1_4 in turn being defined by meson. No equivalent code is present in configure.ac however, and the Debian package is seemingly using autoconf rather than meson. So HAVE_LOWDOWN_1_4 is never defined in the Debian build process. If upstream generally provides better support for meson, it may be a good idea to switch to it regardless. Alternatively, you could patch configure.ac to define HAVE_LOWDOWN_1_4 like meson does (which would be an upstreamable patch), define it in debian/rules with -DHAVE_LOWDOWN_1_4, or patch the code locally to remove the #ifs. I'm not familiar with neither nix nor the Debian package of nix, just offering a few suggestions as I see it, in case they are helpful. Regards, Faidon