Macports как пользоваться
Перейти к содержимому

Macports как пользоваться

  • автор:

Mac на службе у хакера. Часть 6 – Настройка менеджера пакетов Homebrew

Половина пути по настройке Mac для нужд пентестера уже пройдена, и теперь, после ознакомления с основами Git, настало время научиться использовать менеджер пакетов.

Автор: Barrow Половина пути по настройке Mac для нужд пентестера уже пройдена, и теперь, после ознакомления с основами Git, настало время научиться использовать менеджер пакетов. Без помощи менеджера пакетов в среде Linux/Unix вы будете делать много дополнительной работы. То есть, если вы захотите опробовать новую утилиту, то придется выполнять компиляцию исходников. Конечно, можно воспользоваться Mac App Store, однако большинство нужных нам утилит с открытым исходным кодом, которыми пользуются хакеры и профессионалы по безопасности, там отсутствуют. Чтобы приложение появилось в Mac App Store разработчик должен заплатить деньги, а код утилиты пройти проверку со стороны сотрудников Apple, что, как вы понимаете, вносит дополнительные сложности. В общем, нам нужен альтернативный менеджер пакетов для загрузки и установки свободного программного обеспечения такого как Hydra, Aircrack-ng, GNU Coreutils (если вы, как и я, тяготеете больше к Linux, чем к Unix) или некоторые зависимости для утилит, которые размещаются на GitHub. Почему без менеджера пакетов жизнь становится сложнее Если бы я захотел скомпилировать Aircrack-ng из исходных текстов на моей машине с macOS, то вначале мне нужно было бы удостовериться, что присутствуют в нужных местах и работают корректно все необходимые зависимости. Затем мне потребовалось бы загрузить и сконфигурировать Aircrack-ng, выполнить компиляцию и попутно решить все возникающие проблемы. Через несколько месяцев мне потребовалось бы обновить скомпилированное приложение. То есть нужно было бы удалить ранее установленное приложение, проверить, все ли библиотеки последних версий и повторить процесс заново. атем проверить, есть ли зависимости, которые больше не используются (пришлось бы отслеживать, что установлено ранее). В случае с менеджером пакетов, все вышеупомянутые операции выполняются в автоматическом режиме. Выбор подходящего менеджера пакетов Существует несколько менеджеров пакетов для macOS (например, Macports и Nix), но я предпочитаю Homebrew, поскольку у этого приложения интуитивно понятный синтаксис, высокая скорость и хорошая поддержка пакетов. Кроме того, Homebrew больше использует стандартные библиотеки, встроенные в macOS, вместо установки новых. Еще одно удобство: можно работать от имени обычного пользователя, и нет необходимости в использовании sudo. И самый главный плюс: Homebrew хранит всю информацию внутри своей песочницы в папке /usr/local. При скачивании исходных текстов и бинарных файлов этот менеджер пакетов попутно скачивает все необходимые зависимости. Далее Homebrew отслеживает все, что установлено, и в какой директории. Кроме того, отслеживается информация о конфигурации. Короче говоря, поддержка программного обеспечения сильно упрощается. Вначале я буду искать нужный мне пакет в резпозитории Homebrew прежде чем клонировать с GitHub и компилировать исходные тексты. Если пакет не найден через Homebrew, можно попробовать создать новую формулу для отсутствующего пакета. Хотя в резпозитории Homebrew не особо много приложений, используемых пентестерами, однако много библиотек и других полезных утилит с открытым исходным кодом. Шаг 1: УстановкаHomebrew Первый шаг – скачать Homebrew с сайта http://brew.sh. Перед установкой нелишним будет проверить исходный код установочного скрипта. В целом, я не очень люблю пользоваться скриптами из интернета, но в случае с Homebrew я доверяю коду, который хранится в репозитории. Во-первых, исходники хранятся на GitHub и доступны для изучения. Во-вторых, у автора нет доступа к внутренней кухне GitHub, и нет возможности поиска и подключения к каналам, используемым cURL. Откройте iTerm и выполните следующую команду: /usr/bin/ruby -e «$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)» Появится запрос на ввод пароля.

