WinGet (Windows Package Manager) - менеджер пакетов Windows

Категория: Windows 11 / Windows 10 / Функционал Windows / Программы
Добавил: access_timeОпубликовано: 19-02-2024 visibilityПросмотров: 1 132 chat_bubble_outlineКомментариев: 3
WinGet (Windows Package Manager) - менеджер пакетов Windows


В этой публикации, друзья, рассмотрим WinGet (Windows Package Manager) - менеджер пакетов Windows. Его также называют диспетчером пакетов. Это консольный инструмент в Windows 10 и 11, работает с помощью командной строки или PowerShell. Позволяет устанавливать и обновлять программы и приложения, в том числе в пакетном режиме, а также удалять их. Работает аналогично менеджерам пакетов в Linux. Не всем, конечно, WinGet нужен, но отдельным опытным пользователям и системщикам организаций может предложить автоматизацию установки и обновления софта.


WinGet (Windows Package Manager) - менеджер пакетов Windows


Что такое WinGet

Для упрощения установки и обновления софта в Windows 10 и 11 есть магазин Microsoft Store. В нём можно централизовано устанавливать и обновлять современные UWP-приложения, в том числе пакетно. Все наши приложения из магазина могут синхронизироваться при использовании функции синхронизации настроек и данных компьютера. И мы сможем оперативно, в пакетном режиме установить свои приложения при новой установке операционной системы. Плюс к этому, в Microsoft Store можно устанавливать некоторые классические программы Win32. Microsoft Store – это инструмент-минимум, в нём есть не весь нужный нам софт, тем не менее многим из пользователей хватит возможностей магазина. Не весь возможный Windows-софт может предложить и WinGet, но всё же у последнего ассортимент побольше, чем у магазина.

WinGet – это менеджер пакетов в составе Windows 10 и Windows 11. И это проект с открытым исходным кодом на GitHub, поддерживаемый компанией Microsoft. Менеджер пакетов – это программа для управления программами, которая может их искать, устанавливать, обновлять, удалять. И мы, пользователи все эти задачи можем выполнять централизовано, в одном месте. И, что немаловажно, менеджеры пакетов – это установка софта из надёжных источников, а, соответственно, для нас это гарантия безопасности.

WinGet – это простота установки софта для тех, кто привык работать с консольными командами. Вместо поиска источника скачивания программы, самого процесса скачивания, установки с прохождением разных этапов, можно просто ввести в консоль определённую команду, и программа тихо установится в фоне с теми же стандартными предустановками, которые мы по большей части не меняем.

Как любой менеджер пакетов, Winget работает с источниками установки софта. Изначально это Microsoft Store и репозиторий, поддерживаемый компанией Microsoft - Microsoft Community Repository. Последний предоставляет данные о доступных программах сторонних разработчиков и обеспечивает скачивание дистрибутива с официальных сайтов таких программ.



При необходимости можно подключить сторонние репозитории.

С помощью WinGet можно установить широкий спектр ПО - для работы, развлечений, творчества, обучения и много другого. Репозиторий WinGet постоянно расширяется, на данный момент содержит более 30 тыс. программ.

WinGet предустановлен в Windows 10 (начиная с версии 1709) и Windows 11. Проверить его установку можно, запустив в терминале Windows 11, командной строке или PowerShell команду:

winget

Если WinGet установлен, увидим описание WinGet и перечень команд для работы с ним.

В старых версиях Windows 10 или кастомных Windows 10 и 11, из которых, возможно, WinGet вырезан, установить его можно, скачав установщик с GitHub.




Как пользоваться WinGet

Начать работу с WinGet можем с получения списка установленных на компьютере программ. В терминал Windows 11, командную строку или PowerShell вводим команду:

winget list

В ответ получим перечень установленных программ и приложений с указанием их ИД, версии текущей и доступной для обновления. Также перечень будет содержать указание на источник программы или приложения. В каких-то случаях источника не будет, это значит, что программы или приложения нет в Microsoft Store и репозитории Microsoft Community Repository. В каких-то случаях источником будет msstore, т.е. магазин Microsoft Store. А в каких-то случаях источником будет winget, т.е. репозиторий Microsoft Community Repository. Программы и приложения, для которых указан источник msstore или winget, можно устанавливать и обновлять с помощью WinGet. Программы и приложения, для которых источник не указан, можно только удалить.

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

winget uninstall MicrosoftTeams_8wekyb3d8bbwe

Где вместо MicrosoftTeams_8wekyb3d8bbwe каждый подставляет идентификатор своего софта.

В приведённом примере мы удалили приложение Microsoft Teams, но вновь с использованием этого же идентификатора приложение может не установится. Для установки программ и приложений с помощью WinGet сначала необходимо выполнить поиск по ключевому слову. Например, мы снова хотим установить Microsoft Teams. И мы будем искать его по ключевому слову «Teams». Вводим команду:

