Использование менеджера пакетов WinGet в Windows 10 и 11

В Windows 10 и 11 появился собственный встроенный менеджер пакетов WinGet ( Windows Package Manager) , который можно использовать для установки приложений из командной строки (по аналогии с пакетными менеджерами Linux, например yum , dnf, apt и т.д.).

WinGet.exe это консольная утилита, которая позволяет упростить установку программ в Windows. Благодаря winget, вам не нужно искать официальные сайты, скачивать установочные файлы, и устанавливать программы вручную. С помощью Windows Package Manager вы можете установить любую программу из репозитория с помощью всего одной команды.

Установка менеджера пакета WinGet в Windows 10

Менеджер пакетов WinGet можно установить в Windows 10, начиная с билда 1709. В актуальных билдах Windows 11 21H2 и Windows 10 21H1 winget уже встроен в образ.

Чтобы проверить, установлен ли winget на вашем компьютере, откройте консоль PowerShell и выполните команды:

Get-AppPackage *Microsoft.DesktopAppInstaller*|select Name,PackageFullName

В нашем случае winget (имя UWP приложения Microsoft.DesktopAppInstaller ) установлен.

Winget поддерживается только для десктопных версий Windows (10 и 11). Для Windows Server 2022 winget официально не поддерживается, но может быть установлен в экспериментально режиме.

Вы можете установить WinGet через Microsoft Store (там он называется App Installer ) по ссылке https://www.microsoft.com/en-us/p/app-installer/9nblggh4nns1#activetab=pivot:overviewtab

Для установки Winget на вашем компьютере должен работать MS Store (если Microsoft Store удален или поврежден, можно восстановить его ).

Также вы можете установить winget вручную через PowerShell (если вы удаляли предустановленные приложения ). Для этого нужно с помощью PowerShell скачать msixbundle файл winget с GitHub ( https://github.com/microsoft/winget-cli/releases ) и установить его (на момент написания статьи доступна версия Windows Package Manager v1.1.12653):

Invoke-WebRequest -Uri "https://github.com/microsoft/winget-cli/releases/download/v1.1.12653/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" -OutFile "C:PSWinGet.msixbundle"
Add-AppxPackage "C:PSWinGet.msixbundle"

Также можно скачать и установить пакет WinGet вручную:

Проверьте установленную версию winget командой:

winget --version

Основные команды 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%AppDataLocalPackagesMicrosoft.DesktopAppInstaller_8wekyb3d8bbweLocalState»). Вы можете изменить настройки Winget с помощью команды:

winget settings

Установка программ в Windows с помощью WinGet

Для установки программ с помощью менеджера пакета WinGet используются онлайн репозитории. Их список можно вывести командой:

winget source list

По умолчанию в WinGet доступны два официальных репозитория WinGet:

Вы можете подключить стороннни репозитории в WinGet. Добавить другие источники можно с помощью команды winget source .

Прежде чем установить программу из репозитория WinGet, нужно узнать имя пакета. Для поиска пакетов используется команда search. Например, чтобы найти zip архиваторы во всех доступных репозиториях, выполните команду:

winget search zip

Если вы хотите искать программу только в репозитории Microsoft Store, выполните:

winget search zip -s msstore

Команда вернет список пакетов (с названиями и версиями), соответствующих вашему запросу. Обратите внимание на столбец Source. В нем указан репозиторий, в котором найден пакет.

Можно получить информацию о конкретном пакете:

winget show 7zip.7zip

В репизитории может хранится несколько версий пакета, чтобы показать список доступных версий пакета, выполните:

winget show 7zip.7zip --versions

Например, вы хотите установить архиватор 7zip . Скопируйте его имя или ID и выполните команду установки:

winget install 7zip.7zip

По-умолчанию устанавливается последняя доступная версия программы. Можно установить определенную версию пакета:

winget install 7zip.7zip -v 21.05

Как вы видите, менеджер пакетов WinGet автоматически скачал и установил приложение. Всего одной командой. Программа появилась в списке установленных программ в стартовом меню Windows.

Теперь установим, например, Windows Terminal и VSCode для написания PowerShell скриптов :

Сначала ищем имена пакетов:

winget search terminal
winget search "visual studio"

Затем устанавливаем их по очереди:

winget install Microsoft.WindowsTerminal –e ; winget install Microsoft.VisualStudioCode –e

Если вы хотите запустить установку пакета программы в фоновом режиме, используйте параметр --silent :

winget install "VLC media player" --silent

При установке некоторых программ можно автоматически принять условия использования. Например, при установке набора утилит sysinternals:

winget install sysinternals --accept-package-agreements

По умолчанию программы устанавливаются на системный диск в каталоги Program Files. Вы можете изменить каталог установки программы:

winget install microsoft.visualstudiocode --location "D:Programs"

Обратите внимание, что при запуске winget без прав администратора, при установке некоторых программ может появится запрос UAC на повышение привилегий. При запуске winget в командной строке/консоли PowerShell с правами администратора, все программы устанавливаются без запроса UAC (будьте внимательными, устанавливайте только те приложения, которым доверяете).

Winstall – графической интерфейс для менеджера пакетов WinGet

Пользователи, которым некомфортно работать в командной строке winget, могут использовать веб-сервис Winstall ( https://winstall.app/ ). Winstall представляет собой графический интерфейс для репозитория WinGet (для установки доступно более 2900 программ).

С помощью сервиса Winstall можно сгенерировать скрипт установки нужных вам программ. Найдите программы в репозитории и нажмите + для добавления их в скрипт установки.

Затем нажмите на кнопку Generate Script и сервис сформирует для вас команду установки выбранных приложений.

Скопируйте код со вкладки Batch или PowerShell и вставьте его соответственно в cmd.exe или PowerShell консоль.

Так, с помощью всего одной команды вы можете установить необходимые вам программы.

WinGet: Обновление и удаление программ в Windows

WinGet позволяет не только устанавливать программы, но и обновлять или удалять их. Для вывода списка установленных программ на компьютере выполните:

Winget list

Команда выведет полный список программ, установленных на компьютере (включая программы, установленные не через winget). Если для программы доступно обновление, в столбце Available будет указана новая версия.

Для обновления приложения, установленного через winget, выполните команды:
winget upgrade --id 7zip.7zip

Можно обновить сразу все установленные программы:

winget upgrade --all

Для удаления программ используется команда:

winget uninstall --name 7zip.7zip

Вы также можете удалить приложения, установленные не через WinGet по их ID:

winget uninstall --id "{0F693AA3-4387-4ACB-A6FD-3A396290587}"

Экспорт и импорт установленных приложений на другие компьютеры

С помощью WinGet вы можете экспортировать в JSON файл список приложений, установленных на компьютере и затем использовать этот файл для быстрой установки того же набора приложений на другом компьютере.

Для экспорта списка приложений в файл, выполните:

winget export -o c:psinstalledapps.json --include-versions

Если для программы отсутствует манифест, то команда выведет ошибку « The installed package is not available in any source «.

Файл содержит список программ, установленный через Windows Package Manager.

Чтобы установить список программ из json файла на другом компьютере, выполните команду:

winget import -o .installedapps.json

Можно указать, чтобы менеджер пакетов игнорировал версии и недоступные программы при установке, нужно добавить параметры --ignore-unavailable и --ignore-versions .

admin

Share
Published by
admin

Recent Posts

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

2 недели ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

2 недели ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

2 недели ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

2 недели ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

2 недели ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

2 недели ago