anchor.diff:          declare -a projectFiles=( ${toString (lib.toList projectFile)} )
           declare -a testProjectFiles=( ${toString (lib.toList testProjectFile)} )
   
  -        export HOME=$(mktemp -td "${pname}-home-XXXXXX")
           export DOTNET_NOLOGO=1
           export DOTNET_CLI_TELEMETRY_OPTOUT=1
   
  -        depsFile="$(realpath "''${1:-$(mktemp -t "${pname}-deps-XXXXXX.nix")}")"
  -        mkdir -p "$HOME/nuget_pkgs"
  +        depsFile=$(realpath "''${1:-$(mktemp -t "${pname}-deps-XXXXXX.nix")}")
  +        mkdir -p "$tmp/nuget_pkgs"
   
           storeSrc="${srcOnly args}"
  -        src="$(mktemp -td "${pname}-src-XXXXXX")"
  +        src=$tmp/src
           cp -rT "$storeSrc" "$src"
           chmod -R +w "$src"
   
  
positive.code:             dotnet restore ''${project-} \
                  -p:ContinuousIntegrationBuild=true \
                  -p:Deterministic=true \
                  --packages "$HOME/nuget_pkgs" \
                  --runtime "$rid" \
                  ${lib.optionalString (!enableParallelBuilding) "--disable-parallel"} \
                  ${lib.optionalString (flags != []) (toString flags)}
  
negative.code:             esac
          done
  
          export tmp=$(mktemp -td "${pname}-tmp-XXXXXX")
          HOME=$tmp/home
  
          exitTrap() {
              test -n "''${ranTrap-}" && return
              ranTrap=1
  
              if test -n "''${keepSources-}"; then
                  echo -e "Path to the source: $tmp/src\nPath to the fake home: $tmp/home"
              else
                  rm -rf "$tmp"
              fi
  
              # Since mktemp is used this will be empty if the script didnt succesfully complete
  