This is a standard environment that doesn't contain a C/C++ compiler. This is mostly to prevent trivial builders like runCommand and substituteAll from pulling in gcc for simple configuration changes on NixOS.
···9898 # `switch-to-configuration' that activates the configuration and
9999 # makes it bootable.
100100 baseSystem = showWarnings (
101101- if [] == failed then pkgs.stdenv.mkDerivation {
101101+ if [] == failed then pkgs.stdenvNoCC.mkDerivation {
102102 name = let hn = config.networking.hostName;
103103 nn = if (hn != "") then hn else "unnamed";
104104 in "nixos-system-${nn}-${config.system.nixosLabel}";
···11-{ stdenv }:
11+{ stdenvNoCC }:
2233args:
4455# see the substituteAll in the nixpkgs documentation for usage and constaints
66-stdenv.mkDerivation ({
66+stdenvNoCC.mkDerivation ({
77 name = if args ? name then args.name else baseNameOf (toString args.src);
88 builder = ./substitute-all.sh;
99 inherit (args) src;
+2
pkgs/top-level/all-packages.nix
···7474 else
7575 stdenv);
76767777+ stdenvNoCC = stdenv.override { cc = null; };
7878+7779 # For convenience, allow callers to get the path to Nixpkgs.
7880 path = ../..;
7981