Since #509368 flipped doCheck to true, busted/coxpcall/penlight/etc.
are added to neovimLuaEnv, which sits in buildInputs and has its lib
path baked into bin/nvim. busted's wrapper references
luarocks_bootstrap, whose own wrapper carries cmake/zip/unzip on PATH,
so cmake (61M) ends up in neovim's runtime closure.
Split the lua package set: neovimLuaEnv (runtime, in buildInputs)
gets only lpeg/luabitop/mpack; the check-only modules go into
neovimLuaEnvOnBuild (LUA_PRG, build-time only). Add the build env to
disallowedRequisites so this can't regress.
Closure: 192M -> 94M.
The bundled video previewer only invokes `ffmpeg` and `ffprobe`
(yazi-plugin/preset/plugins/video.lua), never `ffplay`. The full
ffmpeg's `ffplay` links SDL, which transitively pulls in gtk3, gtk4,
zenity, gst-plugins-bad and flite.
Closure: 1.1G -> 494M.
Matches what comparable in-tree thumbnailers already do
(ffmpegthumbnailer, mcat, yt-dlp, navidrome).
The autoconf 2.73 update on staging-next broke gnulib's stdint.h
generation: the `GNULIBHEADERS_OVERRIDE_WINT_T` AC_SUBST variable ends
up empty in the generated Makefile, so sed substitutes it as the empty
string in `stdint.h` line 89 (from `stdint.in.h` line 88, plus the one
`DO NOT EDIT` header line the generator prepends), producing a bare
`#if` that fails to parse:
In file included from strverscmp.c:25:
./stdint.h:89:5: error: expected value in expression
89 | #if
| ^
Template line:
https://github.com/coreutils/gnulib/blob/0a01f6737dc5666c730bdfe6a038da53a4156cc2/lib/stdint.in.h#L88
A `CFLAGS=-std=gnu17` pin does not help: autoconf still reports C11
features as "none needed" (same as the previously-succeeding autoconf
2.72 build), yet the substitution is still empty
The nixpkgs gnulib pin (2024-10-01) is too old for this autoconf
Refs: https://github.com/NixOS/nixpkgs/issues/511329
Upstream commit fb76aba95b35 changed the default LN from `ln -sf` to
`ln -f`, so each utility alias is now a hardlink to the 14 MiB
multicall binary. NAR serialization does not preserve hardlinks, so
every alias is stored and downloaded as a full copy, taking the
closure from ~61 MiB to ~1.5 GiB.
https://github.com/uutils/coreutils/commit/fb76aba95b35bf12b0175d67e4b10b2f9910c5df
The autoconf update on staging-next forces Clang into C23 mode, which
rejects K&R-style function declarations in compat/basename.c
Pin to gnu17 to restore the previous default
Refs: https://github.com/NixOS/nixpkgs/issues/511329
Using forEach/map over selectedApplets we end up with nested lists of
their build inputs, but buildInputs should be one flat list.
If __structuredAttrs are enabled, this means the list array cannot be
exported to a bash array as-is and is an empty array instead.
Fix this by using concatMap instead.