[testing/dotnet-6.0] First draft of dotnet-6.0 APKBUILD

This commit is contained in:
build@apk-groulx 2021-12-04 22:30:04 +00:00
parent 3e6ec137db
commit dd8e78465e
5 changed files with 595 additions and 0 deletions

View file

@ -0,0 +1,359 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Based on Archlinux PKGBUILD by:
# Maxime Gauduin <alucryd@archlinux.org>
# Kristian Mosegaard <kristian@mosen.me>
# Max Liebkies <mail@maxliebkies.de>
# Krzysztof Bogacki <krzysztof.bogacki@leancode.pl>
#
# Build vars
#
# Sets whether we use pre-built bootstraps from microsoft or repo-provided bootstraps for building
_bootstrap=true
_bootstrap_sdk=6.0.8-r0
_bootstrap_runtime=3.1.17-r2
_bootstrapver=0.1.0-6.0.100-bootstrap.29
# LLVM version
_llvmver=12
# One packaging step that needs this set. Needs some work, but I'm sure there's a way to remove this.
_targetrid=alpine.3.15-x64
pkgname=dotnet-6.0
pkgdesc='The .NET Core SDK'
pkgver=6.0.0
pkgrel=0
arch='x86_64'
url=https://www.microsoft.com/net/core
license='MIT'
makedepends="
bash
clang
cmake
git
icu-dev
inetutils-syslogd
krb5-dev
libgit2-dev
libunwind-dev
libunwind
libxml2-dev
libxml2-utils
lldb-dev
mono
llvm$_llvmver-dev
lttng-ust-dev
nodejs
openssl-dev
linux-headers
zlib-dev
"
if [ ${_bootstrap} != 'true' ]; then
makedepends="
${makedepends}
dotnet-bootstrap-runtime-3.1=$_bootstrap_runtime
dotnet-bootstrap-sdk-6.0=$_bootstrap_sdk
"
fi
subpackages="dotnet-sdk-5.0:sdk dotnet-host:host dotnet-runtime-5.0:runtime aspnet-runtime-5.0:aspnet_runtime:noarch netstandard-targeting-pack:netstandard_targeting_pack:noarch dotnet-targeting-pack-5.0:targeting_pack aspnet-targeting-pack-5.0:aspnet_targeting_pack:noarch"
_gittag=v6.0.100
_giturl=https://github.com/dotnet/installer
options="!check !archcheck"
source="
$pkgname-$pkgver.git.zip
dotnet.sh
Private.SourceBuilt.Artifacts.${_bootstrapver}.noextract::https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.${_bootstrapver}.tar.gz
"
#
# Patches description
#
# runtime_add-rid-for-alpine-315.patch/_
# As of version 5.0.12, runtime does not have the RIDs for Alpine Linux 3.15. This patch adds them. See dotnet/core issue #6985
#
# runtime_link-order.patch
# For some reason, runtime does not link in the right order. This fixes that.
#
# runtime_non-portable-distrorid-fix-alpine.patch
# Runtime adds the extra subversion in its calculation of Alpine's DistroRID when a non-portable build, but does so inconsistently. This creates an error when it generates its nuget package
# Might be fixed by just making making package a portable build, which would make runtime_add-rid defunct, and make the targetRID linux-musl-x64 like for the dotnet-3.1 package
#
# build_darc-fix-alpine.patch
# Darc has a segmentation fault on Alpine due to not chosing the correct binary architecture. This patch deletes all the wrong ones so that it is forced to chose the correct one.
# See dotnet/source-build issue #1868, and dotnet/source-build issue #297 (which would also fix all the other RID issues.
#
source="
${source}
runtime_disable-package-validation.patch
runtime_add-rid-for-alpine-315.patch
sdk_telemetry-optout.patch
"
builddir="$srcdir/sources"
# TODO
# Fix ilasm issue in src/source-build-reference-packages.fc184172bf8144f7c91a7bc0226b7d90c5821576
# Error:
# /var/build/build/apk/v3.15/main/dotnet-6.0/src/sources/src/source-build-reference-packages.fc184172bf8144f7c91a7bc0226b7d90c5821576/artifacts/source-build/self/src/src/targetPacks/build-il.sh: line 11: /var/build/build/apk/v3.15/main/dotnet-6.0/src/sources/src/source-build-reference-packages.fc184172bf8144f7c91a7bc0226b7d90c5821576/artifacts/source-build/self/package-cache/runtime.linux-x64.microsoft.netcore.ilasm/6.0.0/runtimes/linux-x64/native/ilasm: No such file or directory
# This is due to ilasm being precompiled for libc rather than musl.
# Need to figure out how to have it use musl binaries
#
# Tried adjusting /var/build/build/apk/v3.15/main/dotnet-6.0/src/sources/src/source-build-reference-packages.fc184172bf8144f7c91a7bc0226b7d90c5821576/artifacts/source-build/self/src/src/targetPacks/Directory.Build.targets
# to use mono's version of ilasm, but anything past artifacts get regenerated. Need to figure out what patch mecanism source-build-reference-packages uses to patch Directory.Build.targets
#
#
# A custom version of snapshot is used because Darc expects the build directory to be a git repo, thus the auto-generated tar.gz on github is not sufficient.
# There's a way to trick Darc into thinking its in a git repo but it's hardly elegant. Thus make sure to 'abuild snapshot' before 'abuild -r'
#
snapshot() {
mkdir -p "$srcdir"
cd "${srcdir}"
if ! [ -d $pkgname.git ]; then
git clone $_giturl $pkgname.git || return 1
cd $pkgname.git
else
cd $pkgname.git
git fetch || return 1
fi
echo "Repo archive"
mkfifo $pkgname-$pkgver.git
git bundle create - $_gittag > $pkgname-$pkgver.git &
zip --fifo "${SRCDEST}"/$pkgname-$pkgver.git.zip $pkgname-$pkgver.git
rm $pkgname-$pkgver.git
ln -s "$SRCDEST"/$pkgname-$pkgver.git.zip "$startdir"/$pkgname-$pkgver.git.zip
}
unpack() {
default_unpack
cd "${srcdir}"
git clone $pkgname-$pkgver.git $pkgname --branch $_gittag 1>/dev/null 2>&1
}
_patch(){
local i failed=
cd $builddir
if ! have_patches; then
return 0
fi
[ -d "$builddir" ] || { error "Is \$builddir set correctly?"; return 1; }
msg "Deploying patches"
for i in $source; do
case ${i%::*} in
build_*.patch)
patch ${patch_args:--p1} -i "$srcdir/$(filename_from_uri $i)" || failed="$failed $i"
;;
*.patch)
local _package=$(echo ${i} | sed 's|_.*||')
local _patch=$(echo ${i} | sed "s|${_package}_||")
echo "Applying $_patch -> $_package"
if [ -d src/$_package.* ]; then
cd src/$_package.*
else
echo "$_package does not exist for patch"
continue
fi
patch -Np1 -i "$srcdir"/${i}
cd "$builddir"
;;
esac
done
if [ -z "$failed" ]; then
return 0
fi
error "The following patches failed to apply:"
for i in $failed; do
printf " %s\n" "$i"
done
return 1
}
prepare() {
cd "${srcdir}"/$pkgname
git remote set-url origin https://github.com/dotnet/installer.git
./build.sh \
/p:ArcadeBuildTarball=true \
/p:TarballDir="${srcdir}"/sources
_patch
ln -sf "${srcdir}"/Private.SourceBuilt.Artifacts.${_bootstrapver}.noextract "$builddir"/packages/archive/Private.SourceBuilt.Artifacts.${_bootstrapver}.tar.gz
}
pkgver() {
cd "$builddir"
if [[ $(git describe --tags) != v6.0.* ]]; then
echo "Invalid SDK version"
exit 1
fi
local _standardver=$(xmllint --xpath "//*[local-name()='NETStandardLibraryRefPackageVersion']/text()" eng/Versions.props)
if [[ $_standardver != 2.1.0 ]]; then
echo "Invalid Standard version"
exit 1
fi
local _sdkver=$(xmllint --xpath "//*[local-name()='VersionSDKMinor']/text()" eng/Versions.props)$(xmllint --xpath "//*[local-name()='VersionFeature']/text()" eng/Versions.props)
local _runtimever=$(xmllint --xpath "//*[local-name()='MicrosoftNETCoreAppRuntimewinx64PackageVersion']/text()" eng/Versions.props)
echo "${_runtimever}.sdk${_sdkver}"
}
build() {
cd "${builddir}"
msg "Building $pkgname-$pkgver"
./prep.sh
./build.sh
}
package() {
depends='
dotnet-sdk-5.0
dotnet-host
dotnet-runtime-5.0
dotnet-targetting-pack-5.0
aspnet-runtime-5.0
aspnet-targeting-pack-5.0
netstandard-targeting-pack
'
mkdir -p "${pkgdir}"
}
sdk() {
depends='
dotnet-runtime-5.0
dotnet-targeting-pack-5.0
musl
libgcc
netstandard-targeting-pack
aspnet-targeting-pack-5.0
'
# XXX: This is a hack to allow this abuild to depend on itself. Adding "dotnet"
# to makedepends would not work, because abuild implicitly removes $pkgname
# and $subpackages from the abuild's dependencies.
provides="dotnet-bootstrap-sdk-5.0=$pkgver-r$pkgrel"
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner sdk templates
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/dotnet-sdk-5.0
}
host() {
pkgdesc='A generic driver for the .NET Core Command Line Interface'
depends='
gcc
musl
'
cd $builddir/artifacts/x64/Release
install -dm 755 "$subpkgdir"/etc/profile.d "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses/dotnet-host
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner dotnet host
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/licenses/dotnet-host/ --no-same-owner LICENSE.txt ThirdPartyNotices.txt
ln -s /usr/share/dotnet/dotnet "${subpkgdir}"/usr/bin/dotnet
ln -s /usr/share/dotnet/host/fxr/${pkgver}/libhostfxr.so "${subpkgdir}"/usr/lib/libhostfxr.so
install -Dm 644 "${srcdir}"/dotnet.sh -t "${subpkgdir}"/etc/profile.d/
}
runtime() {
pkgdesc='The .NET Core runtime'
makedepends='
icu-dev
krb5-dev
libunwind-dev
zlib-dev
openssl-dev
'
depends='
dotnet-host
libgcc
musl
icu
krb5-libs
libunwind
zlib
openssl
'
# XXX: This is a hack to allow this abuild to depend on itself. Adding "dotnet"
# # to makedepends would not work, because abuild implicitly removes $pkgname
# # and $subpackages from the abuild's dependencies.
#
provides="dotnet-bootstrap-runtime-5.0=$pkgver-r$pkgrel"
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner shared/Microsoft.NETCore.App
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/dotnet-runtime-5.0
}
aspnet_runtime() {
pkgdesc='The ASP.NET Core runtime'
depends='dotnet-runtime-5.0'
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner shared/Microsoft.AspNetCore.App
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/aspnet-runtime-5.0
}
netstandard_targeting_pack() {
pkgdesc='The .NET Standard targeting pack'
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner packs/NETStandard.Library.Ref
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/netstandard-targeting-pack-5.0
}
targeting_pack() {
pkgdesc='The .NET Core targeting pack'
depends='netstandard-targeting-pack'
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner packs/Microsoft.NETCore.App.Host.$_targetrid packs/Microsoft.NETCore.App.Ref
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/dotnet-targeting-pack-5.0
}
aspnet_targeting_pack() {
pkgdesc='The ASP.NET Core targeting pack'
depends='dotnet-targeting-pack-5.0'
cd "$builddir"/artifacts/x64/Release
install -dm 755 "$subpkgdir"/usr/share/dotnet "$subpkgdir"/usr/share/licenses
bsdtar -xf dotnet-sdk-*.tar.gz -C "${subpkgdir}"/usr/share/dotnet/ --no-same-owner packs/Microsoft.AspNetCore.App.Ref
ln -s dotnet-host "${subpkgdir}"/usr/share/licenses/aspnet-targeting-pack-5.0
}
# vim: ts=2 sw=2 et:
sha512sums="
27241416cb847597fb770b2964f7054122fc94c6f92ec533bd4ec00ef85c8a4c3fdae33f8292da2d79cc8077643d3e6b4c782cf255296c79ffcd1e4cba1da3a6 dotnet-6.0-6.0.0.git.zip
e61b9e3e5a2305646a616d598378230c9755c5dd5363692cc363f8f4add3807563c324dd86f3a7ae9d358c82d730608e7b293935a2b6c81c0c0f62d752a0a1cf dotnet.sh
db502b7fe368d45093c8f3747a34df2b51fc5bcba7602248afb4352a445228f82b19cb3019fe6e20f5246b1b0b4ab6e3f5acea56a769a1a5815d153d24178207 Private.SourceBuilt.Artifacts.0.1.0-6.0.100-bootstrap.29.noextract
352b28eeb84b8ef0354ec8f27bc85babb9f7976acf5c3219a4d47e4930e63ab3a60cea3f95d7fa23ac88796e33b9cbd3d36e1e2833046c5cfee6c95213b3a21b runtime_disable-package-validation.patch
7fd6e99b0eaaa7ebf3acb0947d553b6f52a27a43287447940586f97f478ae4b5d94ce74b2cb3ca932ed6ae64edac949590b8e066d984dfda9d2bceb1e477aff8 runtime_add-rid-for-alpine-315.patch
ec8fdf712b996bfec8384edca3de6c1f9e77c1b7b3569bf461380932a163416920132d7d83843d86b212a0d54542304c754544f2a1f8f881654d352c4adff73d sdk_telemetry-optout.patch
"

