dotnetup: rustup 스타일의 .NET Toolchain Manager

.NET에도 rustup 같은 도구가 생기고 있습니다. dotnetup이라는 .NET Toolchain Manager입니다.

dotnetup은 시스템 패키지 매니저와 별개로 사용자 계정 단위에서 .NET SDK와 Runtime을 설치하고 업데이트하거나 제거할 수 있는 도구입니다. Linux, macOS, Windows를 지원하고, 10.0, 10.0.4xx 같은 채널이나 특정 SDK 버전을 지정해서 관리할 수도 있습니다.

특히 Ubuntu처럼 배포판이 제공하는 .NET SDK Feature Band와 Microsoft가 최신으로 배포하는 SDK 사이에 차이가 생기는 환경에서 꽤 유용해 보입니다. Ubuntu 패키지는 그대로 유지하면서 개발용 최신 SDK를 별도로 관리하는 식으로 사용할 수 있습니다.

아직 Preview 단계라서 프로덕션 빌드 환경보다는 개발 머신에서 먼저 시험해볼 만한 도구입니다.

5개의 좋아요

참고로 dotnetup dotnet 명령어가 지원되기 때문에, File-based App의 타겟으로도 활용이 가능해서 아래처럼 스크립트를 작성하고, 시스템에 dotnetup CLI를 설치한 후 연결할 수도 있어 관리자 권한이 없는 시스템에서도 FBA 실행이 가능하게끔 맞출 수 있습니다.

$ dotnetup sdk install 10

위의 명령어를 실행한 후 sample.cs 파일을 아래처럼 작성한 후, chmod +x ./sample.cs 명령어를 실행하여 실행 권한을 부여하고 ./sample.cs 명령어를 실행하면 동일하게 연결됩니다.

#!/usr/bin/env -S dotnetup dotnet

Console.WriteLine("Hello");

3개의 좋아요