Start Debugging

dotnetup: o .NET finalmente ganha um gerenciador de versoes do SDK no estilo rustup

A Microsoft esta construindo o dotnetup, uma ferramenta multiplataforma oficial para instalar, rastrear e alternar entre SDKs e runtimes do .NET. Veja o que ele faz e em que ponto esta em junho de 2026.

Durante anos, gerenciar os SDKs do .NET significou fazer malabarismo com tres coisas distintas: os instaladores independentes da pagina de download, os scripts dotnet-install para CI e a ferramenta dotnet-core-uninstall para limpar a pilha de versoes antigas que ficam para tras. Nunca existiu um unico comando que instale, rastreie e alterne entre SDKs como o rustup faz para Rust ou o nvm para Node. A partir de junho de 2026, isso esta mudando. A Microsoft esta construindo o dotnetup, e ele ja esta integrado a forma como o SDK do .NET se compila.

O que o dotnetup realmente e

O dotnetup e um gerenciador de versoes oficial e multiplataforma para SDKs e runtimes do .NET. Sua unica tarefa e instalar componentes em um diretorio com escopo de usuario sem exigir elevacao, rastrear o que voce instalou em um manifesto e alternar a versao ativa de forma limpa. Sem solicitacao de administrador, sem MSI, sem cirurgia no registro.

Os comportamentos principais:

O unico comando confirmado no issue de acompanhamento do dotnet/sdk e o caminho de instalacao, usado aqui para obter um SDK previo em um script de build:

dotnetup sdk install preview

O conjunto mais amplo de comandos (listar versoes instaladas, definir um padrao, desinstalar) ainda esta sendo finalizado abertamente, entao trate qualquer exemplo mais longo como ilustrativo, e nao como definitivo.

Por que o global.json e a verdadeira vantagem

A parte dolorosa do trabalho com .NET em multiplos repositorios hoje e a divergencia do global.json. Voce clona um repositorio, executa dotnet build e recebe um erro porque ele fixa um SDK que voce nao tem instalado. Suas unicas opcoes sao cacar o instalador correto ou editar o arquivo.

{
  "sdk": {
    "version": "10.0.301",
    "rollForward": "latestPatch"
  }
}

Com um gerenciador de versoes que entende esse arquivo, a resolucao vira um unico passo: aponte o dotnetup para o repositorio e deixe que ele obtenha o SDK fixado no seu perfil de usuario. Essa e a mesma ergonomia que os desenvolvedores de Rust tem ha anos com o rust-toolchain.toml.

Em que ponto ele esta agora

O dotnetup esta em versao previa interna. Ainda nao ha um instalador de uma linha no site do .NET, e a forma pratica de experimenta-lo hoje e compila-lo a partir do codigo-fonte. Uma versao previa publica esta planejada para os proximos meses. Vale notar que o branch main do dotnet/sdk ja usa o dotnetup como parte de seu proprio build, o que e um sinal forte de que este e o futuro pretendido para a instalacao do .NET, e nao um experimento.

Se voce mantem pipelines de CI ou integra desenvolvedores a repositorios com SDKs fixados de forma estrita, esta e a ferramenta a observar. Acompanhe o progresso no issue do dotnet/sdk sobre o uso do dotnetup em scripts de build e no issue de conscientizacao que aponta que o branch main agora compila com ele.

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Voltar