From 8ef298b84f6c2426b62987f0eb31d5b754c990f3 Mon Sep 17 00:00:00 2001 From: Ivar Scholten Date: Fri, 4 Mar 2022 14:08:44 +0100 Subject: dotnet: add setup hook to set required env vars --- pkgs/development/compilers/dotnet/build-dotnet.nix | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'pkgs') diff --git a/pkgs/development/compilers/dotnet/build-dotnet.nix b/pkgs/development/compilers/dotnet/build-dotnet.nix index 21cc6c8227c..55deb594706 100644 --- a/pkgs/development/compilers/dotnet/build-dotnet.nix +++ b/pkgs/development/compilers/dotnet/build-dotnet.nix @@ -4,9 +4,11 @@ }: assert builtins.elem type [ "aspnetcore" "runtime" "sdk"]; + { lib , stdenv , fetchurl +, writeText , libunwind , openssl , icu @@ -87,6 +89,13 @@ in stdenv.mkDerivation rec { $out/bin/dotnet --info ''; + setupHook = writeText "dotnet-setup-hook" '' + export HOME=$(mktemp -d) # Dotnet expects a writable home directory for its configuration files + export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 # Dont try to expand NuGetFallbackFolder to disk + export DOTNET_NOLOGO=1 # Disables the welcome message + export DOTNET_CLI_TELEMETRY_OPTOUT=1 + ''; + meta = with lib; { homepage = "https://dotnet.github.io/"; description = builtins.getAttr type descriptions; -- cgit 1.4.1 From d78640533693167f9d4af1fa50ee9273d3a4e9e2 Mon Sep 17 00:00:00 2001 From: Ivar Scholten Date: Fri, 4 Mar 2022 14:28:34 +0100 Subject: treewide: don't unnecessary set dotnet-related env vars These have been moved to a setup hook in dotnet-{sdk,runtime,aspnetcore} --- pkgs/build-support/dotnet/build-dotnet-module/default.nix | 3 --- .../dotnet/build-dotnet-module/hooks/dotnet-configure-hook.sh | 2 -- .../tools/continuous-integration/github-runner/default.nix | 5 ----- pkgs/development/tools/misc/netcoredbg/default.nix | 9 +-------- pkgs/servers/jellyfin/default.nix | 5 ----- pkgs/servers/nosql/eventstore/default.nix | 4 ---- 6 files changed, 1 insertion(+), 27 deletions(-) (limited to 'pkgs') diff --git a/pkgs/build-support/dotnet/build-dotnet-module/default.nix b/pkgs/build-support/dotnet/build-dotnet-module/default.nix index e721b59decb..85b8aa8afae 100644 --- a/pkgs/build-support/dotnet/build-dotnet-module/default.nix +++ b/pkgs/build-support/dotnet/build-dotnet-module/default.nix @@ -129,9 +129,6 @@ in stdenvNoCC.mkDerivation (args // { # gappsWrapperArgs gets included when wrapping for dotnet, as to avoid double wrapping dontWrapGApps = args.dontWrapGApps or true; - DOTNET_NOLOGO = args.DOTNET_NOLOGO or true; # This disables the welcome message. - DOTNET_CLI_TELEMETRY_OPTOUT = args.DOTNET_CLI_TELEMETRY_OPTOUT or true; - passthru = { fetch-deps = writeScript "fetch-${pname}-deps" '' set -euo pipefail diff --git a/pkgs/build-support/dotnet/build-dotnet-module/hooks/dotnet-configure-hook.sh b/pkgs/build-support/dotnet/build-dotnet-module/hooks/dotnet-configure-hook.sh index 3ca89fdc095..59daacbac0e 100644 --- a/pkgs/build-support/dotnet/build-dotnet-module/hooks/dotnet-configure-hook.sh +++ b/pkgs/build-support/dotnet/build-dotnet-module/hooks/dotnet-configure-hook.sh @@ -9,8 +9,6 @@ dotnetConfigureHook() { parallelFlag="--disable-parallel" fi - export HOME=$(mktemp -d) - for project in ${projectFile[@]} ${testProjectFile[@]}; do env \ dotnet restore "$project" \ diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix index 7818f7464ba..222ffb0688f 100644 --- a/pkgs/development/tools/continuous-integration/github-runner/default.nix +++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix @@ -102,11 +102,6 @@ stdenv.mkDerivation rec { configurePhase = '' runHook preConfigure - # Set up Nuget dependencies - export HOME=$(mktemp -d) - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - export DOTNET_NOLOGO=1 - # Never use nuget.org nuget sources Disable -Name "nuget.org" diff --git a/pkgs/development/tools/misc/netcoredbg/default.nix b/pkgs/development/tools/misc/netcoredbg/default.nix index 1907eb8b363..cb0c1cdc8ec 100644 --- a/pkgs/development/tools/misc/netcoredbg/default.nix +++ b/pkgs/development/tools/misc/netcoredbg/default.nix @@ -24,14 +24,7 @@ let unmanaged = clangStdenv.mkDerivation rec { inherit src pname version; - nativeBuildInputs = [ cmake ]; - - # Building the "unmanaged part" still involves compiling C# code. - preBuild = '' - export HOME=$(mktemp -d) - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 - ''; + nativeBuildInputs = [ cmake dotnet-sdk ]; hardeningDisable = [ "strictoverflow" ]; diff --git a/pkgs/servers/jellyfin/default.nix b/pkgs/servers/jellyfin/default.nix index 4dce2a7258f..814d8eecdc3 100644 --- a/pkgs/servers/jellyfin/default.nix +++ b/pkgs/servers/jellyfin/default.nix @@ -70,11 +70,6 @@ stdenv.mkDerivation rec { configurePhase = '' runHook preConfigure - export HOME=$(mktemp -d) - - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - export DOTNET_NOLOGO=1 - nuget sources Add -Name nixos -Source "$PWD/nixos" nuget init "$nugetDeps" "$PWD/nixos" diff --git a/pkgs/servers/nosql/eventstore/default.nix b/pkgs/servers/nosql/eventstore/default.nix index 769c45ffc6c..035d906b2bd 100644 --- a/pkgs/servers/nosql/eventstore/default.nix +++ b/pkgs/servers/nosql/eventstore/default.nix @@ -43,10 +43,6 @@ stdenv.mkDerivation rec { ''; buildPhase = '' - mkdir home - export HOME=$PWD/home - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 export FrameworkPathOverride=${mono}/lib/mono/4.7.1-api # disable default-source so nuget does not try to download from online-repo -- cgit 1.4.1