Рисунок 1: УстановкаHomebrewШаг 2: Создание токена доступа Если вы выполняете поиск в репозитории brew достаточно часто, вам понадобится токен доступа поскольку GitHub API имеет ограничение на количество запросов.
Рисунок 2: Ошибка при поиске в репозитории, связанная с ограничением количества запросов Чтобы настроить токен, нужно перейти по ссылке из терминала, залогиниться на GitHub и удостовериться, что сняты все флажки, поскольку нам нужен только токен.
Рисунок 3: Настройка нового токена В самом низу страницы нажмите на «Generate Token». Далее нужно добавить созданный токен в Homebrew. Шаг 3: Добавление токена Чтобы добавить созданный токен, нужно отредактировать файлы .bashrc и .bash_profile, которые находятся в вашей домашней директории. Файл .bash_profile представляет собой персональный файл для инициализации, используемый во время авторизации в шелле (через SSH или консоль), в то время как .bashrc используется при каждом открытии нового экземпляра шелла после авторизации. Мы можем один раз связать .bash_profile с .bashrc и затем все настройки перенести в .bashrc. В этом случае, если, например, мы подключимся к системе через SSH, то будем иметь среду с теми же настройками, что и в локальном терминале.
Для редактирования файлов я буду использовать Vim, однако вы можете работать с любым привычным вам текстовым редактором, либо стандартным редактором, если в терминале введете команду open ~/filename. Чтобы использовать Vim, откройте новое окно с iTerm или введите команду cd для перехода в домашнюю директорию, и запустите следующую команду (если .bashrc отсутствует, для создания этого файла введите команду touch .bashrc):

  • vim .bashrc

Далее в режиме вставки добавьте в конец файла следующую строку. Для добавления после курсора введите символ a, для добавления перед курсором – символ i.

  • export HOMEBREW_GITHUB_API_TOKEN=»YOUR_TOKEN_HERE»

Строку YOUR_TOKEN_HERE необходимо заменить на созданный токен.

Рисунок 4: Содержимое файла .bashrc

Далее нажмите Esc для переключения в обычный режим и введите :wq для сохранения файла. Двоеточие означает начало команды, символы wq – сохранить изменения и завершить работу.
Затем необходимо отредактировать файл .bash_profile. Вводим следующую команду (если .bash_profile отсутствует, для создания этого файла введите команду touch .bash_profile):

  • vim .bash_profile

В конце файла добавьте следующую строку (схожим образом используйте символы a и i для добавления после и до курсора):

Рисунок 5: Содержимое файла .bash_profile

После завершения редактирования нажмите Esc и введите команду :wq для сохранения изменений и выхода из редактора.

Далее укажем Bash, что нужно выполнить команды из файла .bashrc, как если бы эти команды запускались из командной строки:

  • source ~/.bashrc

Настройка токена завершена. Переходим к работе непосредственно с Homebrew.

Шаг 4: Использование Homebrew

Homebrew во многом схож с другими менеджерами пакетов, используемыми в Linux. Перед началом работы ознакомимся со справочной информацией при помощи следующей команды:

Рисунок 6: Справочная информация о Homebrew

Очень простой менеджер пактов. Если вы знакомы с APT, то, возможно, найдете много общего между этими двумя приложениями.

Теперь попробуем установить какой-нибудь пакет. Я выбрал популярную утилиту Hydra, которая предназначена для брутфорса паролей. Вначале проверяем, есть ли этот пакет в репозитории, при помощи следующей команды:

  • brew search hydra

Далее смотрим информацию о найденном пакете, чтобы удостовериться, что это именно то приложение, которое мы ищем:

Рисунок 7: Поиск и получение информации о пакете Hydra

Затем при помощи следующей команды устанавливаем пакет (я выбрал установку с графическим интерфейсом):

  • brew install hydra —with-gtk+

После завершения установки приложение готово к работе:

Рисунок 8: Графическая оболочка для приложения Hydra

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

Заключение

Установка и поддержка пакетов при помощи Homebrew не составляет труда, особенно если у вас есть опыт работы с Linux. Перед установкой приложения с открытым исходным кодом я практически всегда вначале ищу в репозитории для Homebrew. Если пакет отсутствует, я скачиваю исходный текст с GitHub. Большинство нужд, связанных с приложениями, можно решить при помощи этих двух методов.

Открой дверь в мир, где наука не имеет границ — подписывайся на наш канал!

