- Chocolatey — автоматическая установка и удаление Windows программ
- Chocolatey — пакетный менеджер для Windows
- Установка и системные требования.
- Установка, удаление и обновление программ
- Графический интерфейс
- Менеджер пакетов PackageManagement (OneGet) в Windows 10
- Команды PackageManagement в PowerShell
- Добавление репозитория Chocolatey в PackageManagement (OneGet)
- Видео — Использование менеджера пакетов PackageManagement (aka OneGet) для установки программ в Windows 10
Chocolatey — автоматическая установка и удаление Windows программ
Установка программ под Windows не так удобна, как хотелось бы – сперва нужно открыть браузер, найти где можно скачать требуемое приложение, скачать его и только затем установить. Не слишком удобно, но все становится еще хуже, когда речь заходит об обновлении. Если некоторые программы такие, например, как браузеры умеют обновляться автоматически, то часть приложений либо ограничиваются простым уведомлением о наличии новой версии, либо и вовсе не проверяют наличие обновлений. Сегодня мы расскажем о том, как упростить не только установку программ, но и автоматизировать их обновление.
Chocolatey — пакетный менеджер для Windows
Пакетный менеджер представляет из себя целый набор ПО, который управляет установкой, удалением и обновлением программ. Пользователи UNIX систем уже давно используют все преимущества подобных систем, но вот в Windows они не очень развиты. И здесь нам на помощь приходит сторонний пакетный менеджер Chocolatey. Благодаря ему мы сможем не только быстро устанавливать программы, но и настроить их автоматическое обновление.
Установка и системные требования.
Chocolatey требует наличия Windows 7 или более поздней версии, PowerShell v2+ и .NET Framework 4+. Если вы счастливый обладатель Windows 10, то вам вряд ли есть, о чем беспокоиться. В последней версии ОС все требуемые компоненты уже встроены. Для начала работы с Chocolatey нам нужно запустить командную строку Windows от имени администратора. Затем просто скопируйте ниже приведенный текст и щелчком правой клавиши мыши вставьте его в окно команд:
@»%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe» -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command «iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))» && SET «PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin»
При возникновении каких-либо проблем, можно попробовать выполнить установку в PowerShell. Если вы используете Windows 10, то вам нужно просто нажать на кнопке Пуск правой клавишей мыши и выбрать «Windows PowerShell (администратор)». Затем также копируете команду и вставляете ее в окно команд и щелчком правой клавиши мыши.
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))
Установка, удаление и обновление программ
Если установка Chocolatey вам показалась простой, то и установка программ не вызовет затруднений. Давайте для примера установим плеер VLC. Для начала работы вам необходимо закрыть и заново открыть командную строку или в PowerShell Windows, а затем выполнить простую команду:
Спустя всего несколько секунд в вашей системе будет полностью установлен популярный видеоплеер. Давайте рассмотрим команду поближе: с помощью фразы choco мы обращаемся к нашему пакетному менеджеру, команда install говорит об установке приложения, затем следует имя программы и в конце ключ -y сообщает о том, что мы согласны с лицензионным соглашением. Точно также можно установить сразу несколько программ. Давайте для примера добавим в наш список 7-ZIP, Adobe Reader, Firefox и CCleaner:
choco install vlc 7zip adobereader firefox ccleaner -y
Удалять и обновлять программы также просто. Для этого всего лишь нужно заменить install на uninstall, для удаления или update для обновления. Однако для обновления удобней пользоваться командой «обновить все». Выглядит она следующим образом:
Но и это еще не все. Для того чтобы не проверять каждый раз вручную наличие обновлений, вводя указанную выше команду, мы настроим автоматическую установку новых версий программ. И опять, все, что нам нужно сделать – это выполнить простую команду:
choco install chocolateypackageupdater -y
После выполнения этой команды вы можете забыть о ручной проверке и скачивании новых версий. Теперь за вас будет это делать Chocolatey. Полный список возможных для установки программ (пакетов) вы можете посмотреть на официальной странице менеджера.
Графический интерфейс
Если вам работать в командной строке Windows не очень удобно, то вы можете установить графическую оболочку для Chocolatey. Она позволит вам точно также пользоваться пакетным менеджером, но более наглядно. Сперва установим графический интерфейс:
Теперь в меню Пуск должна появиться программа Chocolatey GUI, где мы и сможем устанавливать, удалять и обновлять приложения. Программа имеет простой и понятный интерфейс, так что разобраться с ее использованием не составит труда.
Не забудьте подписаться и поставить лайк. Впереди будет еще много крутых статей.
Менеджер пакетов PackageManagement (OneGet) в Windows 10
Одно из самых интересных нововведений в Windows 10, которое обычный пользователь может и не заметить — это встроенный менеджер пакетов PackageManagement (ранее — OneGet), позволяющий легко устанавливать, искать и иными способами управлять программами на компьютере. Речь об установке программ из командной строки, а если вам не совсем ясно, о чем это и почему может быть полезным — рекомендую для начала посмотреть видео в конце этой инструкции.
Обновление: встроенный менеджер пакетов назывался OneGet на этапе предварительных версий Windows 10, теперь это модуль PackageManagement в PowerShell. Также в инструкции обновлены способы его использования. Обновление 2020: Microsoft представила диспетчер пакетов Winget.
PackageManagement является составной частью PowerShell в Windows 10, кроме этого, получить менеджер пакетов можно, установив Windows Management Framework 5.0 для Windows 8.1. В этой статье — несколько примеров использования менеджера пакета для рядового пользователя, а также способ подключить репозиторий (своего рода базу данных, хранилище) Chocolatey в PackageManagement (Chocolatey представляет собой независимый менеджер пакетов, который вы можете использовать в Windows XP, 7 и 8 и соответствующий репозиторий программ. Подробнее об использовании Chocolatey в виде независимого менеджера пакетов).
Команды PackageManagement в PowerShell
Для использования большинства описанных далее команд вам потребуется запустить Windows PowerShell от имени администратора.
Для этого, начните набирать PowerShell в поиске панели задач, после чего кликните правой кнопкой мыши по найденному результату и выберите пункт «Запустить от имени Администратора».
Менеджер пакетов PackageManagement или OneGet позволяет работать с программами (устанавливать, удалять, искать, обновление пока не предусмотрено) в PowerShell с помощью соответствующих команд — аналогичные методы хорошо знакомы пользователям Linux. Чтобы получить представление, о чем идет речь, можете взглянуть на скриншот ниже.
Преимущества такого способа установки программ заключаются в:
- использовании проверенных источников программ (вам не требуется искать вручную официальный сайт),
- отсутствия установки потенциально нежелательного программного обеспечения при установке (и самого привычного процесса установки с кнопкой «Далее»),
- возможности создавать сценарии установки (например, если необходимо установить полный набор программ на новый компьютер или после переустановки Windows, не нужно вручную скачивать и устанавливать их, достаточно запустить сценарий),
- а также в простоте установки и управления ПО на удаленных машинах (для системных администраторов).
Получить список команд, доступных в PackageManagement, вы можете с помощью Get-Command -Module PackageManagement ключевыми из них для простого пользователя будут:
- Find-Package — поиск пакета (программы), например: Find-Package -Name VLC (параметр Name можно пропустить, регистр букв не важен).
- Install-Package — установка программы на компьютер
- Uninstall-Package — удаление программы
- Get-Package — просмотр установленных пакетов
Остальные команды предназначены для просмотра источников пакетов (программ), их добавления и удаления. Эта возможность нам тоже пригодится.
Добавление репозитория Chocolatey в PackageManagement (OneGet)
К сожалению, в предустановленных репозиториях (источниках программ), с которыми работает PackageManagement мало что можно найти, особенно если речь идет о коммерческих (но при этом бесплатных) продуктах — Google Chrome, Skype, различные прикладные программы и утилиты.
Предлагаемое Microsoft для установки по умолчанию хранилище NuGet содержит средства разработки для программистов, но не для типичного моего читателя (кстати, в ходе работы с PackageManagement вам может постоянно предлагаться установка поставщика NuGet, я не нашел способа «избавиться» от этого, кроме как однократно согласиться с установкой).
Однако проблему можно решить, подключив репозиторий менеджера пакетов Chocolatey, для этого используйте команду:
Подтвердите установку поставщика Chocolatey, а после установки введите команду:
Последние действие, которое потребуется для того, чтобы пакеты chocolatey могли устанавливаться — изменить Execution-Policy. Для изменения введите команду, разрешающую выполненные всех подписанных доверенных сценариев PowerShell:
Команда разрешает использование подписанных сценариев, загруженных из Интернета.
С этого момента пакеты из репозитория Chocolatey будут работать в PackageManagement (OneGet). При возникновении ошибок при их установке, попробуйте использовать параметр -Force.
А теперь простой пример использования PackageManagement с подключенным поставщиком Chocolatey.
- Например, нам нужно установить бесплатную программу Paint.net (это может быть и другая бесплатная программ, большинство свободно распространяемых программ присутствуют в репозитории). Вводим команду find-package -name paint (можно вводить имя частично, если не знаете точного названия пакета, ключ «-name» не обязателен).
- В результате мы видим, что paint.net присутствует в репозитории. Для установки используем команду install-package -name paint.net (точное имя берем из левого столбца).
- Дожидаемся окончания установки и получаем установленную программу, не разыскивая, где ее скачать и не получая попутно нежелательное ПО на свой компьютер.
Видео — Использование менеджера пакетов PackageManagement (aka OneGet) для установки программ в Windows 10
Ну и в завершение — все то же самое, но в формате видео, возможно, для кого-то из читателей так будет проще понять — пригодится это для него или нет.
Пока всё, как управление пакетами будет выглядеть в дальнейшем еще посмотрим: была информация и о возможном появлении графического интерфейса OneGet и о поддержке приложений для рабочего стола из магазина Windows Store и о других возможных перспективах развития продукта.
А вдруг и это будет интересно:
Почему бы не подписаться?
Рассылка новых, иногда интересных и полезных, материалов сайта remontka.pro. Никакой рекламы и бесплатная компьютерная помощь подписчикам от автора. Другие способы подписки (ВК, Одноклассники, Телеграм, Facebook, Twitter, Youtube, Яндекс.Дзен)
06.11.2014 в 09:03
А куда делся блок сайта поделиться?
06.11.2014 в 10:46
Один блок есть, внизу сайта, но он не отображается на мобильных, чтоб не мешал. А кнопки внизу статьи я убрал, некоторые проблемы с ними были.
25.11.2014 в 01:21
Читал статью на Хабре и там ссылка на сайт с русскими командами была oneget.info
06.12.2014 в 17:48
Ну попробуйте сказать что не у Linux стырили идею. Менеджер пакетов в Linux давно стоит, и всё что надо можно спокойно насетапить из командной строки, о да чуть не забыл там же множество рабочих столов присутствует.
08.12.2014 в 11:28
А разве кто-то спорит?
26.02.2016 в 02:00
А кроме Linux ещё есть Solaris и куча разных вариаций BSD… Там тоже всё это давно есть. Ах, да… Линух же сам клон BSD.
05.04.2016 в 13:40
Сотрясание воздуха в коментариях
26.11.2016 в 03:43
Здравствуйте. Хочу дополнить:
1. Копируете все команды из статьи.
2. Проверяете все программы.
3. Вводите команды install в блокноте.
4. Сохраняете в формате .ps1.
5. Открываете Windows PowerShell администратор.
6. Вводите путь до файла.
7. Ждёте, пока всё поставится.
P. S. А есть ещё другие репозитории? Просто некоторых программ нет, а хотелось бы их автоматически ставить. Например, используемая мной программа экранного доступа сейчас имеет версию 2016.3, а в репозитории версия от 2014.
Отсутствует Dev-C++, хотя эта программа бесплатная.
Благодарю.
26.11.2016 в 06:34
Насчет других репозиториев — по идее должны быть, но что-то мне нагуглить не удалось, искал и по repositories и по package providers.
11.02.2017 в 22:24
найти все доступные oneget репозитории можено командой
find-packageprovider *
26.11.2016 в 12:19
Ок. Вопрос: как выяснить, почему не удаётся запустить любое приложение с правами администратора? Появляется контроль учётных записей с просьбой ввести логин и пароль, хотя самих полей ввода логина и пароля нет.
В свойствах служб нет возможности выбора вариантов.
Как можно это исправить? Ни управление учётными записями, ни командная строка администратор, ни Windows Powershell администратор не запускаются.
Заранее очень благодарю.
27.11.2016 в 07:51
Здравствуйте. Сам с таким не сталкивался. Нашел вот такое решение для 8-ки (предполагаю, что и для 10-ки будет работать) — goo.gl/Dk0gJF
Суть в том, что активируем скрытую учетку администратора (один из способов у меня описан здесь — https://remontka.pro/reset-password-windows-10/ (добиваемся окна командной строки на экране блокировки, а там уже можно и активировать),
а под нею перезаводим «потерянную» учетную запись администратора.
02.12.2016 в 00:43
08.08.2017 в 16:05
Доброго времени суток. С Шоколадкой не все гладко — иногда пакеты просто отказываются устанавливаться, приходится ставить их руками…
19.04.2019 в 14:17
Пожалуй самый интересный вопрос.
Предположим, мне нужно установить софт на много компов, которые еще не в домене.
Я бы скачал определенный софт в определенную папку, а потом бы уже инсталлил на нужные компы. Зачем для нескольких компов все время качать из интернета нужный софт? Это же винда…