Менеджер пакетов WinGet в Windows 10 и 11 и его использование
В Windows 10 и 11 появился собственный встроенный менеджер пакетов WinGet (Windows Package Manager), который можно использовать для установки приложений из командной строки (по аналогии с пакетными менеджерами Linux, например yum, dnf, apt и т.д.).
WinGet.exe это консольная утилита, которая позволяет упростить установку программ в Windows. Благодаря winget, вам не нужно искать официальные сайты, скачивать установочные файлы, и устанавливать программы вручную. С помощью Windows Package Manager можно скачивать, устанавливать, удалять, обновлять программы через командную строку CMD с помощью всего одной команды не прибегая к браузеру, и долгому поиску по Интернету.
Содержание статьи
Установка менеджера пакета WinGet в Windows
Менеджер пакетов WinGet можно установить в Windows 10, начиная с версии (билда) 1709. В актуальных билдах Windows 11 21H2 и Windows 10 21H1 winget уже встроен в образ.
Чтобы проверить, установлен ли winget на вашем компьютере, откройте консоль PowerShell и выполните команды:
В нашем случае winget (имя UWP приложения Microsoft.DesktopAppInstaller) установлен.
Вы можете установить WinGet через Microsoft Store (там он называется App Installer) по ссылке:
https://www.microsoft.com/en-us/p/app-installer/9nblggh4nns1#activetab=pivot:overviewtab
Также вы можете установить winget вручную через PowerShell (если вы удаляли предустановленные приложения). Для этого нужно с помощью PowerShell скачать msixbundle файл winget с GitHub (https://github.com/microsoft/winget-cli/releases) и установить его (на момент написания статьи доступна версия Windows Package Manager v1.3.1681):
Add-AppxPackage “C:\PS\WinGet.msixbundle”
Можно также и вручную скачать файл winget с GitHub (https://github.com/microsoft/winget-cli/releases).
Когда откроется страница последней версии диспетчера пакетов Windows, щелкните ссылку для скачивания .msixbundle (Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle) в разделе Assets, чтобы загрузить автономный установщик.
После загрузки файла дважды щелкните по нему, чтобы установить приложение. Затем нажмите кнопку «Установить» в мастере. Если вы видите сообщение «Установщик приложения уже установлен», просто нажмите кнопку «Переустановить», чтобы переустановить приложение.
После установки приложения перезагрузите компьютер.
Проверьте установленную версию winget командой:
Основные команды winget:
-
winget install <пакет>
— установка пакета -
winget uninstall <пакет>
— удаление пакета -
winget upgrade
– обновление пакета программы -
winget list
– вывести установленные пакеты -
winget show < пакет >
— показать информацию о пакете -
winget source < опции >
— управление репозиториями пакетов -
winget search < поисковая строка >
— поиск пакетов в репозиториях -
winget export
– экспорт списка установленных программ в файл -
winget import
– установка программ (пакетов) по списку в файле -
winget hash < пакет >
— получить хэш установщика пакета -
winget validate < пакет >
— проверить файл манифеста
Настройки winget хранятся в файле settings.json (в «C:\Users\%username%\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState»). Вы можете изменить настройки Winget с помощью команды:
Установка программ в Windows с помощью WinGet
Для установки программ с помощью менеджера пакета WinGet используются онлайн репозитории. Их список можно вывести командой:
По умолчанию в WinGet доступны два официальных репозитория WinGet:
- msstore репозиторий Microsoft Store
- winget репозиторий программ, поддерживаемый Microsoft
Прежде чем установить программу из репозитория WinGet, нужно узнать имя пакета. Для поиска пакетов используется команда search. Например, чтобы найти zip архиваторы во всех доступных репозиториях, выполните команду:
Команда вернет список пакетов (с названиями и версиями), соответствующих вашему запросу. Обратите внимание на столбец Имточник (Source). В нем указан репозиторий, в котором найден пакет.
Можно получить информацию о конкретном пакете:
В репизитории может хранится несколько версий пакета, чтобы показать список доступных версий пакета, выполните:
Например, вы хотите установить архиватор 7zip. Скопируйте его имя или ID и выполните команду установки:
По-умолчанию устанавливается последняя доступная версия программы. Можно установить определенную версию пакета:
Как вы видите, менеджер пакетов WinGet автоматически скачал и установил приложение. Всего одной командой. Программа появилась в списке установленных программ в стартовом меню Windows.
Теперь установим, например, Windows Terminal и VSCode для написания PowerShell скриптов:
Сначала ищем имена пакетов:
winget search terminal
Затем устанавливаем их по очереди:
Если вы хотите запустить установку пакета программы в фоновом режиме, используйте параметр --silent
:
При установке некоторых программ можно автоматически принять условия использования. Например, при установке набора утилит sysinternals:
По умолчанию программы устанавливаются на системный диск в каталоги Program Files. Вы можете изменить каталог установки программы:
Winstall – графической интерфейс для менеджера пакетов WinGet
Пользователи, которым некомфортно работать в командной строке winget, могут использовать веб-сервис Winstall (https://winstall.app/). Winstall представляет собой графический интерфейс для репозитория WinGet (для установки доступно более 2900 программ).
С помощью сервиса Winstall можно сгенерировать скрипт установки нужных вам программ. Найдите программы в репозитории и нажмите + для добавления их в скрипт установки.
Затем нажмите на кнопку Generate Script и сервис сформирует для вас команду установки выбранных приложений.
Скопируйте код со вкладки Batch или PowerShell и вставьте его соответственно в cmd.exe или PowerShell консоль.
Так, с помощью всего одной команды вы можете установить необходимые вам программы.
WinGet: Обновление и удаление программ в Windows
WinGet позволяет не только устанавливать программы, но и обновлять или удалять их. Для вывода списка установленных программ на компьютере выполните:
Команда выведет полный список программ, установленных на компьютере (включая программы, установленные не через winget). Если для программы доступно обновление, в столбце Доступно (Available) будет указана новая версия.
Для обновления приложения, установленного через winget, выполните команды:
Можно обновить сразу все установленные программы:
Для удаления программ используется команда:
winget uninstall –name 7zip.7zip
Вы также можете удалить приложения, установленные не через WinGet по их ID:
Экспорт и импорт установленных приложений на другие компьютеры
С помощью WinGet вы можете экспортировать в JSON файл список приложений, установленных на компьютере и затем использовать этот файл для быстрой установки того же набора приложений на другом компьютере.
Для экспорта списка приложений в файл, выполните:
Файл содержит список программ, установленный через Windows Package Manager.
Чтобы установить список программ из json файла на другом компьютере, выполните команду:
Можно указать, чтобы менеджер пакетов игнорировал версии и недоступные программы при установке, нужно добавить параметры