I’ll hold my drone series to basically repost an amazing news for today:
Announcing the .NET Core Uninstall Tool 1.0!
This is amazing! Mostly because .Net Core versions are a “not-happy experience” to manage. If you work with them a lot, you probably find yourself going to “Add and Remove Programs” and spending from 5 minutes to 3 hours, manually unistalling all the non-required versions.
So, we have a new tool that will allow us to to this, but with an amazing set of commands. And, it works for Windows and Mac !
Let’s take a look. In example, to check my currently installed sdks, I can run a command that we already knows
and the result is this one
So cool! And there are several very useful commands to see dependencies, SDKs required by Visual Studio and more (see references). I like the WhatIf version, so in example the following command
So, after writing my posts on how to install dotnet core 3.1 on a Raspberry Pi 4, I found that after I reboot my device, the dotnet command stop working. When I run dotnet from bash I get the following message
~bash: dotnet: command not found
The problem, is that the export steps of the installation process were lost after the reboot. And, as reminder of what is the export command.
Linux export command is use to set export attribute for shell variables on Linux system. The Linux export command is one of bash shell built in command.
In order to fix this, we can add the commands into our [~/.bashrc] file. First we need to edit our file with the command
Quick post today, to leave this as a public note. And, disclaimer, I’m not a Linux expert, just a normal user; I’m sure there are plenty of better ways to do this. Any advice will be appreciated.
Context: I’m working with Git and .Net Core 3.1. Just cloned a repository and ready to run my 2 favourite commands
However, I found this error
/home/pi/dotnet/sdk/3.1.100/NuGet.targets(123,5): error : Access to the path '/<path>.csproj.nuget.dgspec.json' is denied. [/<path>..csproj]
/home/pi/dotnet/sdk/3.1.100/NuGet.targets(123,5): error : Permission denied
I’m running dotnet under the user pi, and I haven’t found a way to automatically grant permissions to new folders for this user. So everytime I clone a repo I need to grant permissions with the command.
I’m very careful with my disk space, however my C: drive in Windows 10 started to claim about low space. I got 3 disks on my machine, 2 SSDs and a regular one; and I always check to install all my software on my D: drive. So, that’s why running low space on C: was shocking.
So, I did a small check on the apps and contents using a lot of disk and I found 2 main sources
Windows 10 SDKs
DotNet Core SDKs and Runtimes
Every time a new version of Windows 10 is released, and I build a Windows 10 App, I get a new Windows SDK. Each one is around 2GBs, I got almost 20, so make your numbers.
Note: There is a cool feature to find usage space of installed apps by this, out of the box in Windows Settings.
The second one was related to .Net Core. I had a lot of versions installed, and every time I get a new update on Visual Studio 2019, it seems that I’m updating also my .Net Core SDKs. Right now, I only care about .Net Core 3, so it was time to uninstall all the others.
The official documentation ” How to remove the .NET Core Runtime and SDK” (see references) wasn’t very helpful. However, it was a good source to learn more about dotnet command, specially this one:
C:\> dotnet --list-sdks
This command list all the installed SDKs, and with a little of PowerShell scripting I manage to uninstall almost everything. Once I started this path, I also realize that the
command was not working, so a little search pointed me into an old article from Scott Hanselman, where he did a similar script to remove old .Net Core versions (see references).