Установка MacPorts на MacOS

Недавно купил себе макбук, т.к мак ОС основана на BSD, значит можно установить порты (нечто подобное как и у FreeBSD, NetBSD, OpenBSD) для установки софта не с AppStore, а из сторонних разработчиков. Мне очень захотелось поставить порты на свой мак и посмотреть что и как работает, по этому я решил написать статью «Установка MacPorts на MacOS» и дать небольшую инструкцию по установке и удаления MacPorts на MacOS. Мне, чесно говоря, немного не привычно работать с macOS, хотя очень хорошо реалезовали ее.

MacPorts является простой в использовании для компиляции, установки и управления программным обеспечением с открытым исходным кодом. MacPorts может быть концептуально разделена на две основные части: инфраструктуры, известный как MacPorts base и множество доступных портов. MacPorts представляет собой набор спецификаций, содержащихся в Portfile и который определяет приложение, его характеристики или специальные инструкции, необходимые для установки программ. Это позволяет использовать одну команду, чтобы MacPorts начал автоматически загружать, компилировать и устанавливать приложения и библиотеки. Но с помощью MacPorts управлять вашеим ПО с открытым исходным кодом предоставляет несколько других существенных преимуществ.

  • Устанавливает автоматически необходимое программное обеспечение со всеми зависимостями для данного порта.
  • Обеспечивает удаление и апгрейдов установленных портов.
  • Позволяет создавать предварительно скомпилированные бинарные инсталляторы перенесенных приложений, чтобы быстро установить программное обеспечение на удаленных компьютерах без компиляции из исходных кодов.

MacPorts разработан на OS X, хотя он может работать и на других Unix-подобных систем, особенно основанных на Berkeley Software (BSD). На практике, установка портов работает только на OS X. MacPorts base может быть скомпилирована на Linux (и, возможно на других POSIX-совместимых системах), где он в основном используется для создания зеркала и генерации файлов поддержки для установки на OS X.

Существует два способа установить MacPorts на MacOS и сейчас я расскажу что и как нужно делать и дам советы (но это чисто мое мнение).

1. Установка MacPorts на MacOS из пакета

Этот способ наиболее распространенный и самый легкий, но мне он не нравится ( но об этом попозже).

Чтобы установить порты на мак ОС, нужно скачать пакет и установить его, по этому скачайте и установите под свою версию мак ОС.

После скачивания, запустите и установить данный пакет. Вот и все, очень все просто. Чтобы проверить версию портов, выполните:

# port version

И покажет версию данных портов.

Хочу сказать что это работает, но есть одно но, если захотите установить напимер Homebrew (менеджер, установщик), то не будет работать в данном примере, собсвенно я с этим и столкнулся.

Чтобы удалить порты из мак ОС, выполните:

# sudo port -fp uninstall installed

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

Нужно выполнить команду, например на пакете wine:

# sudo port install wine-devel

Кто знаком с FreeBSD или другими BSD, то у того не должно быть проблем, хотя и у обчного пользователя тоже, нужно понять работу.

2. Установка MacPorts на MacOS из исходников

Если вы установили MacPorts используя 1-ю установку (Установка MacPorts на MacOS из пакета), пропустить этот раздел. Для установки MacPorts из исходного кода, выполните следующие действия.

Загрузите и извлеките MacPorts 2.3.1 архив. Либо сделать с помощью браузера и Finder, или использовать данные команды в окне терминала:

# sudo mkdir /usr/local/src # cd /usr/local/src # curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.3.1.tar.bz2 # tar xf MacPorts-2.3.1.tar.bz2

После скачивания и распаковки архива нужно перейти в директорию и собрать данные исходники:

# cd MacPorts-2.3.1/ # sudo ./configure && sudo make && sudo make install

Но желательно поменять директорию ( дописать ./configure —prefix=/usr/loca/macports как для примера), делается это для того чтобы не было конфликтов с другими программами, как я говорил выше.

Установка Subversion (обновление)

— Проверьте источник MacPorts

Выберите место для хранения рабочую копию кода MacPorts. Для этого примера будет использоваться /opt/mports , но вы можете поместить источник в любом месте. Этот пример создаст /opt/mports/trunk, содержащий все необходимое для MacPorts.

