In preparation for the deprecation of `stdenv.isX`.
These shorthands are not conducive to cross-compilation because they
hide the platforms.
Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way
One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059
There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.
```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
We had a `self` let binding to pass specific tests with ourselves as a
`passthru`, due to various issues with tests, we removed it.
We should also clean up the `self` then and adopt `finalAttrs`-style
probably.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
This way, it's easier to override it or pass it ourselves if needed.
Useful for test instrumentation from external scripts.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
[Lix](https://lix.systems) is a fork of CppNix, the original Nix implementation. It behaves like `nixVersions.*` in terms of packaging with a big difference: it uses Meson for its build system.
Therefore, it is not possible to share the packaging trees.
The rest is pretty mundane:
- Lix will passthru all the time to the `nixosTests.misc` to smoke test any critical regressions as a last line after all our regression battery on the Lix project side.
- Cross compilation has been extensively tested.
- Static compilation is known to fail on a test.
Internal API documentation is out of scope for this commit.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>