Ты наверное замечал, что при загрузке файлов, например в Chrome, в Finder рядом с файлом показывается некий круговой индикатор загрузки.
Для этого используется специальный атрибут файла com.apple.progress.fractionCompleted
, а также есть небольшая (но неочевидная) хитрость: нужно выставить дату создания файла равной 1984-01-24 08:00:00 +0000
а соотвественно, чтобы скрыть индикатор вернуть файлу актуальную дату и убрать атрибут.
Читать далее →
Возникла специфическая задача: добавить программно папку в раздел «Избранное» на боковой панели Finder в macOS. Эта и другая подобная информация хранится в *.sfl файлах, в ~/Library/Application Support/com.apple.sharedfilelist/
. Работать с ними напрямую не получится, для этого существует системная утилита sfltool.
Читать далее →
Некоторое время язык Swift был доступен только для операционной системы OS X, в составе среды разработки Xcode, но недавно на официальном сайте стали доступны сборки и для последних версий Ubuntu. Практической пользы от такого шага не очень много: большинство библиотек так и не были портированы, и разрабатывать для iOS на альтернативных платформах всё еще невозможно. Хотя существует призрачная возможность писать серверный код на том же языке, что и код приложения, но пока инструментарий развит слабо, использование языка от Apple на Ubuntu будет представлять скорее академический интерес. С другой стороны, доступного функционала хватит, чтобы изучить основы языка и писать несложные консольные утилиты, не приобретая дорогостоящие устройства, что может оказаться для многих плюсом.
Читать далее →
После обновления в Xсode 8.3 исчезло окно управления provisioning profile проекта. Им было удобно пользоваться для принудительного удаления и скачивания профайлов. Например, когда добавляешь на Developer Portal новые устройства для ad-hoc установки, профайл в Xcode обновляется далеко не сразу и не всегда. Чтобы решить эту проблему, можно было зайти в настройки аккаунта, открыть окно управления профайлами и сертификатами, нажать правой кнопкой мыши на профайле, выбрать «Move to trash», после чего заново скачивался новый.
Читать далее →
SwiftLint — это статический анализатор Swift-кода, разработанный компанией Realm, который проверяет его на соответствие стилю и соглашениям принятым в сообществе разработчиков. Главным образом он базируется на Swift style guide от Github. Почему это важно? Наличие соглашений и стандартов всегда лучше их отсутствия: код написанный в едином стиле, проще читать при командной разработке, а также косвенно анализаторы кода способны улучшить и стабильность приложения, так как распознают заведомо плохие практики. Начинающим изучать Swift разбор ошибок и предупреждений анализатора поможет разобраться в особенностях языка, а также избежать использования устаревших конструкций, которые могли быть скопированы с сайтов вроде Stack Overflow.
Читать далее →
CocoaPods — менеджер пакетов, сделанный по образу и подобию RubyGems, позволяющий легко скачивать и подключать сторонние библиотеки к Swift и Objective-C проектам.
Читать далее →
Примечание от 28.05.2017: Начиная с версии Ubuntu 16.04 проблему с тачпадом наконец-то починили, но тем не менее этот пост всё ещё остаётся актуальным для многих дистрибутивов.
Уже почти год моим основным компьютером является ноутбук Asus X550LN. За это время я неоднократно менял на нем операционные системы, даже пытался жить на Windows, но все время возвращался к излюбленным мной Debian-based дистрибутивам Linux. К сожалению, в 2015 году проблемы с поддержкой аппаратного обеспечения под альтернативными ОС никак не заканчиваются. Так, практически на всех испробованных мной дистрибутивах, не работает тачпад. Проблема проявляется следующим образом: при касании тачпада, в зависимости от дистрибутива, либо не происходит ничего, либо курсор двигается, но невозможно совершить клик, либо же система намертво зависает.
Читать далее →
Сегодня передо мной встала довольно простая, но интересная задача: восстановить несколько файлов в репозитории Git, которые были удалены некоторое время назад в разных коммитах. Задача простая, потому что решение легко найти в соотвествующих ответах на Stack Overflow. Мне лишь осталось слегка адаптировать приведенные примеры команд для своих нужд.
Читать далее →
Эта статья была впервые опубликована в журнале "Хакер", здесь публикуется исходная версия, до отправки в редакцию. Вся информация предоставлена исключительно в образовательных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.
Счет встроенных модулей в Metasploit перешел на тысячи, но, рано или поздно, любой, кто плотно работает с фреймворком, сталкивается с необходимостью расширить его функционал собственными эксплойтами и вспомогательными модулями. Сегодня мы рассмотрим все необходимые аспекты создания модуля с нуля, а также особенности языка Ruby, которые нужно учитывать при написании.
Читать далее →
Пройдя в очередной зал, невольно вздрагиваю. Посреди помещения лежит манекен, придавленный огромной, больше моего роста, чёрной фигурой в виде буквы L. Со входа композиция выглядит настолько реалистично, что кажется будто придавило очередного посетителя, вошедшего в зал минутой раньше. В лакированном покрытии фигуры видно отражения ярких картин на стенах и моё озадаченное лицо.
Жизнь действительно во многом похожа на тетрис. Каждый день в нас летят десятки обстоятельств и сотни событий, которые непременно должны быть состыкованы и скомпенсированы. Стоит на секунду замешкаться, как тут же оказываешься один на один с огромной блестящей буквой L, которая, нарушая привычный уклад, сменяет спокойную размеренность будней огромным нагромождением плохо состыкованных фигур. Какое-то время ты ещё пытаешься судорожно раскидывать фигуры по игровому полю. Иногда это даже получается, но чаще просто видишь, как тебя заваливает, и расписавшись в собственном бессилии, начинаешь новую партию. Этот придавленный манекен чётко фиксирует душевное состояние между падением последней фигуры с непременным «game over» и следующей игрой. Мастерство игрока определяется тем, сколько раз он смог начать заново, но всех ждёт один конец.
В галерею современных искусств «Эрарта» мы с женой зашли в один из последних дней поездки в Санкт-Петербург. За плечами были дни восторженных впечатлений от Петергофа, Зимнего дворца и других обязательных к посещению мест культурной столицы.
Читать далее →