Switch the option type to `deferredModuleWith`, which collects definitions without evaluating them.
The raw definitions are forwarded to nixpkgs function via a new internal `_configDefinitions` parameter.
`apply` on the option returns `finalPkgs.config`, preserving
backwards compatibility for external readers of `config.nixpkgs.config`
This makes it so that the `nixpkgs.config` options can be merged with the module system
It also makes the defined options show up in search and the manual.
This fixes the problem where if `meta` for package A is inherited from
package B, both team and non-team maintainers would end up in
nonTeamMaintainers, because by default it would take the value from
meta.maintainers, which when accessed also contains team maintainers
for backwards compatibility reasons.
test_log_outputs_includes_error_output_in_exception has a race between
process.poll() in raise_for_process_errors (returns None) and the
while-loop exit check (returns non-None), so CalledProcessError is
never raised. Timing-dependent; reproduces on x86_64-darwin.
Signed-off-by: Sirio Balmelli <sirio@b-ad.ch>
According to Arch Linux, fortification level 3 is incompatible with some
used functionality. Irrespective of that, the v8 build sets this as
well, although on level 2 in our case.
This build flag is not exposed by GN, hence it cannot actually be set. I
originally thought it is needed so that the rust parts after enabling
the temporal api can be successfully built.
Also drop an unused input attribute to make the linter happy.
I no longer use home-manager from Nixpkgs. This is never officially
supported by home-manager upstream, and it is always recommended to use
either flakes, channels or any other input pinning tool.
See: https://nix-community.github.io/home-manager/