winget search Teams

Где Teams – это ключевое слово, и вместо него каждый подставляет своё. Получаем перечень доступных для установки с помощью WinGet программ и приложений по этому ключевому слову. Смотрим, где наше приложение Microsoft Teams в этом перечне. Копируем его идентификатор в этом перечне.

И устанавливаем приложение командной с использованием этого идентификатора:

winget install Microsoft.Teams

В этой команде вместо Microsoft Teams каждый подставляет свой идентификатор устанавливаемого софта.

Из интересных возможностей WinGet – пакетное обновление софта. Вводим команду:

winget upgrade --all

Запустится установка обновлений программ и приложений. Можем посмотреть, что за софт WinGet сейчас нам обновит.

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

winget pin add Google.Chrome –blocking

Где вместо Google.Chrome каждый подставляет свой софт.


Пакетная установка софта с помощью WinGet

Друзья, WinGet примечателен возможностью пакетной установки программ.

Можем выполнить экспорт списка установленного софта, команда:

winget export -o D:\app.json

Где D:\app.json – это файл и путь сохранения списка, у каждого свой.

Затем можем выполнить пакетную установку софта из этого экспортированного списка, команда:

winget import -i D:\app.json --accept-source-agreements --accept-package-agreements --ignore-unavailable

Где D:\app.json – это файл и путь экспортированного списка софта, у каждого свой. В команду добавлены аргументы, решающие вопросы с принятием лицензии софта и игнором версий софта, чтобы были установлены самые свежие версии.

Ещё можем выполнить пакетную установку софта, создав скрипт с указанием идентификаторов нужных нам программ и приложений. В блокнот Windows вписываем команду по типу:

winget install --id=TechPowerUp.GPU-Z -e && winget install --id=Google.Chrome -e && winget install --id=Viber.Viber -e &&

Где TechPowerUp.GPU, Google.Chrome, Viber.Viber – это идентификаторы программ и приложений, и каждый подставляет вместо них свои.

Далее файл в блокноте сохраняем под любым именем с расширением .bat. И запускаем созданный батник.


Больше команд WinGet

Друзья, мы рассмотрели только ключевые возможности и команды WinGet. Больше возможностей, больше команд менеджера пакетов получим на ресурсе документации Microsoft.


Графический интерфейс для WinGet

Если возможности WinGet вас заинтересовали, но вы не любитель консолей, можете работать с менеджером пакетов с использованием графического интерфейса. Таковой реализует программа WingetUI. И ещё есть утилита UpdateHub, работающая в связке с WinGet, она предлагает комплексное обновление программ, приложений и самой Windows.

tagsКлючевые слова
     Рекомендуем другие статьи по данной теме
Ctrl
Enter
Заметили ошибку
Выделите и нажмите Ctrl+Enter

Добавить комментарий

Комментарии (3)

  1. img
    20 июня 2024 15:42 Alex
    Гость

     

    Уважаемый, Grey3!

    Боюсь в этом запросе, ничего кроме как [Y] Да [N] Нет, вы указать не сможете! Ни DE, ни RU, ни EN не сработают, только Y(y) или N(n) (прописными или строчными), поэтому соглашаемся и продолжаем работать в консоли.

    Цитировать replyОтветить
  2. img
    18 февраля 2024 10:12 glavred
    Администратор

    Это всего лишь ответ на запрос консольного средства, вряд ли Майкрософт испытывает интерес к такого рода операциям и что-то фиксирует. Если вы обоснованно за что-то переживаете, установите нужный вам язык для всей операционной системы. Язык интерфейса Windows меняется легко и просто, без переустановки. А лучше используйте программу WingetUI – графический интерфейс к менеджеру пакетов Winget. Статья сегодня появилась на сайте.

    Цитировать replyОтветить
  3. img
    18 февраля 2024 02:12 Grey3

    Увы... при попытке winget upgrade --all мне выдало:

    C:\WINDOWS\system32>winget upgrade --all
    Перед использованием источника "msstore" необходимо просмотреть следующие соглашения.
    Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
    Для правильной работы источника требуется отправить во внутреннюю службу двухбуквенный код текущего региона компьютера (например, "RU").
    
    Вы согласны со всеми условиями исходных соглашений?
    [Y] Да  [N] Нет: n
    Соглашения для одного или нескольких источников не приняты. Операция отменена. Примите соглашения источников или удалите эти источники.
    
    C:\WINDOWS\system32>

    Я конечно могу указать, например, de - поскольку нахожусь в Германии, но что будет потом? Смогу ли я впоследствии указать ru или en, или значение DE будет зафиксировано в Microsoft и мне не удастся сменить регион для этого компьютера без переустановки Windows? Или, хуже того, без покупки нового ключа активации?

    Цитировать replyОтветить