mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-08-27 02:34:53 +00:00
Done by moving the benchmarks and library files to separate outputs
so one can reference only `.bin` in `systemPackages`,
avoiding the overlapping names:
bin/benchmark_xl
lib/libjxl_cms.so
lib/libjxl_threads.so
lib/libjxl_extras_codec.a
For jpegli, a `dev` output also needed to be added to remove a cyclic
reference (from `out` to `bin`):
With a `bin` output newly present, the nixpkgs `multiple-outputs` hook
emits `nix-support/propagated-build-inputs` (which lists the `bin` output)
as development metadata. Without a `dev` output this lands in `out`,
creating an `out -> bin -> out` reference cycle (`bin` links the runtime
libs in `out`).
Example of what was in `bin`'s `nix-support/propagated-build-inputs`:
/nix/store/99f61f783cd29k1gmr7hrxjnb4v584jn-jpegli-0-unstable-2026-04-30-bin /nix/store/320lmb4fnd2x5alv9hlpdlgz73aj8f26-jpegli-0-unstable-2026-04-30
Creating `dev` moves `nix-support` there, breaking the cycle
and matching the `libjxl` output layout.
Assisted-By: Claude Opus 4.8 in Zoo Code