The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
The main change is the fix against `gcc-13` build failure:
https://hydra.nixos.org/build/247544946
src/Utilities.hpp:84:46: error: 'uint32_t' has not been declared
84 | void crc32(const void* data, size_t n_bytes, uint32_t* crc);
| ^~~~~~~~
Pulling unstable as latets release still does not build against `gcc-13`.
Co-authored-by: kirillrdy <kirillrdy@gmail.com>
Done with the help of https://github.com/Mindavi/nixpkgs-mark-broken
Tool is still WIP but this is one of the first results.
I manually audited the results and removed some results that were not valid.
Note that some of these packages maybe should have more constrained platforms set
instead of broken set, but I think not being perfectly correct is better than
just keep trying to build all these things and never succeeding.
Some observations:
- Some darwin builds require XCode tools
- aarch64-linux builds sometimes suffer from using gcc9
- gcc9 is getting older and misses some new libraries/features
- Sometimes tools try to do system detection or expect some explicit settings for
platforms that are not x86_64-linux