sdk
sdk copied to clipboard
Workload ID maui-android is not recognized
Description
analogous to dotnet/maui#3099 we again get "Workload ID maui-android is not recognized." when running:
~$ dotnet workload install maui-android
Workload ID maui-android is not recognized.
interestingly the MAUI workload is not even listed when doing:
~$ dotnet workload search
Workload ID Description
----------------------------------------------------------------------------
aspire .NET Aspire SDK (Preview)
wasi-experimental workloads/wasi-experimental/description
wasm-experimental workloads/wasm-experimental/description
wasm-experimental-net7 .NET WebAssembly experimental tooling for net7.0
wasm-tools .NET WebAssembly build tools
wasm-tools-net6 .NET WebAssembly build tools for net6.0
wasm-tools-net7 .NET WebAssembly build tools for net7.0
my setup:
~$ dotnet --version --list-sdks
8.0.101
~$ cat /etc/os-release
PRETTY_NAME="Ubuntu 23.10"
...
Steps to Reproduce
No response
Link to public reproduction project repository
No response
Version with bug
8.0.6
Is this a regression from previous behavior?
Yes, this used to work in .NET MAUI
Last version that worked well
Unknown/Other
Affected platforms
I was not able test on other platforms
Affected platform versions
No response
Did you find any workaround?
No response
Relevant log output
No response
dotnet workload install maui
How did you install the SDK? What's in the dotnet/sdk-manifests folder? Seems like a bad install.
How did you install the SDK? What's in the dotnet/sdk-manifests folder? Seems like a bad install.
First i used snap-store's NET8 SDK package for installation, but the resulting read-only directory where it's binaries are put in prohibits further dotnet workload installations. So i went on fiddling around as documented in #18933 but in the end i wasn't able to get the maui-android workload to run with NET8. So i completely purged all dotnet artifacts particularly to beware of the dreaded package-mixups documented in the official microsoft-learn article and reinstalled it according the official docs for ubuntu 23.10 where i decided to stay on the official canonical package repo (instead of microsofts provided one for easier future upgrades).
Proofing myself everything worked as expected i newed-up a blazor projected utilizing dotnet tool's provided template. For completeness i'd like to mention since this is a new setup i also went on installing the azure CLI, but this time - lacking any other options - choosing the microsoft package repo for ubuntu jammy.
~$ sudo find / -name sdk-manifests
...
/usr/lib/dotnet/sdk-manifests
...
~$ ls -la /usr/lib/dotnet/sdk-manifests/
total 12
drwxr-xr-x 3 root root 4096 Jan 20 13:29 .
drwxr-xr-x 9 root root 4096 Jan 20 13:29 ..
drwxr-xr-x 9 root root 4096 Jan 20 13:29 8.0.100
~$ dotnet --version
8.0.101
~$ dotnet --list-sdks
8.0.101 [/usr/lib/dotnet/sdk]
~$ ls -la /usr/lib/dotnet/sdk-manifests/8.0.100/
total 36
drwxr-xr-x 9 root root 4096 Jan 20 13:29 .
drwxr-xr-x 3 root root 4096 Jan 20 13:29 ..
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.sdk.aspire
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.emscripten.current
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.emscripten.net6
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.emscripten.net7
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.mono.toolchain.current
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.mono.toolchain.net6
drwxr-xr-x 3 root root 4096 Jan 20 13:29 microsoft.net.workload.mono.toolchain.net7
for further details according the mono.toolchain.current
:
~$ ls -la /usr/lib/dotnet/sdk-manifests/8.0.100/microsoft.net.workload.mono.toolchain.current/
total 12
drwxr-xr-x 3 root root 4096 Jan 20 13:29 .
drwxr-xr-x 9 root root 4096 Jan 20 13:29 ..
drwxr-xr-x 3 root root 4096 Jan 20 13:29 8.0.1
~$ ls -la /usr/lib/dotnet/sdk-manifests/8.0.100/microsoft.net.workload.mono.toolchain.current/8.0.1/
total 56
drwxr-xr-x 3 root root 4096 Jan 20 13:29 .
drwxr-xr-x 3 root root 4096 Jan 20 13:29 ..
drwxr-xr-x 2 root root 4096 Jan 20 13:29 localize
-rw-r--r-- 1 root root 15596 Jan 6 17:23 WorkloadManifest.json
-rw-r--r-- 1 root root 16677 Jan 6 17:23 WorkloadManifest.targets
-rw-r--r-- 1 root root 674 Jan 6 17:23 WorkloadManifest.Wasi.targets
-rw-r--r-- 1 root root 3947 Jan 6 17:23 WorkloadTelemetry.targets
~$ cat /usr/lib/dotnet/sdk-manifests/8.0.100/microsoft.net.workload.mono.toolchain.current/8.0.1/WorkloadManifest.json
{
"version": "8.0.1",
"depends-on": {
"Microsoft.NET.Workload.Emscripten.Current": "8.0.1"
},
"workloads": {
"wasm-tools": {
"description": ".NET WebAssembly build tools for net8.0",
"packs": [
"Microsoft.NET.Runtime.WebAssembly.Sdk",
"Microsoft.NETCore.App.Runtime.Mono.browser-wasm",
"Microsoft.NETCore.App.Runtime.AOT.Cross.browser-wasm"
],
"extends": [ "microsoft-net-runtime-mono-tooling", "microsoft-net-sdk-emscripten" ],
"platforms": [ "win-x64", "win-arm64", "linux-x64", "linux-arm64", "osx-x64", "osx-arm64"]
},
"wasm-experimental": {
"description": ".NET WebAssembly experimental tooling for net8.0",
"packs": [
"Microsoft.NET.Runtime.WebAssembly.Templates",
"Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm",
],
"extends": [ "wasm-tools" ],
"platforms": [ "win-x64", "win-arm64", "linux-x64", "linux-arm64", "osx-x64", "osx-arm64" ]
},
"wasi-experimental": {
"description": ".NET WASI experimental for net8.0",
"packs": [
"Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk",
"Microsoft.NETCore.App.Runtime.Mono.wasi-wasm",
"Microsoft.NET.Runtime.WebAssembly.Templates"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "linux-x64", "linux-arm64", "osx-x64", "osx-arm64" ]
},
"mobile-librarybuilder": {
"description": "Mobile SDK for building a self-contained .NET native library",
"packs": [
"Microsoft.NET.Runtime.LibraryBuilder.Sdk"
],
"extends": [ "microsoft-net-runtime-android-aot", "microsoft-net-runtime-ios", "microsoft-net-runtime-maccatalyst", "microsoft-net-runtime-tvos" ],
"platforms": [ "win-x64", "win-arm64", "osx-x64", "osx-arm64" ]
},
"microsoft-net-runtime-android": {
"abstract": true,
"description": "Android Mono Runtime",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.android-arm",
"Microsoft.NETCore.App.Runtime.Mono.android-arm64",
"Microsoft.NETCore.App.Runtime.Mono.android-x64",
"Microsoft.NETCore.App.Runtime.Mono.android-x86"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "linux-x64", "osx-x64", "osx-arm64" ]
},
"microsoft-net-runtime-android-aot": {
"abstract": true,
"description": "Android Mono AOT Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-x86",
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-x64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-arm",
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-arm64"
],
"extends": [ "microsoft-net-runtime-android" ],
"platforms": [ "win-x64", "win-arm64", "linux-x64", "osx-x64", "osx-arm64" ]
},
"microsoft-net-runtime-ios": {
"abstract": true,
"description": "iOS Mono Runtime and AOT Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x64"
],
"extends": [ "runtimes-ios" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"runtimes-ios": {
"abstract": true,
"description": "iOS Mono Runtime Packs",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.ios-arm64",
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64",
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"microsoft-net-runtime-maccatalyst": {
"abstract": true,
"description": "MacCatalyst Mono Runtime and AOT Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-x64"
],
"extends": [ "runtimes-maccatalyst" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"runtimes-maccatalyst": {
"abstract": true,
"description": "MacCatalyst Mono Runtime Packs",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64",
"Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"microsoft-net-runtime-macos": {
"abstract": true,
"description": "MacOS CoreCLR and Mono Runtime Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.osx-arm64",
"Microsoft.NETCore.App.Runtime.Mono.osx-x64",
"Microsoft.NETCore.App.Runtime.osx-arm64",
"Microsoft.NETCore.App.Runtime.osx-x64"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "osx-arm64", "osx-x64" ]
},
"microsoft-net-runtime-tvos": {
"abstract": true,
"description": "tvOS Mono Runtime and AOT Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvos-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvossimulator-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvossimulator-x64"
],
"extends": [ "runtimes-tvos" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"runtimes-tvos": {
"abstract": true,
"description": "tvOS Mono Runtime Packs",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.tvos-arm64",
"Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64",
"Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
},
"runtimes-windows": {
"abstract": true,
"description": "Windows Runtime Packs",
"packs": [
"Microsoft.NETCore.App.Runtime.win-x64",
"Microsoft.NETCore.App.Runtime.win-x86",
"Microsoft.NETCore.App.Runtime.win-arm64"
]
},
"microsoft-net-runtime-mono-tooling": {
"abstract": true,
"description": "Shared native build tooling for Mono runtime",
"packs": [
"Microsoft.NET.Runtime.MonoAOTCompiler.Task",
"Microsoft.NET.Runtime.MonoTargets.Sdk"
]
}
},
"packs": {
"Microsoft.NET.Runtime.MonoAOTCompiler.Task": {
"kind": "Sdk",
"version": "8.0.1"
},
"Microsoft.NET.Runtime.MonoTargets.Sdk": {
"kind": "Sdk",
"version": "8.0.1"
},
"Microsoft.NET.Runtime.LibraryBuilder.Sdk": {
"kind": "Sdk",
"version": "8.0.1"
},
"Microsoft.NET.Runtime.WebAssembly.Sdk": {
"kind": "Sdk",
"version": "8.0.1"
},
"Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk": {
"kind": "Sdk",
"version": "8.0.1"
},
"Microsoft.NET.Runtime.WebAssembly.Templates": {
"kind": "template",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.android-arm": {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.android-arm64": {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.android-x64": {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.android-x86": {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-x86": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"win-x64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86",
"win-arm64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x86",
"linux-x64": "Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x86",
"linux-arm64": "Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-x86",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x86",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x86"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-x64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"win-x64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64",
"win-arm64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-x64",
"linux-x64": "Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-x64",
"linux-arm64": "Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-x64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-x64",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-arm": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"win-x64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm",
"win-arm64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm",
"linux-x64": "Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm",
"linux-arm64": "Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-arm",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.android-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"win-x64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64",
"win-arm64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-arm64",
"linux-x64": "Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.android-arm64",
"linux-arm64": "Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.android-arm64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.android-arm64",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.android-arm64"
}
},
"Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.osx-arm64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.osx-x64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.osx-arm64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.osx-x64": {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.ios-arm64" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64" : {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64" : {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvos-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvos-arm64",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvos-arm64",
}
},
"Microsoft.NETCore.App.Runtime.Mono.tvos-arm64" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.tvossimulator-arm64" : {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.Mono.tvossimulator-x64" : {
"kind": "framework",
"version": "8.0.1",
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-arm64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.maccatalyst-x64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-x64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.maccatalyst-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvossimulator-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvossimulator-arm64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-arm64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvossimulator-x64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.tvossimulator-x64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm64",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.ios-arm64",
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-arm64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-arm64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x64": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-x64",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.browser-wasm": {
"kind": "Sdk",
"version": "8.0.1",
"alias-to": {
"win-x64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm",
"win-arm64": "Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm",
"linux-x64": "Microsoft.NETCore.App.Runtime.AOT.linux-x64.Cross.browser-wasm",
"linux-arm64": "Microsoft.NETCore.App.Runtime.AOT.linux-arm64.Cross.browser-wasm",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.browser-wasm",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.browser-wasm"
}
},
"Microsoft.NETCore.App.Runtime.Mono.browser-wasm" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.Mono.wasi-wasm" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.win-x64" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.win-x86" : {
"kind": "framework",
"version": "8.0.1"
},
"Microsoft.NETCore.App.Runtime.win-arm64" : {
"kind": "framework",
"version": "8.0.1"
}
}
}
further details about my dotnet setup:
~$ ls snap/ | grep dotnet
~$
~$ sudo find / -name dotnet
/etc/dotnet
/usr/share/bash-completion/completions/dotnet
/usr/bin/dotnet
/usr/lib/dotnet
/usr/lib/dotnet/dotnet
/usr/lib/dotnet/packs/Microsoft.AspNetCore.App.Ref/8.0.1/analyzers/dotnet
/usr/lib/dotnet/packs/Microsoft.NETCore.App.Ref/8.0.1/analyzers/dotnet
/home/me/.config/Code - Insiders/User/globalStorage/mindaro.mindaro/file-downloader-downloads/dotnet
/home/me/.config/Code - Insiders/User/globalStorage/mindaro.mindaro/file-downloader-downloads/dotnet/dotnet
/home/me/.nuget/packages/system.text.json/7.0.3/analyzers/dotnet
/home/me/.nuget/packages/microsoft.extensions.configuration.binder/8.0.0/analyzers/dotnet
/home/me/.nuget/packages/microsoft.extensions.options/8.0.0/analyzers/dotnet
/home/me/.nuget/packages/microsoft.aspnetcore.components.analyzers/7.0.14/analyzers/dotnet
/home/me/.nuget/packages/microsoft.aspnetcore.components.analyzers/8.0.0/analyzers/dotnet
/home/me/.nuget/packages/microsoft.extensions.logging.abstractions/8.0.0/analyzers/dotnet
/home/me/.nuget/packages/microsoft.extensions.logging.abstractions/7.0.0/analyzers/dotnet
/home/me/.nuget/packages/microsoft.extensions.logging.abstractions/7.0.1/analyzers/dotnet
~$ sudo find / -name .dotnet
/tmp/.dotnet
/home/me/.dotnet
/home/me/.config/Code - Insiders/User/globalStorage/ms-dotnettools.vscode-dotnet-runtime/.dotnet
~$ cat /etc/dotnet/install_location
/usr/lib/dotnet
~$ cat /etc/dotnet/install_location_x64
/usr/lib/dotnet
~$ ls -la /usr/bin/dotnet
lrwxrwxrwx 1 root root 20 Jan 6 17:23 /usr/bin/dotnet -> ../lib/dotnet/dotnet
~$ ls -la /lib/dotnet
total 208
drwxr-xr-x 9 root root 4096 Jan 20 13:29 .
drwxr-xr-x 108 root root 4096 Jan 20 13:48 ..
-rwxr-xr-x 1 root root 70904 Jan 6 17:23 dotnet
drwxr-xr-x 3 root root 4096 Jan 20 13:28 host
-rw-r--r-- 1 root root 1116 Jan 6 17:23 LICENSE.txt
drwxr-xr-x 3 root root 4096 Jan 20 13:29 metadata
drwxr-xr-x 8 root root 4096 Jan 20 13:29 packs
drwxr-xr-x 3 root root 4096 Jan 20 13:29 sdk
drwxr-xr-x 3 root root 4096 Jan 20 13:29 sdk-manifests
drwxr-xr-x 4 root root 4096 Jan 20 13:29 shared
drwxr-xr-x 3 root root 4096 Jan 20 13:29 templates
-rw-r--r-- 1 root root 94355 Jan 6 17:23 ThirdPartyNotices.txt
~$ ls -la .templateengine/
total 16
drwxrwxr-x 4 me me 4096 Jan 8 18:33 .
drwxr-x--- 35 me me 4096 Jan 21 21:32 ..
drwxrwxr-x 4 me me 4096 Jan 20 19:01 dotnetcli
drwxrwxr-x 2 me me 4096 Jan 8 18:33 packages
~$ ls -la .templateengine/dotnetcli/
total 16
drwxrwxr-x 4 me me 4096 Jan 20 19:01 .
drwxrwxr-x 4 me me 4096 Jan 8 18:33 ..
drwxrwxr-x 2 me me 4096 Jan 8 18:33 8.0.100
drwxrwxr-x 2 me me 4096 Jan 20 19:01 8.0.101
~$ ls -la .templateengine/dotnetcli/8.0.101
total 312
drwxrwxr-x 2 me me 4096 Jan 20 19:01 .
drwxrwxr-x 4 me me 4096 Jan 20 19:01 ..
-rw-rw-r-- 1 me me 309055 Jan 20 19:01 templatecache.json
~$ ls -la .templateengine/packages/
total 8
drwxrwxr-x 2 me me 4096 Jan 8 18:33 .
drwxrwxr-x 4 me me 4096 Jan 8 18:33 ..
~$ ls -la .dotnet/
total 36
drwxrwxr-x 5 me me 4096 Jan 20 19:20 .
drwxr-x--- 35 me me 4096 Jan 21 21:32 ..
-rw-rw-r-- 1 me me 0 Jan 5 17:17 8.0.100.aspNetCertificateSentinel
-rw-rw-r-- 1 me me 0 Jan 5 17:17 8.0.100.dotnetFirstUseSentinel
-rw-rw-r-- 1 me me 5 Jan 5 17:17 8.0.100_IsDockerContainer.dotnetUserLevelCache
-rw-rw-r-- 1 me me 64 Jan 5 17:17 8.0.100_MachineId.dotnetUserLevelCache
-rw-rw-r-- 1 me me 0 Jan 5 17:14 8.0.100.toolpath.sentinel
-rw-rw-r-- 1 me me 0 Jan 20 13:32 8.0.101.aspNetCertificateSentinel
-rw-rw-r-- 1 me me 0 Jan 20 13:32 8.0.101.dotnetFirstUseSentinel
-rw-rw-r-- 1 me me 0 Jan 20 13:32 8.0.101.toolpath.sentinel
drwxrwxr-x 3 me me 4096 Dec 29 21:30 corefx
-rw-rw-r-- 1 me me 64 Jan 5 17:17 MachineId.v1.dotnetUserLevelCache
drwxrwxr-x 3 me me 4096 Jan 20 19:20 sdk-advertising
drwxrwxr-x 2 me me 4096 Jan 8 19:55 TelemetryStorageService
-rw-rw-r-- 1 me me 0 Jan 20 19:20 .workloadAdvertisingManifestSentinel8.0.100
-rw-rw-r-- 1 me me 2 Jan 22 21:18 .workloadAdvertisingUpdates8.0.100
~$ cat .dotnet/8.0.101.toolpath.sentinel
~$ cat .dotnet/.workloadAdvertisingUpdates8.0.100
[]
~$ ls -la .dotnet/sdk-advertising/ .dotnet/8.0.101.toolpath.sentinel
total 12
drwxrwxr-x 3 me me 4096 Jan 20 19:20 .
drwxrwxr-x 5 me me 4096 Jan 20 19:20 ..
drwxrwxr-x 9 me me 4096 Jan 22 21:18 8.0.100
~$ ls -la .dotnet/sdk-advertising/8.0.100/
total 36
drwxrwxr-x 9 me me 4096 Jan 22 21:18 .
drwxrwxr-x 3 me me 4096 Jan 20 19:20 ..
drwxrwxr-x 2 me me 4096 Jan 22 21:18 microsoft.net.sdk.aspire
drwxrwxr-x 2 me me 4096 Jan 22 21:18 microsoft.net.workload.emscripten.current
drwxrwxr-x 2 me me 4096 Jan 22 21:18 microsoft.net.workload.emscripten.net6
drwxrwxr-x 2 me me 4096 Jan 22 21:18 microsoft.net.workload.emscripten.net7
drwxrwxr-x 3 me me 4096 Jan 22 21:18 microsoft.net.workload.mono.toolchain.current
drwxrwxr-x 3 me me 4096 Jan 22 21:18 microsoft.net.workload.mono.toolchain.net6
drwxrwxr-x 3 me me 4096 Jan 22 21:18 microsoft.net.workload.mono.toolchain.net7
~$ tree /lib/dotnet/ -d -I '??' -I '??-*'
/lib/dotnet/
├── host
│ └── fxr
│ └── 8.0.1
├── metadata
│ └── workloads
│ └── 8.0.100
├── packs
│ ├── Microsoft.AspNetCore.App.Ref
│ │ └── 8.0.1
│ │ ├── analyzers
│ │ │ └── dotnet
│ │ │ └── roslyn4.4
│ │ ├── data
│ │ └── ref
│ │ └── net8.0
│ ├── Microsoft.AspNetCore.App.Runtime.ubuntu.23.10-x64
│ │ └── 8.0.1
│ │ ├── data
│ │ └── runtimes
│ │ └── ubuntu.23.10-x64
│ │ └── lib
│ │ └── net8.0
│ ├── Microsoft.NETCore.App.Host.ubuntu.23.10-x64
│ │ └── 8.0.1
│ │ └── runtimes
│ │ └── ubuntu.23.10-x64
│ │ └── native
│ ├── Microsoft.NETCore.App.Ref
│ │ └── 8.0.1
│ │ ├── analyzers
│ │ │ └── dotnet
│ │ ├── data
│ │ └── ref
│ │ └── net8.0
│ ├── Microsoft.NETCore.App.Runtime.ubuntu.23.10-x64
│ │ └── 8.0.1
│ │ ├── data
│ │ └── runtimes
│ │ └── ubuntu.23.10-x64
│ │ ├── lib
│ │ │ └── net8.0
│ │ └── native
│ └── NETStandard.Library.Ref
│ └── 2.1.0
│ ├── data
│ └── ref
│ └── netstandard2.1
├── sdk
│ └── 8.0.101
│ ├── AppHostTemplate
│ ├── Containers
│ │ ├── build
│ │ └── tasks
│ │ └── net8.0
│ │ └── runtimes
│ │ └── win
│ │ └── lib
│ │ └── net8.0
│ ├── Current
│ │ ├── Microsoft.Common.CrossTargeting.targets
│ │ │ └── ImportAfter
│ │ ├── Microsoft.Common.targets
│ │ │ └── ImportAfter
│ │ └── SolutionFile
│ │ └── ImportAfter
│ ├── DotnetTools
│ │ ├── dotnet-dev-certs
│ │ │ └── 8.0.1-servicing.23580.8
│ │ │ └── tools
│ │ │ └── net8.0
│ │ │ └── any
│ │ ├── dotnet-format
│ │ ├── dotnet-user-jwts
│ │ │ └── 8.0.1-servicing.23580.8
│ │ │ └── tools
│ │ │ └── net8.0
│ │ │ └── any
│ │ │ └── assets
│ │ ├── dotnet-user-secrets
│ │ │ └── 8.0.1-servicing.23580.8
│ │ │ └── tools
│ │ │ └── net8.0
│ │ │ └── any
│ │ │ └── assets
│ │ └── dotnet-watch
│ │ └── 8.0.101-servicing.23580.21
│ │ └── tools
│ │ └── net8.0
│ │ └── any
│ │ ├── hotreload
│ │ └── middleware
│ ├── Extensions
│ ├── FSharp
│ │ ├── library-packs
│ │ └── runtimes
│ │ └── win
│ │ └── lib
│ │ └── net8.0
│ ├── Microsoft
│ │ └── Microsoft.NET.Build.Extensions
│ │ ├── net461
│ │ │ └── lib
│ │ ├── net462
│ │ │ └── lib
│ │ ├── net47
│ │ │ └── lib
│ │ ├── net471
│ │ │ └── lib
│ │ └── tools
│ │ └── net8.0
│ ├── ref
│ ├── Roslyn
│ │ └── bincore
│ ├── runtimes
│ │ ├── any
│ │ │ └── native
│ │ └── win
│ │ └── lib
│ │ └── net8.0
│ ├── SdkResolvers
│ │ ├── Microsoft.Build.NuGetSdkResolver
│ │ └── Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver
│ ├── Sdks
│ │ ├── FSharp.NET.Sdk
│ │ │ └── Sdk
│ │ ├── Microsoft.Build.Tasks.Git
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ ├── Microsoft.Docker.Sdk
│ │ │ └── Sdk
│ │ ├── Microsoft.NET.Sdk
│ │ │ ├── analyzers
│ │ │ │ └── build
│ │ │ │ └── config
│ │ │ ├── codestyle
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ │ └── GenerateDeps
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.BlazorWebAssembly
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.Publish
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ │ ├── ComputeTargets
│ │ │ │ ├── CopyTargets
│ │ │ │ ├── DotNetCLIToolTargets
│ │ │ │ ├── PublishProfiles
│ │ │ │ ├── PublishTargets
│ │ │ │ └── TransformTargets
│ │ │ │ └── Transforms
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.Razor
│ │ │ ├── Sdk
│ │ │ ├── source-generators
│ │ │ ├── targets
│ │ │ │ └── Rules
│ │ │ ├── tasks
│ │ │ │ └── net8.0
│ │ │ └── tools
│ │ ├── Microsoft.NET.Sdk.StaticWebAssets
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ ├── tasks
│ │ │ │ └── net8.0
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.Web
│ │ │ ├── analyzers
│ │ │ ├── Sdk
│ │ │ ├── Targets
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.WebAssembly
│ │ │ ├── Sdk
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.Web.ProjectSystem
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.NET.Sdk.Worker
│ │ │ ├── Sdk
│ │ │ ├── targets
│ │ │ └── tools
│ │ │ └── net8.0
│ │ ├── Microsoft.SourceLink.AzureRepos.Git
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ ├── Microsoft.SourceLink.Bitbucket.Git
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ ├── Microsoft.SourceLink.Common
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ ├── Microsoft.SourceLink.GitHub
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ ├── Microsoft.SourceLink.GitLab
│ │ │ ├── build
│ │ │ ├── buildMultiTargeting
│ │ │ └── tools
│ │ │ └── core
│ │ └── NuGet.Build.Tasks.Pack
│ │ ├── build
│ │ ├── buildCrossTargeting
│ │ └── CoreCLR
│ └── trustedroots
├── sdk-manifests
│ └── 8.0.100
│ ├── microsoft.net.sdk.aspire
│ │ └── 8.0.0-preview.1.23557.2
│ ├── microsoft.net.workload.emscripten.current
│ │ └── 8.0.1
│ ├── microsoft.net.workload.emscripten.net6
│ │ └── 8.0.1
│ ├── microsoft.net.workload.emscripten.net7
│ │ └── 8.0.1
│ ├── microsoft.net.workload.mono.toolchain.current
│ │ └── 8.0.1
│ │ └── localize
│ ├── microsoft.net.workload.mono.toolchain.net6
│ │ └── 8.0.1
│ │ └── localize
│ └── microsoft.net.workload.mono.toolchain.net7
│ └── 8.0.1
│ └── localize
├── shared
│ ├── Microsoft.AspNetCore.App
│ │ └── 8.0.1
│ └── Microsoft.NETCore.App
│ └── 8.0.1
└── templates
└── 8.0.1
251 directories
@marcpopMSFT, as you requested I've listed some details about my setup. Have you any ideas what's going on here? I find it very suspicious that a workload search
request won't find any maui workloads:
~$ dotnet workload search 'wasm'
Workload ID Description
----------------------------------------------------------------------------
wasm-experimental workloads/wasm-experimental/description
wasm-experimental-net7 .NET WebAssembly experimental tooling for net7.0
wasm-tools .NET WebAssembly build tools
wasm-tools-net6 .NET WebAssembly build tools for net6.0
wasm-tools-net7 .NET WebAssembly build tools for net7.0
~$ dotnet workload search 'maui'
Workload ID Description
----------------------------
~$ dotnet workload search 'android'
Workload ID Description
----------------------------
~$
The sdk-manifests folder is missing all of the maui manifests which is why the workload is unrecognized and can't be installed.
Including @rbhanda @MichaelSimons @baronfel who might know about the snap install and jammy installs to know if those are incomplete wrt maui.
any way - @marcpopMSFT thank you for taking the time and looking at it. still hoping @rbhanda @MichaelSimons @baronfel have more luck.
Hey, i have the exact same problem :)
@ndr0n : (a) also on UB 23.10 ? (b) also NET 8 installation via snap, its removal afterwards and re-installation via official canonical package repo ? (c) registration of any other microsoft package repo ?
I have the same issue with arch linux
I had this same issue on Arch after installing dotnet-sdk 8.0.101 with pacman. I fixed this by downloading dotnet via the install scripts (https://dotnet.microsoft.com/en-us/download/dotnet/scripts) and copying the sdk-manifests from "~/.dotnet/sdk-manifests/8.0.100" to "/usr/share/dotnet/sdk-manifests/8.0.100". Afterwards you are able to install maui-android. Hope this helps anyone that comes across this issue
@PartedLine thx for sharing; But doing it this way puts us back in the pre-packagemanager era where you'll have to fiddle around managing all the sdk and tooling dependencies by your self. I'd say arguable for a not officially supported distro but not the support you might expect from an officially supported distro.
I have the same problem on ArchLinux. Took a look at arch dotnet-sdk package source code and as far as I can see there is no custom logic there around sdk-manifests. It just grubs the official sdk sources from dotnet/dotnet repo, builds it and copies sdk-manifests
folder to usr/share/dotnet
.
So maybe there is a problem in dotnet sdk itself?
is android not supported on dotnet 8.0 arm Ubuntu?
dotnet workload search
Workload ID Description
aspire .NET Aspire SDK (Preview)
macos .NET SDK Workload for building macOS applications.
maui-tizen .NET MAUI SDK for Tizen
maui-windows .NET MAUI SDK for Windows
wasi-experimental workloads/wasi-experimental/description
wasm-experimental workloads/wasm-experimental/description
wasm-tools .NET WebAssembly build tools
dotnet workload install android
Workload ID android isn't supported on this platform.
I have the same issue with arch linux
I have the same with arch. Can you solve that now?
The common thread here is that all of these distributions of the .NET SDK are build using source-build. Source-Build SDKs do not have all of the same workloads as MIcrosoft-authored SDKs. You can read more about this in https://github.com/dotnet/source-build/issues/3242. This is something that I think we will need to address soon.
In the meantime, if you need MAUI workloads I'd suggest using the dotnet-install scripts to install a 'local install' of the Microsoft SDK and use that.
ok... i was having the same issue in my Pop OS distro... so i change the ID on os-release to "ubuntu" it was pop and then run the
then after i run the dotnet workload install maui-android
and wala! :P, i know, i know... its not eleganto way... but it works for now(i swap it bat to pop, just for avoid issue with the os later):