bmake's installPhase was updated in #462500 to manually install the
binaries and share Makefiles for bmake as the boot-strap script invokes
bmake (breaking cross builds). This caused the darwin.locale build to
regress as bmake could no longer find bsd.prog.mk [1]. The install-sh
script (which is invoked by the install-mk target used by the boot-strap
script) creates bsd.-prefixed symlinks to the Makefiles under share on
BSD systems, including Darwin. Update bmake's installPhase to invoke
install-mk to ensure that the symlinks are created. install-mk does not
invoke bmake so this should not break cross builds.
[1]: 2bdd0b49a2/locale/BSDmakefile (L9)
This removes pkgsx86_64Darwin from the top-level attributes when
generating attrpaths for evaluation on Linux. Needed for attrpaths
generation to succeed without silently catching eval errors.
Variants are still available during actual Eval for references from
other packages, just not during attrpath generation. To remove it from
Eval as well, issues around pkgsLLVM will have to be fixed first.
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:
nix-build ci -A fmt.check
This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).
This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).
Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).
If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.
This reverts commit bf21377621.
This wasn't a big rebuild on nixpkgs master, but now on staging-next
it would rebuild *-darwin stdenv, which would be too expensive
at this point.
stdenv.targetPlatform really shouldn't be used by software that
doesn't generate or manipulate binaries. I reviewed all uses of
targetPlatform outside of pkgs/development/compilers and pkgs/stdenv
and replaced those which weren't involved in something which fits
these criteria.