diff --git a/NuGet.config b/NuGet.config
index bcbce67679cdbc2933446f3cdc7e0d82f7f5341f..b89a993506d658b416cd94516f10dfb70fab66f2 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -4,17 +4,13 @@
     <clear />
     <!--Begin: Package sources managed by Dependency Flow automation. Do not edit the sources below.-->
     <!--  Begin: Package sources from dotnet-efcore -->
-    <add key="darc-int-dotnet-efcore-6e3b6bb" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-efcore-6e3b6bb2/nuget/v3/index.json" />
     <!--  End: Package sources from dotnet-efcore -->
     <!--  Begin: Package sources from dotnet-extensions -->
-    <add key="darc-int-dotnet-extensions-a5c93f6" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-extensions-a5c93f64/nuget/v3/index.json" />
     <!--  Begin: Package sources from dotnet-razor-tooling -->
-    <add key="darc-int-dotnet-razor-tooling-4ca8978" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-razor-tooling-4ca89780/nuget/v3/index.json" />
     <!--  End: Package sources from dotnet-razor-tooling -->
     <!--  Begin: Package sources from dotnet-corefx -->
     <!--  End: Package sources from dotnet-corefx -->
     <!--  Begin: Package sources from dotnet-core-setup -->
-    <add key="darc-int-dotnet-core-setup-0bcbc31" value="https://pkgs.dev.azure.com/dnceng/_packaging/darc-int-dotnet-core-setup-0bcbc312/nuget/v3/index.json" />
     <!--  End: Package sources from dotnet-core-setup -->
     <!--  End: Package sources from dotnet-extensions -->
     <!--End: Package sources managed by Dependency Flow automation. Do not edit the sources above.-->
@@ -27,15 +23,11 @@
     <clear />
     <!--Begin: Package sources managed by Dependency Flow automation. Do not edit the sources below.-->
     <!--  Begin: Package sources from dotnet-core-setup -->
-    <add key="darc-int-dotnet-core-setup-0bcbc31" value="true" />
     <!--  Begin: Package sources from dotnet-efcore -->
-    <add key="darc-int-dotnet-efcore-6e3b6bb" value="true" />
     <!--  End: Package sources from dotnet-efcore -->
     <!--  Begin: Package sources from dotnet-extensions -->
-    <add key="darc-int-dotnet-extensions-a5c93f6" value="true" />
     <!--  End: Package sources from dotnet-extensions -->
     <!--  Begin: Package sources from dotnet-razor-tooling -->
-    <add key="darc-int-dotnet-razor-tooling-4ca8978" value="true" />
     <!--  End: Package sources from dotnet-razor-tooling -->
     <!--  End: Package sources from dotnet-core-setup -->
     <!--  Begin: Package sources from dotnet-corefx -->
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 819cfd5930adf156721a8c8dc0c64118a393fa77..a30fd838ae75edb22bb097942e43149708696ae1 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -418,13 +418,13 @@
       <Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-extensions</Uri>
       <Sha>a5c93f643829c9d3d804468b193d27fa68d87bb0</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.22378.5">
+    <Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.22505.4">
       <Uri>https://github.com/dotnet/arcade</Uri>
-      <Sha>0de02c603d72d93709a9c7f31d67289e8833b06a</Sha>
+      <Sha>ce5a281156dfae3c050e63c1f288b6a488e978fe</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.22378.5">
+    <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.22505.4">
       <Uri>https://github.com/dotnet/arcade</Uri>
-      <Sha>0de02c603d72d93709a9c7f31d67289e8833b06a</Sha>
+      <Sha>ce5a281156dfae3c050e63c1f288b6a488e978fe</Sha>
     </Dependency>
     <Dependency Name="Microsoft.AspNetCore.Testing" Version="3.1.29-servicing.22417.4" CoherentParentDependency="Microsoft.EntityFrameworkCore">
       <Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-extensions</Uri>
diff --git a/eng/Versions.props b/eng/Versions.props
index 4eba9381861deac9209008eec54ce556f799fc97..debcfcc4783de3367a311825b3da29ac3f69b4e4 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -64,7 +64,7 @@
   -->
   <PropertyGroup Label="Automated">
     <!-- Packages from dotnet/arcade -->
