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"
```
Irrlicht's SDL device (=backend) was enabled by default for the 5.9.0
pre-release, but was disabled again at the last minute before the
release due to issues reported by some users.
NOTE: the irrlicht device is a compile time option and cannot be
switched at runtime.
* remove irrlichtmt input. Minetest's irrlicht fork has been moved into
the minetest repo and is now statically linked.
* remove mesa from buildInputs for darwin. Otherwise startup fails with
"OpenGL driver version is not 1.2 or better." and "Shaders are enabled
but GLSL is not supported by the driver.". Presumably that happens
because minetest tries to use an incomplete OpenGL driver from mesa
instead of the drivers provided by macOS.
* remove withTouchSupport arg, as the upstream CMake option has been
removed. Touch support should now always be enabled.
* make minetest-touch an alias for minetestclient
* remove unused args
* Inline the generic builder, since we don't build multiple versions
anymore
* Remove unused patches, flags, and overrides
* Remove minetest_game, it has been debundled
* Use finalAttrs
* Use lib.cmake*
* Add a top-level attribute for the touch variant
* Define the server- and client-only variants through overrides in
all-packages.nix
* Move the *_5 aliases to top-level/aliases.nix
* General cleanup
Closes#273207
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper
this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
Touch support requires rebuilding irrlichtmt with touch support, which
upstream does not enable by default. Building Minetest with touch
support also disables the regular interface, so touch support defaults
to off.