# mkdir -p /opt/mports # cd /opt/mports # svn checkout https://svn.macports.org/repository/macports/trunk

— Сборка и установка MacPorts

MacPorts использует Autoconf и мейкфайлы для установки. Эти команды будут собирать и устанавливать MacPorts в /opt/local. Вы можете добавить опцию —prefix в ./configure при необходимости изменить директорию для MacPorts:

# cd /opt/mports/trunk/base # ./configure --enable-readline # sudo make && sudo make install && make distclean

— (Необязательно) Настройте MacPorts использование информации о порте из Subversion

Этот шаг полезен, если вы хотите сделать разработку порта. Откройте:

# sudo vim /opt/local/etc/macports/sources.conf

Последняя строка, которая должна выглядеть следующим образом:
rsync://rsync.macports.org/release/tarballs/ports.tar [default]

Измените его на:
file:///opt/mports/trunk/dports [default]

Теперь MacPorts будет искать Portfile в рабочей копии и использовать Subversion вместо Rsync чтобы обновить дерево портов.

В зависимости от вашей оболочки и какие конфигурационные файлы уже существуют, программа установки может использовать .profile, .bash_login, .bash_profile, .tcshrc, or .cshrc.

Сценарий postflight автоматически устанавливает переменную PATH и в возможно соответствующих путях и отображает переменные в соответствии с правилами, описанными ниже. Если текущий файл конфигурации оболочки существует во время установки он будет переименован в «mpsaved_$timestamp». Эта установка MacPorts от исходного кода должно изменить свое окружение вручную, используя правила в качестве ориентира.

Требуется: переменная PATH

# export PATH=/opt/local/bin:/opt/local/sbin:$PATH

Дополнительно: переменная MANPATH

Если до MacPorts установка переменная MANPATH существует в текущем .profile который содержит ни значение $/share/man, ни пустые значения, сценарий postflight устанавливает переменную MANPATH, как показано ниже. В противном случае, переменная MANPATH опущено.

# export MANPATH=/opt/local/share/man:$MANPATH

Вот несколько примеров из путей, которые содержат пустые значения:
/usr/share/man:
:/usr/share/man
/usr/share/man::/usr/X11R6/man

Дополнительно: переменная DISPLAY

При установке на версии Mac OS X ранее, чем 10.5 (Leopard), и, если файл конфигурации оболочки существует на момент установки MacPorts без переменной DISPLAY, сценарий postflight устанавливает переменную DISPLAY, как показано ниже. Переменная DISPLAY всегда пропускается на Mac OS X 10.5 или выше.

# export DISPLAY=:0.0

Проверка конфигурационных файлов.

Чтобы убедиться, что файл, содержащий переменные MacPorts действует, тип env в терминале для проверки текущих параметров среды после того как файл был создан. Пример выходных данных для команды env показано ниже:

MANPATH=/opt/local/man:/opt/local/man:
TERM_PROGRAM=Apple_Terminal
SHELL=/bin/bash
TERM=xterm-256color
CLICOLOR=1
TMPDIR=/var/folders/9s/_8tkgh_x58b4r9fgbll6z3sm0000gn/T/
Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.Qdwv2GyRJq/Render
TERM_PROGRAM_VERSION=343
TERM_SESSION_ID=99F29E02-D855-433C-9B02-E11106252DBE
USER=captain
ENV=/Users/captain/.bashrc
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.qqSEEEVGtU/Listeners
__CF_USER_TEXT_ENCODING=0x1F5:0x7:0x31
LSCOLORS=Gxfxcxdxbxegedabagacad
PATH=/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin
PWD=/Users/captain
XPC_FLAGS=0x0
XPC_SERVICE_NAME=0
SHLVL=1
HOME=/Users/captain
LOGNAME=captain
LC_CTYPE=UTF-8
DISPLAY=/private/tmp/com.apple.launchd.DHKGSlD7K0/org.macosforge.xquartz:0
_=/usr/bin/env

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

MacPorts будет проверять переменные и определит редактор по умолчанию.

Например, чтобы использовать редактор нано, добавьте в ваш bash config:

# export EDITOR=/usr/bin/nano

Чтобы использовать удобный редактор GUI TextWrangler (требуется установка), добавьте эту строку:

