winget으로 애플리케이션 설치

Windows 패키지 관리자 정보



Windows 10 컴퓨터에서 소프트웨어 설치 및 업그레이드를 자동화할 수 있는 새로운 도구Windows Package Manager와 해당 명령줄 도구winget에 대해 이미 들어보셨을 것입니다.

winget을 사용하면 powertoys를 설치하는 다음과 같은 명령을 터미널에서 실행하여 애플리케이션을 매우 쉽게 설치할 수 있습니다.

winget install powertoys



현재 Windows 패키지 관리자는 기본 기능만 제공하며 Chocolatey과 같은 다른 패키지 관리자에 비해 패키지가 훨씬 적습니다. 그러나 winget가 아직 초기 단계인 경우에도 Windows 10 시스템을 설정할 때 고려해야 할 몇 가지 유망한 기능이 있습니다.

Microsoft Store 애플리케이션 설치



첫째, winget은 Microsoft Store 애플리케이션을 설치할 수 있습니다. 개발자로서 사용하는 대부분의 소프트웨어는 Microsoft Store에서 제공되지 않을 수 있지만 Microsoft Store에서 쉽게 구할 수 있는 일부 응용 프로그램은 여전히 ​​있습니다. 예를 들어 새로운 Windows 터미널은 Microsoft Store 애플리케이션으로 사용할 수 있습니다. 내가 아는 한, winget 외에는 명령줄에서 Microsoft Store 응용 프로그램을 설치하는 다른 쉬운 방법이 없습니다. winget를 사용하면 다음 작업을 수행할 수 있습니다. winget install Microsoft.WindowsTerminal -s msstore Microsoft Store에서 새 WindowsTerminal 응용 프로그램을 설치합니다.

📌 작성 시점에 winget에서 스토어 응용 프로그램을 설치하는 것은 winget settings에서 활성화해야 하는 실험적 기능이며 Microsoft Store 응용 프로그램의 하위 집합만 설치할 수 있다는 점에 유의하십시오.

가져오기 명령으로 여러 패키지 설치



둘째, winget에는 매개 변수에 전달하는 json 파일에 지정된 모든 패키지를 설치할 수 있는 import 명령이 있습니다. 즉, 설치하려는 각 패키지에 대해 많은 설치 명령이 포함된 스크립트를 작성하는 대신 설치하려는 모든 패키지, 버전, 패키지 소스( 찾을 수 있는 위치, Microsoft Store 응용 프로그램용 msstore), ... 다음 명령 하나로 소프트웨어를 설치할 수 있습니다. package.json
다음은 이러한 파일의 예입니다.

{
    "$schema" : "https://aka.ms/winget-packages.schema.2.0.json",
    "CreationDate" : "2021-05-23T14:41:38.200-00:00",
    "Sources" : 
    [
        {
            "Packages" : 
            [
                {
                    "PackageIdentifier" : "Microsoft.Whiteboard"
                },
                {
                    "PackageIdentifier" : "Microsoft.WindowsTerminal"   
                }
            ],
            "SourceDetails" : 
            {
                "Argument" : "https://winget.azureedge.net/msstore",
                "Identifier" : "Microsoft.Winget.MSStore.Source_8wekyb3d8bbwe",
                "Name" : "msstore",
                "Type" : "Microsoft.PreIndexed.Package"
            }
        },
        {
            "Packages" : 
            [
                {
                    "PackageIdentifier": "Microsoft.AzureCLI"
                },
                {
                    "PackageIdentifier" : "Microsoft.PowerToys"
                }
            ],
            "SourceDetails" : 
            {
                "Argument" : "https://winget.azureedge.net/cache",
                "Identifier" : "Microsoft.Winget.Source_8wekyb3d8bbwe",
                "Name" : "winget",
                "Type" : "Microsoft.PreIndexed.Package"
            }
        }
    ],
    "WinGetVersion" : "0.4.11391"
}



여기에는 Microsoft Store의 패키지와 winget import packages.json 패키지 리포지토리의 패키지가 포함되어 있으므로 2개의 패키지 배열(각 소스별로 하나씩)이 있습니다.

📌 json 시작 부분에 있는 jsonwinget에 대한 링크 덕분에 자동 완성 기능이 있는 vscode에서 이 json을 쉽게 편집할 수 있습니다.

가져오기는 훌륭하지만 설치 명령으로 가능한 응용 프로그램을 자동으로 설치하는 기능과 같은 기능이 여전히 누락되어 있습니다.

마지막 생각들



Chocolatey는 현재 내 주요 패키지 관리자가 될 것입니다. 한편으로는 사용 가능한 패키지 수와 다른 한편으로는 패키지 설치에 대한 일부 매개 변수(예: Visual Studio 2019용으로 설치할 워크로드 및 구성 요소)를 지정할 수 있습니다. ). 그러나 schema는 일부 패키지(Microsoft Store 응용 프로그램 포함)를 설치하기 위한 도구 상자의 일부가 될 것이며 계속해서 더 좋아질 것으로 기대합니다.

좋은 웹페이지 즐겨찾기