Как установить и пользоваться Windows Package Manager (winget)

Windows Package Manager — это официальный менеджер пакетов для Windows от Microsoft. Он упрощает работу с приложениями: больше не нужно открывать Microsoft Store для каждой установки. Winget работает в командной строке, поддерживает автоматизацию и пригоден для сценариев развертывания и сопровождения.
Важно: winget доступен для Windows 10 версии 1809 и новее, а также для Windows 11. На некоторых системах он устанавливается автоматически через обновления Microsoft. Если автоматического обновления нет, установите вручную.
Как установить winget
Есть несколько способов получить стабильную версию Windows Package Manager. Описанные ниже варианты подходят для большинства пользователей и администраторов.
- Через Microsoft Store
- Откройте Microsoft Store.
- Найдите приложение App Installer.
- Установите App Installer — в него включён winget.
- Через официальный релиз на GitHub
- Перейдите в репозиторий Microsoft Windows Package Manager на GitHub.
- Скачайте последний релиз в виде файла .appxbundle.
- Дважды щёлкните файл и следуйте подсказкам мастера установки.
- Через автоматическое обновление Windows Update
- Microsoft постепенно распространяет winget через обновления на совместимых устройствах.
- Проверьте Центр обновления Windows, если ранее методы 1 и 2 недоступны.
Примечание: если вы устанавливаете winget для корпоративной среды, рассмотрите пакетирование App Installer в инвентарные системы управления ПО или использование инструментов MDM.
Основные концепции
- winget — клиент командной строки для поиска и установки приложений по метаданным репозитория.
- Пакеты идентифицируются по ID, имени и тегам.
- Команды запускаются в PowerShell, Command Prompt или Windows Terminal.
Как пользоваться winget
Запустите PowerShell или Windows Terminal и введите:
wingetЭто выведет список доступных команд и подсказки. Ниже — наиболее полезные команды с примерами.
Поиск пакетов
Используйте команду search для поиска по имени, описанию и тегам:
winget search firefoxРезультат покажет список совпадений и их идентификаторы.
Просмотр информации о пакете
Чтобы увидеть версию, описание и источник, используйте show с идентификатором пакета, найденным через search:
winget show mozilla.firefoxУстановка и обновление
Установите пакет командой install:
winget install firefoxПроверить и обновить конкретный пакет:
winget upgrade firefoxОбновить все пакеты сразу:
winget upgrade --allУстановить скрыто и без интерфейса пользователя:
winget install firefox --silentУдаление и перечисление установленных пакетов
Получить список установленных программ:
winget listУдалить приложение:
winget uninstall firefoxЧек-листы по ролям
Ниже — краткие шаги для разных пользователей.
Чек-лист для обычного пользователя
- Проверить версию Windows (1809+).
- Открыть Microsoft Store и установить App Installer.
- Открыть PowerShell и выполнить winget search, затем winget install.
Чек-лист для системного администратора
- Проверить совместимость в вашей ОС и политике безопасности.
- Раскатать App Installer через MDM или SCCM при необходимости.
- Тестировать silent-установки и обновления в тестовой среде.
- Создать скрипты для автоматического обновления с логированием.
Чек-лист для DevOps/инженера по автоматизации
- Интегрировать winget в CI/CD для подготовки образов и тестовых стендов.
- Создавать манифесты и шаблоны для гарантированного состояния рабочих сред.
- Обеспечить idempotent-скрипты, использующие winget list и winget upgrade.
Методика безопасного применения winget в автоматизации
- Всегда тестируйте команды в изолированной среде.
- Получайте список установленных пакетов перед массовыми обновлениями.
- Включайте логирование выполнения и код возврата для CI.
- Планируйте откат: сохраняйте образ или снимок перед массовыми изменениями.
Мини-скрипт для безопасного обновления всех пакетов (пример для PowerShell):
# Создать резервный список
winget list > C:\logs\winget_installed_before_update.txt
# Выполнить обновление
winget upgrade --all --silent
# Записать результат
winget upgrade > C:\logs\winget_upgrade_result.txtРешение проблем и сценарии, когда winget не срабатывает
- Пакет не найден
- Возможная причина: пакет отсутствует в репозитории Microsoft или название отличается.
- Решение: уточните запрос через winget search, попробуйте альтернативные ключевые слова или добавьте пакет в репозиторий с помощью winget create.
- Ошибки установки с кодами возврата
- Проверьте журнал App Installer и права доступа.
- Запустите терминал от имени администратора, если требуется запись в Program Files.
- Конфликты версий или нестабильные инсталляторы
- Используйте флаг –silent для сборочных сценариев и тестируйте совместимость.
- Включите проверку checksum и цифровых подписей, если это поддерживается пакетом.
- Корпоративные политики блокируют установку
- Согласуйте с ИТ-политиками, используйте MDM для распространения.
Когда лучше не использовать winget
- Если вам нужно строго управлять каждой зависимостью и версией в корпоративной среде, где используются собственные пакеты и репозитории, возможно, целесообразнее применять специализированные инструменты для управления приложениями и образами.
- Для программ с сложными GUI-инсталляторами, требующими вмешательства пользователя, winget может не обеспечить корректной установки.
Ментальные модели и советы
- Представляйте winget как тонкий слой над инсталляторами приложений, который автоматизирует вызов установщиков и управление версиями.
- Для повторяемости используйте скрипт, который сначала фиксирует текущее состояние, затем выполняет необходимые действия и логирует результат.
Диаграмма принятия решения
flowchart TD
A[Нужно установить или обновить приложение?] --> B{Пакет есть в winget репозитории?}
B -- Да --> C[Использовать winget install или winget upgrade]
B -- Нет --> D{Можно добавить манифест?}
D -- Да --> E[Создать манифест и отправить PR в репозиторий]
D -- Нет --> F[Скачать с официального сайта или использовать корпоративный репозиторий]
C --> G[Тестировать установку в среде]
E --> G
F --> GКритерии приёмки
- Пакет успешно устанавливается без вмешательства пользователя при использовании –silent.
- Обновление пакетов не ломает настройки пользователей и сервисов.
- Логи установки доступны и показывают коды возврата для каждой операции.
FAQ
Вопрос: Как узнать, установился ли winget на моём компьютере?
Ответ: Откройте PowerShell и выполните winget. Если команда выводит список команд и подсказки, то winget установлен.
Вопрос: Можно ли добавлять свои пакеты в репозиторий winget?
Ответ: Да. С помощью инструмента winget create можно сформировать манифест и отправить его на рассмотрение в репозиторий Microsoft.
Вопрос: Как обновить все приложения автоматически?
Ответ: Выполните winget upgrade –all. Для автоматизации это можно запускать по расписанию через планировщик задач или в CI.
Итог
Windows Package Manager делает установку и обслуживание приложений быстрее и повторяемее. Для большинства задач winget замещает ручной поиск в Microsoft Store и упрощает автоматизацию. Однако в корпоративных или специфичных сценариях стоит тестировать и интегрировать winget в существующие процессы развертывания.
Important: перед массовыми изменениями всегда делайте резервные снимки и проверяйте сценарии отката.
Похожие материалы
Новый интерфейс Google Play: как ориентироваться
Как записать экран на Mac — руководство
Как смотреть презентацию iPhone 15 — где и когда
Ремонт Mac: варианты, советы и чеклисты
Ленивая загрузка изображений: руководство