# export EDITOR=/usr/bin/edit

Чтобы сохранить текстовый command-line редактор по умолчанию при использовании графического редактора с Portfile, то нужно добавить следующее:

# export EDITOR=/usr/bin/vi # export MP_EDITOR=/usr/bin/edit

Удаление MacPorts

Чтобы удалить все оставшиеся следы MacPorts, выполните следующую команду в терминале. Если вы изменили префикс, applications_dir или frameworks_dir от значения по умолчанию, то замените /opt/local, замените /Applications/MacPorts с applications_dir, и / или добавьте свой frameworks_dir в список, соответственно.

# sudo rm -rf \ /opt/local \ /Applications/DarwinPorts \ /Applications/MacPorts \ /Library/LaunchDaemons/org.macports.* \ /Library/Receipts/DarwinPorts*.pkg \ /Library/Receipts/MacPorts*.pkg \ /Library/StartupItems/DarwinPortsStartup \ /Library/Tcl/darwinports1.0 \ /Library/Tcl/macports1.0 \ ~/.macports

На этом «Установка MacPorts на MacOS» пока что все, надеюсь была полезная статья.

Установка MacPorts под Mac OS X

MacPorts — система пакетов, при помощи которых довольно просто через терминал загружается, компилируется, устанавливается свободное программное обеспечение, различные библиотеки, а также обновляется MacOS X и Darwin.

Для выполнения всех вышеперечисленных действий, при наличии MacPorts, достаточно в окне терминала ввести

port install packagename

где »packagename» — имя устанавливаемого пакета.

Но для того, чтобы все так же красиво работало и у вас, необходимо этот самый MacPorts установить.

Не смотря на подробнейшую инструкцию, я все же столкнулась с некоторыми сложностями в установке данного программного продукта, что и подтолкнуло меня к обобщению прочитанных статей.

Если же вы собираетесь ставить MacPorts из исходников, то эта статья не для вас. Читайте Installing MacPorts.

XCode

Как не удивительно, но для начала вам необходимо будет скачать установочный пакет вовсе не с названием MacPorts, а XCode, без которого MacPorts просто-напросто не установится.

Если у вас новопоставленная Mac OS X, тогда достаточно будет:

* скачать соответствующий вашей версии операционной системы установочный пакет XCode (для загрузки необходимо бесплатно зарегистрироваться в Apple Developer Connection)
* запустить установку Xcode Tools и установить данное приложение, используя все настройки по умолчанию

X11

В этом и в последующих пунктах советую быть особенно внимательными, т.к. именно при неверной настройке «иксов» у меня все и слетело.

* запускаем из »/Applications/Utilities/X11.app» (»/Программы/Служебные программы/X11.app»)
* в меню »Программы» выбираем пункт »Настроить»
* двойной клик на пункте »Terminal», где меняем »xterm» на »xterm -ls»

MacPorts

* качаем последнюю версию MacPorts-1.x.x.dmg
* двойной щелчек по MacPorts-1.x.x.pkg
* устанавливаем с настройками по умолчанию

Shell

Запускаем терминал. Вводим в нем

и ищем в полученном результате файл под названием ».profile»

Если таковой отсутствует, тогда попробуем его создать:

У нас в терминале появилось окно редактирования файла. Записываем в него строку

Внимание: если у вас Mac OS X 10.4 Tiger или более ранняя версия, тогда в файл следует также добавить следующую строку (ни в коем случае не добавляйте ее, если у вас Mac OS X 10.5 Leopard или выше):

Нажимаем ctrl+O для сохранения файла.

Если такой файл у вас уже есть, тогда проделываем все то же самое, добавляя в файл выше описанные строки.

Что бы все изменения вошли в силу, необходимо перезапустить терминал.

Если все прошло успешно, тогда при вводе в терминале команды

у вас должно появится примерно следующее:

MacPorts 1.600
Entering interactive mode. («help» for help, «quit» to quit)
[Users/username] >

Первое применение

Попробуем обновить MacPorts. Для этого запустим терминал и введем в нем

sudo port selfupdate

или, для вывода дополнительной информации в процессе выполнения допишите -d

sudo port -d selfupdate