-    <MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.22378.5</MicrosoftDotNetGenAPIPackageVersion>
+    <MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.22505.4</MicrosoftDotNetGenAPIPackageVersion>
     <!-- Packages from dotnet/roslyn -->
     <MicrosoftNetCompilersToolsetPackageVersion>3.4.1-beta4-20127-10</MicrosoftNetCompilersToolsetPackageVersion>
     <!-- Packages from dotnet/core-setup -->
diff --git a/eng/common/build.ps1 b/eng/common/build.ps1
index a2d79b4468c61b2cc42de1bd6b9247427f000d70..90f8f51359452724e8f1ba6790ac922ba860664f 100644
--- a/eng/common/build.ps1
+++ b/eng/common/build.ps1
@@ -24,6 +24,7 @@ Param(
   [switch] $help,
   [string] $runtimeSourceFeed = "",
   [string] $runtimeSourceFeedKey = "",
+  [switch] $nativeToolsOnMachine,
   [Parameter(ValueFromRemainingArguments=$true)][String[]]$properties
 )
 
@@ -60,6 +61,7 @@ function Print-Usage() {
     Write-Host "  -msbuildEngine <value>        Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
     Write-Host "  -runtimeSourceFeed <value>    Alternate feed source for restoring .NET Runtimes and SDKs"
     Write-Host "  -runtimeSourceFeedKey <value> Key value for non-public values of runtimeSourceFeed"
+    Write-Host "  -nativeToolsOnMachine   Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
     Write-Host ""
 
     Write-Host "Command line arguments not listed above are passed thru to msbuild."
@@ -134,6 +136,9 @@ try {
     . $configureToolsetScript
   }
 
+  if ($nativeToolsOnMachine) {
+    $env:NativeToolsOnMachine = $true
+  }
   if (($restore) -and ($null -eq $env:DisableNativeToolsetInstalls)) {
     InitializeNativeTools
   }
diff --git a/eng/common/darc-init.ps1 b/eng/common/darc-init.ps1
index 435e7641341b16165cbaf8578cc1414402ed42d7..7df4726cb26881b8e5a81b8abc371934e3e9aef9 100644
--- a/eng/common/darc-init.ps1
+++ b/eng/common/darc-init.ps1
@@ -10,8 +10,7 @@ param (
 function InstallDarcCli ($darcVersion, $toolpath) {
   $darcCliPackageName = 'microsoft.dotnet.darc'
 
-  $dotnetRoot = InitializeDotNetCli -install:$true
-  $dotnet = "$dotnetRoot\dotnet.exe"
+  $dotnet = "dotnet"
   $toolList = & "$dotnet" tool list -g
 
   if ($toolList -like "*$darcCliPackageName*") {
diff --git a/eng/common/init-tools-native.ps1 b/eng/common/init-tools-native.ps1
index 31c496460ea976cf459f0fc736132544aa8cf952..526711adf94c289abc3a070bf9f9c9758d3e6caf 100644
--- a/eng/common/init-tools-native.ps1
+++ b/eng/common/init-tools-native.ps1
@@ -111,6 +111,7 @@ try {
             $ToolPath = Convert-Path -Path $BinPath
             Write-Host "Adding $ToolName to the path ($ToolPath)..."
             Write-Host "##vso[task.prependpath]$ToolPath"
+            $env:PATH = "$ToolPath;$env:PATH"
             $InstalledTools += @{ $ToolName = $ToolDirectory.FullName }
           }
         }
diff --git a/eng/common/templates/job/execute-sdl.yml b/eng/common/templates/job/execute-sdl.yml
index 1ef8c7f6760600f2b51099f92e622d141e56372f..6e77e0eb0e91dbdcd35d2f5d26ef6cb938a428c3 100644
--- a/eng/common/templates/job/execute-sdl.yml
+++ b/eng/common/templates/job/execute-sdl.yml
@@ -20,7 +20,7 @@ jobs:
     - group: DotNet-VSTS-Bot
   pool:
     name: NetCore1ESPool-Svc-Internal
-    demands: ImageOverride -equals Build.Server.Amd64.VS2019
+    demands: ImageOverride -equals windows.vs2019.amd64
   steps:
   - checkout: self
     clean: true
diff --git a/eng/common/templates/job/onelocbuild.yml b/eng/common/templates/job/onelocbuild.yml
index a83a05b3876e8e0332121da6c7a99762072c3676..cb9498bcefadc7a8f7425286fb1d77bcfed96c18 100644
--- a/eng/common/templates/job/onelocbuild.yml
+++ b/eng/common/templates/job/onelocbuild.yml
@@ -5,7 +5,7 @@ parameters:
   # Optional: A defined YAML pool - https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema?view=vsts&tabs=schema#pool
   pool:
     name: NetCore1ESPool-Svc-Internal
-    demands: ImageOverride -equals Build.Server.Amd64.VS2019
+    demands: ImageOverride -equals windows.vs2019.amd64
 
   CeapexPat: $(dn-bot-ceapex-package-r) # PAT for the loc AzDO instance https://dev.azure.com/ceapex
   GithubPat: $(BotAccount-dotnet-bot-repo-PAT)
diff --git a/eng/common/templates/jobs/jobs.yml b/eng/common/templates/jobs/jobs.yml
index 1b73ba7f1ca5d24cdca36d12168bb82dde9f68fc..9ff2dd17e0add2e837ea499ba58d9e1ed25eb489 100644
--- a/eng/common/templates/jobs/jobs.yml
+++ b/eng/common/templates/jobs/jobs.yml
@@ -75,7 +75,7 @@ jobs:
           - ${{ job.job }}
       pool:
         name: NetCore1ESPool-Svc-Internal
-        demands: ImageOverride -equals Build.Server.Amd64.VS2019
+        demands: ImageOverride -equals windows.vs2019.amd64
       runAsPublic: ${{ parameters.runAsPublic }}
       publishUsingPipelines: ${{ parameters.enablePublishUsingPipelines }}
       enablePublishBuildArtifacts: ${{ parameters.enablePublishBuildArtifacts }}
@@ -89,4 +89,4 @@ jobs:
         - Asset_Registry_Publish
       pool:
         name: NetCore1ESPool-Svc-Internal
-        demands: ImageOverride -equals Build.Server.Amd64.VS2019
+        demands: ImageOverride -equals windows.vs2019.amd64
diff --git a/eng/common/templates/post-build/channels/generic-internal-channel.yml b/eng/common/templates/post-build/channels/generic-internal-channel.yml
index 7c7adf91e6605c6901806a32e26504eccfe823e1..43e2e3ee38ae9003e4ecc2384483be8caf9580a5 100644
--- a/eng/common/templates/post-build/channels/generic-internal-channel.yml
+++ b/eng/common/templates/post-build/channels/generic-internal-channel.yml
@@ -25,7 +25,7 @@ stages:
       - group: DotNet-Symbol-Server-Pats
     pool:
       name: NetCore1ESPool-Svc-Internal
-      demands: ImageOverride -equals Build.Server.Amd64.VS2019
+      demands: ImageOverride -equals windows.vs2019.amd64
     steps:
       # This is necessary whenever we want to publish/restore to an AzDO private feed
       - task: NuGetAuthenticate@0
@@ -69,7 +69,7 @@ stages:
     condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }}))
     pool:
       name: NetCore1ESPool-Svc-Internal
