Expertus metuit
Sergey Stolyarov | 2014-06-23 в 23:50

В адиуме хотелось отключить html в отправляемых сообщениях, соответствующий тикет в трекере адиума был благополучно похоронен, поэтому соорудил быстрый костыль в виде патча внизу. Он делает простую вещь: отключает форматирование размера текста в исходящих xmpp-сообщениях.

Может быть позднее сделаю покрасивее, но пока и так сойдёт. После изменений скомпилять по инструкции с офсайта и установить вместо оригинального. После обновления версии процесс повторить.

diff -r 7ccfc3c4195e Plugins/Purple Service/ESPurpleJabberAccount.m
--- a/Plugins/Purple Service/ESPurpleJabberAccount.m    Mon May 26 13:34:36 2014 +0200
+++ b/Plugins/Purple Service/ESPurpleJabberAccount.m    Mon Jun 23 23:50:02 2014 +0700
@@ -428,7 +428,7 @@
    if (!jabberHtmlEncoder) {
        jabberHtmlEncoder = [[AIHTMLDecoder alloc] init];
        [jabberHtmlEncoder setIncludesHeaders:NO];
-       [jabberHtmlEncoder setIncludesFontTags:YES];
+       [jabberHtmlEncoder setIncludesFontTags:NO];
        [jabberHtmlEncoder setClosesFontTags:YES];
        [jabberHtmlEncoder setIncludesStyleTags:YES];
        [jabberHtmlEncoder setIncludesColorTags:YES];

В XCode 7 выпилен opennsl, поэтому просто так собрать не получится. Можно поставить openssl через brew и дальше в конфиге xcconfigs/Base.xcconfig изменить строчку с флагами компиляции как-то так:

OTHER_CFLAGS = "$(CFLAGS)" -I/usr/local/Cellar/openssl/1.0.2h_1/include

Дальше в XCode меню: ProductSchemeEdit scheme поменять Build configuration на Release, затем собрать, итоговый билд (файл Adium.app) будет в каталоге типа ~/Library/Developer/Xcode/DerivedData/Adium-gvwbqjdtkfytqnfuyvumtjfzppsb/Build/Products/Release.

Или как альтернатива — поставить XCode 6 и собрать в нём, скачать можно по этой ссылке: http://developer.apple.com/devcenter/download.action?path=/Developer_Tools/Xcode_6.4/Xcode_6.4.dmg

Sergey Stolyarov | 2014-05-11 в 01:33

Задача: монтировать nfs-ресурсы в макоси.

В принципе, в макоси уже встроена поддержка nfs и соответствующие сетевые ресурсы можно монтировать через Finder (⌘K), однако чтобы это работало для обычного юзера, требуется некоторое шаманство на стороне linux-сервера.

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

На линукс-машине в /etc/exports прописываем что-то вроде:

/home/user/downloads 192.168.13.12(ro,sync,no_subtree_check,insecure)

Здесь адрес 192.168.13.12 — это айпишник макосной машины. После чего в Finder стандартным образом (через ⌘K или меню GoConnect to Server...) монтируем ресурс, адрес указываем в виде nfs://nfs-server.name/home/user/downloads.

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

Ещё одна вредная и очень трудноуловимая проблема связана с макосной интерпретаций кодирования «составных» букв в именах файлов, например, «й» или «ё», или «ü». Если имя файла (или вообще где-то в пути до файла встречается) содержит такую букву, то файл просто не откроется, причём с невразумительной ошибкой типа “The application can’t be found.” Я в детали не хочу вдаваться, можете сами погуглить по ключевым словам “mac os x nfc nfd unicode”.

Решение достаточно простое: нужно изменить опции монтирования nfs-ресурсов по умолчанию, для этого добавьте в файл /etc/nfs.conf такую строчку:

nfs.client.mount.options = nfc

Теперь можно монтировать через Finder и всё будет в порядке.

Ну и команда для всяких тестов, вдруг пригодится:

/sbin/mount_nfs -v 192.168.13.12:/home/user/downloads /Volumes/test
Sergey Stolyarov | 2014-02-15 в 12:48

Здесь описаны мои текущие настройки и дополнительные программы для расширения функциональности макоси на макбуке.

Обновлено 2015-06-13: теперь всё рассказывается про Yosemite.

Стандартная конфигурация лично мне не особо нравится, плюс выведенными в интерфейс крутилками также не всё можно настроить, поэтому пришлось гуглить и экспериментировать. Чтобы ничего не забылось, традиционно сливаю всё накопленное в один большой пост со скриншотами, который буду держать в актуальном состоянии. Всё описанное касается версии Mac OS X Yosemite (10.10) с английским интерфейсом.

Sergey Stolyarov | 2013-12-16 в 21:37

Как использовать curl для отладки HTTP, то есть для отправки на сервер HTTP-запросов. У меня потребности небольшие, поэтому здесь только конкретно нужные мне команды. Оформлено всё традиционно: описание задачи, решение, описание решения.

Отправить GET-запрос и показать ответ вместе с заголовками

curl -Gi http://google.com

Опция -G указывает использовать HTTP GET, опция -i — включить заголовки в вывод.

Sergey Stolyarov | 2013-11-18 в 13:45

Обновлено 2016-06-26: инструкция изменена для El Capitan

В стандартной конфигурации (речь дальше пойдёт про Mac OS 10.9 Mavericks и выше) при использовании ssh-ключей во встроенном ssh-клиенте парольная фраза запрашивается через макосный security-фреймворк (и стандартный диалог запроса пароля соответственно). После первого ввода пароля запускается ssh-agent и при дальнейших вызовах ssh или git c этим ключом пароль больше не запрашивается.

На мой взгляд, такая схема слишком небезопасная и нужно какое-то разумное ограниченное время жизни «запомненного» ключа в агенте, например, пара минут. Cделать это штатными средствами через диалоги/настройки невозможно, однако можно изменить файл запуска агента и выставить там нужное время жизни ключа в агенте. В результате практически при каждой попытке использовать любой ключ будет выскакивать диалог запроса парольной фразы.

Sergey Stolyarov | 2013-11-16 в 22:44

Homebrew — клёвая штука, однако она крайне небезопасная в обычном режиме установки — файлы ставятся в каталог /usr/local с правами текущего пользователя, поэтому, если в систему пролезет зловред, он легко сможет изменить очень важные для безопасности файлы в этом каталоге. В homebrew faq очень не советуют ставить brew через sudo, однако там неявно имеется в виду установка с правами суперюзера. Так действительно жить нельзя, поэтому пойдём другим путём — выделим для brew отдельного юзера и отдельную группу, и все операции по установке будем проводить через него.

Sergey Stolyarov | 2013-07-04 в 11:54

Когда-то я писал о личном опыте использования Sublime Text 2, а после выхода Sublime Text 3 решил начать новую статью, ориентированную именно на версию 3 с небольшим акцентом на миграцию с 2 на 3.

Sublime Text — это профессиональный программерский текстовый редактор. Он завоевал очень большую популярность благодаря проработанности интерфейса, кроссплатформенности, удобной и простой расширяемости плагинами. Мои впечатления со времён написания первой статьи не особо изменились, поэтому я второй раз их переписывать не буду.

←новые старые→
© 2006—2024 Sergey Stolyarov | Работает на pyrengine