Следует заметить, что данная команда выполняется не очень быстро. Поэтому наберитесь терпения и не нажимайте лишних кнопок.

DEBUG: Rebuilding the MacPorts base system if needed.
DEBUG: Synchronizing ports tree(s)
Synchronizing local ports tree from rsync://rsync.macports.org/
release/ports/
DEBUG: /usr/bin/rsync -rtzv —delete-after
rsync://rsync.macports.org/release/ports/
/opt/local/var/macports/sources/rsync.macports.org/release/ports
receiving file list . done
.
Downloaded MacPorts base version 1.600

The MacPorts installation is not outdated and so was not updated
DEBUG: Setting ownership to root
selfupdate done!

Надеюсь у вас все прошло гладко и, что самое главное, все работает.

Установка PuTTY на Mac OS X

Многие привыкли к использованию PuTTY, но не могут найти достойную OS X альтернативу. А при попытке задать вопрос на тематическом форуме, на них обрушивается град ухмылок в духе: «используй openssh, PuTTY не нужна». Но, как правило, эти люди замолкают из-за недостатка аргументов, когда пользователь начинает перечислять им те возможности, которые он хочет иметь при использовании Telnet/COM-порт/SSH клиента под Mac OS X.

И всё-таки, есть ли PuTTY под Мак?

PuTTY на Mac OS X

И да и нет, сложно дать однозначный ответ.

Исходный код PuTTY успешно компилируется в той его части, которая относится к утилитам командной строки, но вот разработка графического интерфейса PuTTY, нативного для OS X, к сожалению ещё не завершена.

Но есть и хорошие новости. Учитывая родственность Mac OS X и UNIX, умельцами сразу была создана система по портированию программ из мира Open Source на компьютеры от Apple. Сегодня существует уже не одна, а несколько таких систем — это MacPorts (ранее DarwinPorts), Fink, Homebrew. Они имеют в своих репозиториях десятки тысяч различных «портов», файлов описания процесса компиляции и установки программ.

Установка X11/GTK+ версии PuTTY на Mac OS X при помощи менеджера пакетов Homebrew

Установка X11/GTK+ версии PuTTY на Mac OS X при помощи Homebrew — именно об этом и пойдёт речь в данной статье. Изначально мы хотели рассказать про MacPorts, но впоследствии перешли на Homebrew, как самую живую и активно развивающуюся систему на данный момент, лёгкую (во всех смыслах), дружественную к пользователю и к комьюнити разработчиков (в чём мы сами убедились, в кратчайшие сроки разобравшись с новым для нас языком Ruby, и без труда написав небольшое обновление для поддержки GTK+ в putty.rb).

Статья рассчитана прежде всего на пользователей, впервые столкнувшихся на Маке с такими понятиями, как порты, X11, GTK+, и сразу отметим, что установка чрезвычайно проста.

Следующие шаги были протестированы на Mountain Lion (OS X 10.8.2), но должны работать и на других версиях.

1. Установка Xcode

Xcode — пакет программ от Apple, содержащий компиляторы, библиотеки, дополнительные инструменты, требуемые для разработки и сборки приложений под Mac.

На версиях OS X начиная с 10.7 Lion, достаточно поставить «Command Line Tools for Xcode» с сайта Apple Developer.

Для более ранних версий придётся скачать Xcode из Mac App Store (также доступен на установочном диске OS X), и затем через «Preferences» → «Downloads», доинсталлировать «Command Line Tools».

После установки полной версии Xcode, нужно не забыть принять лицензионное соглашение, выполнив команду:

sudo xcodebuild -license

2. Установка XQuartz

XQuartz — это реализация сервера X.Org X Window System (X11) для Mac OS X, пришедшая на замену X11.app.

Шаг опциональный в целом, но для запуска GUI-версии PuTTY, которая в данном случае на GTK+, нам потребуется X сервер. Установить последнюю версию можно с сайта XQuartz. После установки, XQuartz попросит сделать релогин.

3. Установка Homebrew

Установка Homebrew (или просто brew) выполняется следующей командой:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"

По завершении необходимо выполнить проверку системы на корректность установки:

brew doctor

Одна из особенностей brew, это то что вам не приходится на каждое действие инициировать права администратора (командой sudo) и вводить каждый раз пароль.

4. Установка PuTTY