-      demands: ImageOverride -equals Build.Server.Amd64.VS2019
+      demands: ImageOverride -equals windows.vs2019.amd64
     steps:
       - task: DownloadBuildArtifacts@0
         displayName: Download Package Artifacts
diff --git a/eng/common/templates/post-build/channels/generic-public-channel.yml b/eng/common/templates/post-build/channels/generic-public-channel.yml
index 8787f434ddaf62728469bc15826a31d14e6124e4..0702d326470df37d2d24b92a99518463b7168f3b 100644
--- a/eng/common/templates/post-build/channels/generic-public-channel.yml
+++ b/eng/common/templates/post-build/channels/generic-public-channel.yml
@@ -26,7 +26,7 @@ stages:
       - group: DotNet-Symbol-Server-Pats
     pool:
       name: NetCore1ESPool-Svc-Internal
-      demands: ImageOverride -equals Build.Server.Amd64.VS2019
+      demands: ImageOverride -equals windows.vs2019.amd64
     steps:
       - task: DownloadBuildArtifacts@0
         displayName: Download Blob Artifacts
@@ -76,7 +76,7 @@ stages:
     condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }}))
     pool:
       name: NetCore1ESPool-Svc-Internal
-      demands: ImageOverride -equals Build.Server.Amd64.VS2019
+      demands: ImageOverride -equals windows.vs2019.amd64
     steps:
       - task: DownloadBuildArtifacts@0
         displayName: Download Package Artifacts