View file

@ -0,0 +1,12 @@
# Set location for AppHost lookup
[ -z "$DOTNET_ROOT" ] && export DOTNET_ROOT=/usr/share/dotnet
# Add dotnet tools directory to PATH
DOTNET_TOOLS_PATH="$HOME/.dotnet/tools"
case "$PATH" in
*"$DOTNET_TOOLS_PATH"* ) true ;;
* ) PATH="$PATH:$DOTNET_TOOLS_PATH" ;;
esac
# Extract self-contained executables under HOME to avoid multi-user issues from using the default '/var/tmp'
[ -z "$DOTNET_BUNDLE_EXTRACT_BASE_DIR" ] && export DOTNET_BUNDLE_EXTRACT_BASE_DIR="${XDG_CACHE_HOME:-"$HOME"/.cache}/dotnet_bundle_extract"

View file

@ -0,0 +1,200 @@
From 09e477fd876de48614d728fbd6582db2a0f203b7 Mon Sep 17 00:00:00 2001
From: "build@apk-groulx" <build@apk-groulx.praxis>
Date: Mon, 29 Nov 2021 20:39:25 +0000
Subject: [PATCH 1/1] add RID for Alpine 3.15
---
.../runtime.compatibility.json | 116 +++++++++++++++++-
.../Microsoft.NETCore.Platforms/src/runtime.json | 25 +++-
.../runtimeGroups.props | 2 +-
3 files changed, 140 insertions(+), 3 deletions(-)
diff --git a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json b/src/libraries/pkg/Microsoft.NETCore.Platforms/runtime.compatibility.json
index 844590f8022..7d7517f043b 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.compatibility.json
@@ -508,6 +508,120 @@
"any",
"base"
],
+ "alpine.3.15": [
+ "alpine.3.15",
+ "alpine.3.14",
+ "alpine.3.13",
+ "alpine.3.12",
+ "alpine.3.11",
+ "alpine.3.10",
+ "alpine.3.9",
+ "alpine.3.8",
+ "alpine.3.7",
+ "alpine.3.6",
+ "alpine",
+ "linux-musl",
+ "linux",
+ "unix",
+ "any",
+ "base"
+ ],
+ "alpine.3.15-arm": [
+ "alpine.3.15-arm",
+ "alpine.3.15",
+ "alpine.3.14-arm",
+ "alpine.3.14",
+ "alpine.3.13-arm",
+ "alpine.3.13",
+ "alpine.3.12-arm",
+ "alpine.3.12",
+ "alpine.3.11-arm",
+ "alpine.3.11",
+ "alpine.3.10-arm",
+ "alpine.3.10",
+ "alpine.3.9-arm",
+ "alpine.3.9",
+ "alpine.3.8-arm",
+ "alpine.3.8",
+ "alpine.3.7-arm",
+ "alpine.3.7",
+ "alpine.3.6-arm",
+ "alpine.3.6",
+ "alpine-arm",
+ "alpine",
+ "linux-musl-arm",
+ "linux-musl",
+ "linux-arm",
+ "linux",
+ "unix-arm",
+ "unix",
+ "any",
+ "base"
+ ],
+ "alpine.3.15-arm64": [
+ "alpine.3.15-arm64",
+ "alpine.3.15",
+ "alpine.3.14-arm64",
+ "alpine.3.14",
+ "alpine.3.13-arm64",
+ "alpine.3.13",
+ "alpine.3.12-arm64",
+ "alpine.3.12",
+ "alpine.3.11-arm64",
+ "alpine.3.11",
+ "alpine.3.10-arm64",
+ "alpine.3.10",
+ "alpine.3.9-arm64",
+ "alpine.3.9",
+ "alpine.3.8-arm64",
+ "alpine.3.8",
+ "alpine.3.7-arm64",
+ "alpine.3.7",
+ "alpine.3.6-arm64",
+ "alpine.3.6",
+ "alpine-arm64",
+ "alpine",
+ "linux-musl-arm64",
+ "linux-musl",
+ "linux-arm64",
+ "linux",
+ "unix-arm64",
+ "unix",
+ "any",
+ "base"
+ ],
+ "alpine.3.15-x64": [
+ "alpine.3.15-x64",
+ "alpine.3.15",
+ "alpine.3.14-x64",
+ "alpine.3.14",
+ "alpine.3.13-x64",
+ "alpine.3.13",
+ "alpine.3.12-x64",
+ "alpine.3.12",
+ "alpine.3.11-x64",
+ "alpine.3.11",
+ "alpine.3.10-x64",
+ "alpine.3.10",
+ "alpine.3.9-x64",
+ "alpine.3.9",
+ "alpine.3.8-x64",
+ "alpine.3.8",
+ "alpine.3.7-x64",
+ "alpine.3.7",
+ "alpine.3.6-x64",
+ "alpine.3.6",
+ "alpine-x64",
+ "alpine",
+ "linux-musl-x64",
+ "linux-musl",
+ "linux-x64",
+ "linux",
+ "unix-x64",
+ "unix",
+ "any",
+ "base"
+ ],
"alpine.3.6": [
"alpine.3.6",
"alpine",
@@ -7239,4 +7353,4 @@
"any",
"base"
]
-}
\ No newline at end of file
+}
diff --git a/src/libraries/pkg/Microsoft.NETCore.Platforms/runtime.json b/src/libraries/pkg/Microsoft.NETCore.Platforms/runtime.json
index 7d6aa102b50..ea7eac422b8 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json
@@ -138,6 +138,29 @@
"alpine.3.13-x64"
]
},
+ "alpine.3.15": {
+ "#import": [
+ "alpine.3.14"
+ ]
+ },
+ "alpine.3.15-arm": {
+ "#import": [
+ "alpine.3.15",
+ "alpine.3.14-arm"
+ ]
+ },
+ "alpine.3.15-arm64": {
+ "#import": [
+ "alpine.3.15",
+ "alpine.3.14-arm64"
+ ]
+ },
+ "alpine.3.15-x64": {
+ "#import": [
+ "alpine.3.15",
+ "alpine.3.14-x64"
+ ]
+ },
"alpine.3.6": {
"#import": [
"alpine"
@@ -3196,4 +3219,4 @@
]
}
}
-}
\ No newline at end of file
+}
diff --git a/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props b/src/libraries/pkg/Microsoft.NETCore.Platforms/runtimeGroups.props
index 3cb3d2df858..c7a346d1672 100644
--- a/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props
+++ b/src/libraries/Microsoft.NETCore.Platforms/src/runtimeGroups.props
@@ -16,7 +16,7 @@
<RuntimeGroup Include="alpine">
<Parent>linux-musl</Parent>
<Architectures>x64;arm;arm64</Architectures>
- <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14</Versions>
+ <Versions>3.6;3.7;3.8;3.9;3.10;3.11;3.12;3.13;3.14;3.15</Versions>
</RuntimeGroup>
<RuntimeGroup Include="android">
--
2.34.0