Проверим есть ли в Homebrew формула с названием «putty»:

brew search putty putty

Проверим опции установки для пакета «putty»:

brew options putty --with-gtk+ Build with gtk+ support

Установим «putty» с поддержкой GTK+:

brew install putty --with-gtk+

Без последнего ключа установка займёт не более 15 секунд, но будут установлены только command-line утилиты. А вот для графического интерфейса PuTTY, требуется установить массу зависимостей, и компиляция таких пакетов как GLib/GTK+/Pango/Cairo, может занять от получаса и более.

Чтобы было не так скучно ждать, предлагаем открыть вторую вкладку терминала и узнать рецепт приготовления домашнего пива:

brew beer

И если всё прошло удачно, то следующая команда наконец-то запустит PuTTY на Mac OS X:

putty

5. Настройка GTK

SSH PuTTY под OS X настройка GTK+

Как и следовало ожидать, на чистом GTK программы выглядят «прекрасно», но попробуем с эти что-нибудь сделать.

К сожалению в репозиториях нет готового решения на тему «Lion Theme for GTK+». Поэтому приходится гуглить в поисках самодельных тем, одна из них была найдена на deviantART:

PuTTY и Mac OS X Lion Theme для GTK+

Создадим директорию для хранения пользовательских GTK-тем:

mkdir ~/.themes/ && cd $_

Скачиваем и разархивируем тему:

curl https://putty.org.ru/files/LionGTKTheme.tar.gz | tar -zx

В домашней директории создадим текстовый файл с настройками GTK+:

nano ~/.gtkrc-2.0

И впишем в него путь до «gtkrc» нашей темы (вместо Vasja вписать ваше имя пользователя), и параметры шрифта:

include "/Users/Vasja/.themes/LionGTKTheme/gtk-2.0/gtkrc" style "user-font" < font_name = "Lucida Grande 9" >widget_class "*" style "user-font" gtk-font-name="Lucida Grande 9"

6. PuTTY.app

Последнее что осталось сделать — это поместить иконку PuTTY в папку «Программы».

Можем создать простую символическую ссылку на файл:

ln -s /usr/local/bin/putty /Applications/PuTTY

Но такой вариант имеет ряд недостатков — нельзя поместить программу в Dock, нельзя поменять иконку, и каждый раз при запуске будет вплывать окно терминала.

Поэтому создадим AppleScript-апплет при помощи Automator.app.

Создание Application.app для Homebrew/MacPorts на примере PuTTY

Запускаем программу, выбираем: «Тип документа» → «Программа»; далее в «Действия» → «Запустить shell-скрипт»; в поле ввода прописываем путь до исполняемого файла → «/usr/local/bin/putty»; сохраняем как «PuTTY.app», формат файла «Программа», в папку «Программы».

Далее находим подходящую иконку в формате ICNS (например здесь), и заменяем ею стандартную по адресу: «/Applications/PuTTY.app/Contents/Resources/AutomatorApplet.icns» .

Иконку из головного скриншота можно установить следующей командой:

cd /Applications/PuTTY.app/Contents/Resources/
curl -O https://putty.org.ru/files/AutomatorApplet.icns

(Если старая иконка уже попала в кэш Finder, то изменения вступят в силу только после релогина.)

Работаем

Напоследок стоит отметить несколько моментов.

Главное меню PuTTY в запущенном сеансе вызывается сочетанием COMMAND + правая кнопка мыши кликом по области терминала.

Терминал PuTTY SSH под Mac OS X и lolcat output

Список всех файлов установленного пакета можно посмотреть командой list:

brew list putty /usr/local/Cellar/putty/0.62/bin/puttytel /usr/local/Cellar/putty/0.62/bin/puttygen /usr/local/Cellar/putty/0.62/bin/putty /usr/local/Cellar/putty/0.62/bin/pterm /usr/local/Cellar/putty/0.62/bin/psftp /usr/local/Cellar/putty/0.62/bin/pscp /usr/local/Cellar/putty/0.62/bin/plink /usr/local/Cellar/putty/0.62/share/man/ (7 files)

(Полный путь до файлов вводить не требуется, так как создаются ссылки в /usr/local/bin/.)

Обновление пакетов Homebrew осуществляется следующими командами:

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *