Flexibility in SDK install folder
See original GitHub issueAs a Visual Studio user, I can specify the folder for the .NET Core SDK that is different from c:\program files\dotnet so that I can reduce the footprint on the system drive.
Visual Studio will have flexibility in its installation location - therefore, SDK will also have flexibility in its installation location.
Scenarios Installations:
- an SDK installation chained from a Visual Studio installation instance
- a ‘stand-alone’ SDK installation
Work Items
SetUp work items [area-Setup]:
- Visual Studio installer communicates the install folder to the SDK MSI https://github.com/dotnet/cli/issues/10157
- Manage the SDK bundle installation locations https://github.com/dotnet/cli/issues/10156
- The SDK bundle installer Procedure [Windows] https://github.com/dotnet/cli/issues/10155
- SDK resolver in Visual Studio & command shell experience https://github.com/dotnet/cli/issues/10243
- Add properties to override default location for shared framework installer in Windows https://github.com/aspnet/AspNetCore/issues/3697
- The Runtime bundle installer Procedure [Windows] not needed at this time - @rakeshsinghranchi
Host work items [area-Host]:
- Runtime dynamic multilevel lookup - muxer https://github.com/dotnet/core-setup/issues/4637
- SDK muxer [the host] and multi-level lookup https://github.com/dotnet/cli/issues/10153
- ASP.NET’s native code to locate the hostfxr https://github.com/aspnet/IISIntegration/issues/1566
Documentation:
- Advertise the dynamic VS/SDK install folder change https://github.com/dotnet/cli/issues/10152
Testing:
SDK bundle ‘other-volume’ testing…
To install the SDK bundle to another volume:
Example:
dotnet-sdk-3.0.100-alpha1-009719-win-x64.exe /install DOTNETHOME_X64="D:\dotnet\x64" DOTNETHOME_X86="D:\dotnet\x86" /log "installation.log" /quiet /norestart
Issue Analytics
- State:
- Created 5 years ago
- Reactions:2
- Comments:11 (6 by maintainers)
Top Results From Across the Web
How to change SDK installing positions to another disk?
Dear customer, the 'Shared components, tools, and SDKs' location can be set only once and on the first time that visual studio is...
Read more >How to Install Android Studio IDE & SDK and Get Started ...
(For Windows) Use "File Explorer" to check the SDK installed directory. ... It is more flexible and therefore recommended to layout your UI...
Read more >SDK Runtime developer guide
The SDK Runtime and Privacy Preserving APIs Repository on GitHub contains a set of individual Android Studio projects to help you get started,...
Read more >SDK Runtime
This is an initial proposal for a flexible SDK Runtime and distribution technology. The following sections propose a series of changes ...
Read more >Updating the Liberty Java runtime environment or software ...
Get the Liberty runtime environment and Java in a single package by installing the Liberty with Java EE 8 Web Profile and IBM®...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@johnbeisner might know the meaning of all the registry keys - do we have a document describing those? (if not, we definitely should).
@miloush Just curious what is the scenario you’re trying to solve:
dotnet --info
dotnet --info
?Microsoft.NETCore.App
, but there are other shared frameworks (ASP.NET, with .NET Core 3 there will be the WinForms/WPF one as well)With the proposed changes by this issue these should work:
HKLM\Software\dotnet\Setup\InstalledVersions\x64\InstallLocation
(this is a new key) - there you should find thedotnet.exe
- you can look at its version if you need to, but I would be very curious what is the scenario for that.hostfxr
- lives next to the host (See above) in thehost/fxr
subdirectory - the rule is to always use the latest available version (the older versions are effectively ignored)shared
subdirectory. I don’t know about the.version
file, the host doesn’t use that. The host solely relies on the directory names to recognize the versions.I see, thank you. So as per your response to dotnet/cli#4904, I can get:
hostfxr_get_available_sdks
in hardcoded%ProgramFiles%\dotnet\host\fxr\*\hostfxr.dll
libraries.%ProgramFiles%\dotnet\shared\Microsoft.NETCore.App\*\.version
files.Correct?