diff --git a/eng/common/templates/post-build/darc-gather-drop.yml b/eng/common/templates/post-build/darc-gather-drop.yml
index 0e69f8c4e6929456cd309d91b3481b970f7d6491..8ca3b182a95e3a35fa4bff49130b99dc165e9158 100644
--- a/eng/common/templates/post-build/darc-gather-drop.yml
+++ b/eng/common/templates/post-build/darc-gather-drop.yml
@@ -11,7 +11,7 @@ jobs:
       value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
   pool:
     name: NetCore1ESPool-Svc-Internal
-    demands: ImageOverride -equals Build.Server.Amd64.VS2019
+    demands: ImageOverride -equals windows.vs2019.amd64
   steps:
     - task: PowerShell@2
       displayName: Darc gather-drop
diff --git a/eng/common/templates/post-build/post-build.yml b/eng/common/templates/post-build/post-build.yml
index 9460ba5022dc38f656a775317dd957164bc1794b..ddc49df4fa8c424f96f842101becc66a36ad57ad 100644
--- a/eng/common/templates/post-build/post-build.yml
+++ b/eng/common/templates/post-build/post-build.yml
@@ -29,7 +29,7 @@ stages:
       displayName: NuGet Validation
       pool:
         name: NetCore1ESPool-Svc-Internal
-        demands: ImageOverride -equals Build.Server.Amd64.VS2019
+        demands: ImageOverride -equals windows.vs2019.amd64
       steps:
         - task: DownloadBuildArtifacts@0
           displayName: Download Package Artifacts
@@ -49,7 +49,7 @@ stages:
       displayName: Signing Validation
       pool:
         name: NetCore1ESPool-Svc-Internal
-        demands: ImageOverride -equals Build.Server.Amd64.VS2019
+        demands: ImageOverride -equals windows.vs2019.amd64
       steps:
         # This is necessary whenever we want to publish/restore to an AzDO private feed
         # Since sdk-task.ps1 tries to restore packages we need to do this authentication here
@@ -80,7 +80,7 @@ stages:
         - template: common-variables.yml
       pool:
         name: NetCore1ESPool-Svc-Internal
-        demands: ImageOverride -equals Build.Server.Amd64.VS2019
+        demands: ImageOverride -equals windows.vs2019.amd64
       steps:
         - task: DownloadBuildArtifacts@0
           displayName: Download Blob Artifacts
diff --git a/eng/common/templates/post-build/promote-build.yml b/eng/common/templates/post-build/promote-build.yml
index 31a13e2dd7bb39ddafb4f6d6c6ac8d832e593a46..e4923e2503a98e18dcefde35385e63e2823d2dd5 100644
--- a/eng/common/templates/post-build/promote-build.yml
+++ b/eng/common/templates/post-build/promote-build.yml
@@ -13,7 +13,7 @@ jobs:
       value: ${{ parameters.ChannelId }}
   pool:
     name: NetCore1ESPool-Svc-Internal
-    demands: ImageOverride -equals Build.Server.Amd64.VS2019
+    demands: ImageOverride -equals windows.vs2019.amd64
   steps:
     - task: PowerShell@2
       displayName: Add Build to Channel
diff --git a/eng/common/templates/post-build/setup-maestro-vars.yml b/eng/common/templates/post-build/setup-maestro-vars.yml
index e526b07747426d4b98c1873910f31a087d3f1cfe..d28a63f41243f27c921396a4c382b39f4edb52d4 100644
--- a/eng/common/templates/post-build/setup-maestro-vars.yml
+++ b/eng/common/templates/post-build/setup-maestro-vars.yml
@@ -3,7 +3,7 @@ jobs:
   displayName: Setup Maestro Vars
   pool:
     name: NetCore1ESPool-Svc-Internal
-    demands: ImageOverride -equals Build.Server.Amd64.VS2019
+    demands: ImageOverride -equals windows.vs2019.amd64
   steps:
     - task: DownloadBuildArtifacts@0
       displayName: Download Release Configs
diff --git a/global.json b/global.json
index d3c4887e8fda4c25d5a7f58ef77835f7594ab240..b11b18f4053f6451781c4cfe5754e0785d0d6961 100644
--- a/global.json
+++ b/global.json
@@ -26,6 +26,6 @@
   },
   "msbuild-sdks": {
     "Yarn.MSBuild": "1.22.10",
-    "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.22378.5"
+    "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.22505.4"
   }
 }