View file

@ -0,0 +1,12 @@
diff -rupN runtime.4822e3c3aa77eb82b2fb33c9321f923cf11ddde6.orig/eng/packaging.targets runtime.4822e3c3aa77eb82b2fb33c9321f923cf11ddde6/eng/packaging.targets
--- runtime.4822e3c3aa77eb82b2fb33c9321f923cf11ddde6.orig/eng/packaging.targets 2021-11-12 12:56:02.738439496 +0000
+++ runtime.4822e3c3aa77eb82b2fb33c9321f923cf11ddde6/eng/packaging.targets 2021-11-12 12:56:33.683705462 +0000
@@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
- <EnablePackageValidation>true</EnablePackageValidation>
+ <EnablePackageValidation>false</EnablePackageValidation>
<!-- Don't restore prebuilt packages during sourcebuild. -->
<DisablePackageBaselineValidation Condition="'$(DotNetBuildFromSource)' == 'true'">true</DisablePackageBaselineValidation>
<PackageValidationBaselineVersion Condition="'$(PackageValidationBaselineVersion)' == ''">$([MSBuild]::Subtract($(MajorVersion), 1)).0.0</PackageValidationBaselineVersion>

View file

@ -0,0 +1,12 @@
diff -rupN sdk.2c798cbf6bf259ce49d94d91bc665a95d42d7a7f.orig/src/Cli/dotnet/Program.cs sdk.2c798cbf6bf259ce49d94d91bc665a95d42d7a7f/src/Cli/dotnet/Program.cs
--- sdk.2c798cbf6bf259ce49d94d91bc665a95d42d7a7f.orig/src/Cli/dotnet/Program.cs 2021-11-13 08:32:52.012563149 +0000
+++ sdk.2c798cbf6bf259ce49d94d91bc665a95d42d7a7f/src/Cli/dotnet/Program.cs 2021-11-13 08:33:32.414941596 +0000
@@ -171,7 +171,7 @@ namespace Microsoft.DotNet.Cli
bool generateAspNetCertificate =
environmentProvider.GetEnvironmentVariableAsBool("DOTNET_GENERATE_ASPNET_CERTIFICATE", defaultValue: true);
bool telemetryOptout =
- environmentProvider.GetEnvironmentVariableAsBool("DOTNET_CLI_TELEMETRY_OPTOUT", defaultValue: false);
+ environmentProvider.GetEnvironmentVariableAsBool("DOTNET_CLI_TELEMETRY_OPTOUT", defaultValue: true);
bool addGlobalToolsToPath =
environmentProvider.GetEnvironmentVariableAsBool("DOTNET_ADD_GLOBAL_TOOLS_TO_PATH", defaultValue: true);
bool nologo =