treewide: remove FHSEnv

To remove the FHSenv, we have to patch rules_python to use
/usr/bin/env to resolve the path to bash instead of hardcoding it.
Additionally, we now bring a Nix-compatible Bazel 8.

Change-Id: Id51e7748eea6dd77185f43a52fe45b5110ba4a2b
Reviewed-on: https://review.monogon.dev/c/monogon/+/4427
Tested-by: Jenkins CI
Reviewed-by: Jan Schär <jan@monogon.tech>
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
Reviewed-by: Leopold Schabel <leo@monogon.tech>
diff --git a/.bazelrc b/.bazelrc
index 526492b..8555f7f 100644
--- a/.bazelrc
+++ b/.bazelrc
@@ -71,6 +71,12 @@
 build --experimental_propagate_custom_flag=@@rules_go+//go/private:request_nogo
 build --experimental_propagate_custom_flag=@@rules_go+//go/private:bootstrap_nogo
 
+# rules_python uses host python for bootstrapping.
+# Override to use a shell script for this.
+# https://github.com/bazelbuild/rules_python/issues/691
+build --@rules_python//python/config_settings:bootstrap_impl=script
+build --experimental_propagate_custom_flag=@@rules_python+//python/config_settings:bootstrap_impl
+
 # No local CPP toolchain resolution. In our sandbox root, it doesn't make sense -
 # anything auto-detected during analysis stage is on the host instead of the sandbox.
 # Sysroot rebuild is pure Go and doesn't need it either.