diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets
index de356268f77..6719f0961be 100644
--- a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets
+++ b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets
@@ -14,6 +14,16 @@ _ResolveAssemblies MSBuild target.
+
+
+
+ <_ProblematicRIDs Include="linux-arm;linux-arm64;linux-x86;linux-x64" />
+
+
+
+
+
$(_OuterOutputPath)
$(_OuterOutputPath)
diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs
index 492df957658..9b607b9766d 100644
--- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs
+++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs
@@ -386,11 +386,8 @@ public void DotNetBuild (string runtimeIdentifiers, bool isRelease, bool aot)
{
var proj = new XASdkProject {
IsRelease = isRelease,
- ExtraNuGetConfigSources = {
- "https://pkgs.dev.azure.com/azure-public/vside/_packaging/xamarin-impl/nuget/v3/index.json"
- },
PackageReferences = {
- new Package { Id = "Xamarin.AndroidX.AppCompat", Version = "1.2.0.7-net6preview01" },
+ new Package { Id = "Xamarin.AndroidX.AppCompat", Version = "1.3.1.1" },
new Package { Id = "Microsoft.AspNetCore.Components.WebView", Version = "6.0.0-preview.5.21301.17" },
new Package { Id = "Microsoft.Extensions.FileProviders.Embedded", Version = "6.0.0-preview.6.21306.3" },
new Package { Id = "Microsoft.JSInterop", Version = "6.0.0-preview.6.21306.3" },
diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs
index 3813e959264..552f29c31a5 100644
--- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs
+++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs
@@ -416,15 +416,12 @@ public void CopyNuGetConfig (string relativeDirectory)
if (File.Exists (repoNuGetConfig) && !File.Exists (projNugetConfig)) {
Directory.CreateDirectory (Path.GetDirectoryName (projNugetConfig));
File.Copy (repoNuGetConfig, projNugetConfig, overwrite: true);
- // Write additional sources to NuGet.config if needed
- if (ExtraNuGetConfigSources != null) {
- var doc = XDocument.Load (projNugetConfig);
- AddNuGetConfigSources (doc);
- doc.Save (projNugetConfig);
- }
+
+ var doc = XDocument.Load (projNugetConfig);
+ AddNuGetConfigSources (doc);
+
// Set a local PackageReference installation folder if specified
if (!string.IsNullOrEmpty (GlobalPackagesFolder)) {
- var doc = XDocument.Load (projNugetConfig);
XElement gpfElement = doc.Descendants ().FirstOrDefault (c => c.Name.LocalName.ToLowerInvariant () == "add"
&& c.Attributes ().Any (a => a.Name.LocalName.ToLowerInvariant () == "key" && a.Value.ToLowerInvariant () == "globalpackagesfolder"));
if (gpfElement != default (XElement)) {
@@ -442,18 +439,37 @@ public void CopyNuGetConfig (string relativeDirectory)
doc.Root.Add (configParentElement);
}
}
- doc.Save (projNugetConfig);
}
+
+ doc.Save (projNugetConfig);
}
}
///
/// Updates a NuGet.config based on sources in ExtraNuGetConfigSources
+ /// Removes the dotnet6 source, which should not be needed by tests
///
protected void AddNuGetConfigSources (XDocument doc)
{
+ const string elementName = "packageSources";
+ XElement pkgSourcesElement = doc.Root.Elements ().FirstOrDefault (d => string.Equals (d.Name.LocalName, elementName, StringComparison.OrdinalIgnoreCase));
+ if (pkgSourcesElement == null) {
+ doc.Root.Add (pkgSourcesElement= new XElement (elementName));
+ }
+
+ // Remove dotnet6 feed
+ foreach (XElement element in pkgSourcesElement.Elements ()) {
+ XAttribute value = element.Attribute ("value");
+ if (value != null && value.Value == "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json") {
+ element.Remove ();
+ break;
+ }
+ }
+
+ // Add extra sources
+ if (ExtraNuGetConfigSources == null)
+ return;
int sourceIndex = 0;
- XElement pkgSourcesElement = doc.Descendants ().FirstOrDefault (d => d.Name.LocalName.ToLowerInvariant () == "packagesources");
foreach (var source in ExtraNuGetConfigSources) {
var sourceElement = new XElement ("add");
sourceElement.SetAttributeValue ("key", $"testsource{++sourceIndex}");