- PVSM.RU - https://www.pvsm.ru -
Chocolatey [1] — менеджер пакетов в среде Windows по аналогии с apt-get в Linux Мире.
Начал использовать по причине разработки на Node.js под Nodester. Мне хотелось бы регулярно обновлять ноду, git, dropbox, да и тот же skype, при этом, не заморачиваясь со скачиванием msi инсталяторов и установками, а просто обновить одной командой:
cup all
Это возможно — обновить все пакеты [2]. Общий список доступных команд [3] в Wiki. К сожалению, нет возможности удалить пакеты [4].
Так, как для работы постоянно требуется доступ к консоли, git, node, jade. Я хотел бы немножечко проиллюстрировать работу с Chocolatey в контексте (на примере) подготовки к разработке под Nodester.
Требования для установки:
Windows XP/Vista/7/2003/2008
.NET Framework 4.0
PowerShell 2.0
Устанавливается просто, выполнением такой незамысловатой команды (в cmd.exe в PowerShell не обрабатывается):
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('http://bit.ly/psChocInstall'))"
После чего автоматически устанавливается в C:Chocolatey, в C:Chocolateylibs будут находится описания пакетов, библиотеки. Основные же модули программ по дефолту устанавливаются в Program Files (x86).
Все основные и необходимые, для девелопера, пакеты присутствуют [5]. Интерпретируемые языки, типа PHP [6], Ruby [7], Python [8], Node.js [9]. БД — MySQL [10], MongoDB [11], SQLite [12]. Контроль версий Git [13], Mercurial, SVN [14]. Notepad++, Sublime. Сalibre [15] для обработки книг под Kindle.
1. Установка пакета Node.js вместе с npm
cinst nodejs.install
Эта команда аналогична следующей
chocolatey install nodejs.install
Правда консоль придется закрыть и открыть заново, что бы стали доступны записанные пути в path.
2. Когда нода установлена уже можно вести разработку, инсталлировать модули через менеджер пакетов. Вот и пакетик для Нодстера
3. Без Git-a на Nodester совершить деплой не удастся, так что устанавливаем его с помощью Chocolatey
Вот список того, что я ещё дополнительно установил.
cinst Console2
cinst putty
cinst curl
cinst Wget
Пробуем putty, команда открывает окно программы и смотрим на, то что git поставился успешно (напомню, что придется закрывать консоль и открывать заново).
4. Вот видим что к Nodester можем свободно обращаться
Дальше остается рутинный процесс, инсталяция на локальной машине через npm требуемый в проекте модулей, типа expressjs, jade, тестирование на локальном веб-сервере который загружает нода. Все это дело ведется в git, коммитится, после чего совершается push в репы nodester. На nodester-е (список команд [16]) так же потребуется установить npm модули через nodester npm install appname.
Не для всего подходит Chocolatey. Сама идеология Windows и создаваемых под платформу приложений склоняется к тому, что они сами должны лезть в автозагрузки и при каждом удобном случае без разрешения лезть обновляться. Так, в пакетах есть Chrome, но мы то знаем про GoogleUpdater.exe который и так все обновляет. Так, же и про Notepad++ который сам может полезть за обновлениями. Skype и самому обновить можно. Однако если изначально все ставить по-шоколадному, быстрое обновление одной командой будет приносить удовольствие, особенно если это относится не к GUI инструментам.
Напоследок приложу видео ролик с оф. сайта
Автор: anatooly
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/razrabotka/7822
Ссылки в тексте:
[1] Chocolatey: http://chocolatey.org/
[2] обновить все пакеты: https://github.com/chocolatey/chocolatey/wiki/CommandsUpdate
[3] список доступных команд: https://github.com/chocolatey/chocolatey/wiki/CommandsReference
[4] нет возможности удалить пакеты: https://groups.google.com/group/chocolatey/browse_thread/thread/653f6b516ae94ca7?pli=1
[5] пакеты присутствуют: http://chocolatey.org/packages
[6] PHP: http://chocolatey.org/packages/php
[7] Ruby: http://chocolatey.org/packages/ruby
[8] Python: http://chocolatey.org/packages/python
[9] Node.js: http://chocolatey.org/packages/nodejs
[10] MySQL: http://chocolatey.org/packages/mysql
[11] MongoDB: http://chocolatey.org/packages/mongodb
[12] SQLite: http://chocolatey.org/packages/SQLite
[13] Git: http://chocolatey.org/packages/msysgit
[14] SVN: http://chocolatey.org/packages/tortoisesvn
[15] Сalibre: http://chocolatey.org/packages/calibre
[16] список команд: http://nodester.com/api
Нажмите здесь для печати.