Обновить
24.37

macOS *

Настольная ОС компании Apple

Сначала показывать
Порог рейтинга
Уровень сложности

Как мы добавляли поддержку Apple Silicon в анализатор (arm64)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров904

С выходом PVS-Studio 7.34 стали доступны нативные сборки анализатора для macOS на архитектуре Apple Silicon (ARM). В этой заметке мы хотели бы подробнее рассказать о проделанной работе, а также предложить советы по портированию кроссплатформенных инструментов на новую перспективную архитектуру.

Читать далее

Shortcuts на Mac или как сократить Dock

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.2K

Всем привет!

Меня зовут Ваня и это моя первая статья на Хабре (надеюсь, что и не последняя).

Содержание за 2 секунды: сокращаем Dock при помощи Shortcuts.

Отправиться в путешествие по Shortcuts

iOS-разработчики игнорируют важную системную фичу, и это ломает их приложения

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.5K

Как минимум одна из фич iOS реализована действительно хорошо — это системное резервное копирование, и всё, что связано с автоматическим переносом данных при переезде с одного iPhone на другой.

Однако в случае с некоторыми iOS-приложениями старания Apple внезапно разбиваются о небрежность их разработчиков. Именно с этим я недавно столкнулся, выполнив перенос данных со своего старого iPhone на новый, и много где результаты оказались довольно печальными. Полностью упоролось, например, приложение Тинькофф Банка.

И тут возникает закономерный вопрос — почему так получается, что с этим делать?

Читать полностью

Todo-лист на максималках: разбираем архитектуру крупного приложения

Уровень сложностиСложный
Время на прочтение31 мин
Количество просмотров9K

В этой статье я покажу, как устроена многослойная архитектура крупного реактивного web-приложения, и особенности его запуска под Electron. Материал будет полезен, если вы планируете начать свою разработку, хотите попробовать себя в роли архитектора, вас не пугает Shared Workers, Service Workers или, в конце концов, вы хотите это попробовать или разобраться.

Читать далее

5 способов установить и нативно использовать ChatGPT на компьютерах Mac

Время на прочтение7 мин
Количество просмотров18K

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

Читать далее

Зачем нужна нотаризация приложений Apple?

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров1.2K

Подписание и «нотариальное заверение» (в дальнейшем мы используем устоявшийся в сообществе термин нотаризация — прим. ред.) приложений и другого исполняемого кода — тема довольно спорная. За последние годы Apple постепенно вводила всё более строгие правила и теперь требует, чтобы разработчики заверяли свои приложения и код, распространяемые даже вне App Store. В этой статье мы попытаемся объяснить, почему это необходимо и как это усиливает безопасность Mac.

В идеале всем хочется быть уверенными, что любой код, который запускается на нашем Mac, а в частности приложения, — это именно то, что создал разработчик, без каких‑либо изменений. Кроме того, в случае обнаружения вредоносного кода macOS может оперативно защитить нас, отказав в его запуске.

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

Читать далее

Зачем я написал ещё одну утилиту мониторинга CPU для Мака

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3.7K

Привет, чат. Хочу во-первых рассказать вам историю разочарования в довольно известной утилите мониторинга потребления энергии и загрузки CPU для macOS — MX Power Gadget. А во-вторых, поделиться очень простой заменой, которую я собрал за пару вечеров — pgauge.

Читать далее

[САТИРА] Ох, блин, во что ж ты вляпался в этот раз?

Время на прочтение5 мин
Количество просмотров2.6K

Перевод очень неоднозначного поста о популярном Гитхаб репозитории, или:

Уморительный рассказ о том, как ленивое воскресенье, лагучий браузер и стремление познать Раст, случайно произвели привлекательный графический монитор системы.

Читать далее

Управление памятью в ассемблере для Apple Silicon

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров3.2K

В статье мы познакомимся с языком ассемблера для Apple Silicon (ARM64). Рассмотрим основные регистры, запись данных из регистров в память и обратно. Затронем также и базовые навыки работы с LLDB.

Читать далее

macOS сильно переоценена

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров32K

Добрый день! Сегодня я хочу обсудить с вами весьма противоречивую для меня операционную систему — macOS. Вокруг неё ходит немало легенд, слухов и мифов, которые я постараюсь сегодня развеять. Усаживайтесь поудобнее — статья будет интересна как опытным маководам, так и тем, кто никогда не видел эту операционную систему вживую.

Окунуться в мир macOS

Как сделать React Server Components в Electron с помощью Next.js и без открытых портов

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1.7K

Статья про то как заставить работать React Server Components внутри Electron приложения с помощью Next.js при этом не запуская локальный сервер и не открывая порты. С возможностью публикации стандартными инструментами. А также исследование зачем все это надо.

Читать далее

Макросы в Swift: Практическое руководство по использованию

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров2.6K

Недавно я столкнулся с задачей, которая требовала написания большого объема шаблонного кода. Вспомнив, что в Swift 5.9 появились макросы, созданные специально для генерации шаблонного кода, я решил попробовать их в действии. Ранее я работал с макросами в Objective-C и C++, поэтому ожидал увидеть нечто похожее. Однако, поискав информацию, я понял, что макросы в Swift — это совсем другое, не похожее на то, что я встречал в других языках.

В отличие от макросов в C++ или Objective-C, в Swift нужно писать гораздо больше кода, соблюдая при этом строгие правила оформления. Иначе можно столкнуться с загадочными ошибками компиляции, решение которых не всегда очевидно. Дополнительные трудности возникают из-за того, что многие статьи и видео просто повторяют официальную документацию, не объясняя понятным языком, как именно использовать макросы. Часто вместо этого начинаются сложные рассуждения о структуре AST (Abstract Syntax Tree) или приводятся примеры кода, которые демонстрируют результат работы макроса, но не показывают, как его создать и отладить.

Именно из-за таких трудностей я решил написать эту статью. Её цель — максимально просто, без углубления в теорию, объяснить, как можно уже сегодня начать использовать макросы в Swift. Если вам захочется изучить эту тему подробнее, вы всегда сможете обратиться к официальной документации или материалам с WWDC, где этот вопрос разобран более детально. А если вам понравится моя подача, пишите в комментариях — я постараюсь объяснить сложные моменты в отдельных статьях.

Читать далее

Автоматизируем подключение Сisco AnyConnect на Mac OS

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров8.6K

Так сложилось, что у меня на работе используется Cisco AnyConnect Secure Mobility Client. Периодически приходится подключаться к рабочему VPN используя эту программу. Мне, как человеку постоянно работающему в терминале, захотелось иметь под рукой консольную утилиту, которая сама введет пароль и TOTP, после чего инициирует подключение.

Как это сделать?

Ближайшие события

Он вам не «MacOS»

Уровень сложностиСложный
Время на прочтение12 мин
Количество просмотров18K

Рассказываю и показываю что можно сотворить с iMac без прав администратора и установки стандартных средств разработки.

Погрузиться

arm linux на apple silicon mac

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров2.2K

Я следовал инструкциям статьи на японском.

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

Читать далее

Быстрый поиск по разной документации

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров3.8K

Недавно я задался вопросом, могу ли я оптимизировать процесс поиска чего-либо в документации любого языка/библиотеки/фреймворка. Прыгать с сайта на сайт – не самая лучшая идея, ибо интерфейсы документацией отличаются, а я хотел унификации.

Сначала мне пришла мысль взглянуть на уже существующие решения, среди которых есть мною любимый Zeal, однако, он доступен только для Windows и Linux, я же крепко сижу в заложниках на MacOS из-за специфики работы и удобства.

На сайте Zeal предлагают перейти на сайт Dash, который по сути является прародителем Zeal, однако, он платный и за него невозможно заплатить в пределах РФ, поэтому я продолжил дальше искать аналоги.

Среди альтернатив также есть DevDocs, который может работать оффлайн в браузере (благодаря PWA), однако, я заметил, что все время держать открытой лишнюю вкладку для поиска в доках было не лучшей идеей (ибо вкладку все равно нужно было бы искать, среди тонны вкладок со StackOverflow и прочим).

Решение с быстрым поиском

В Firefox и Google Chrome есть возможность добавить собственную поисковую систему (или же поиск по сайту), чем собственно я и воспользовался. При поиске в devdocs все GET-запросы уходят по урлу:

Читать далее

Эти айфоны ещё будут жить: пишем и деплоим свои приложения из XCode на старые iPhone

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.8K
image

Согласно политике Apple, компания чётко разграничивает время жизни тех или иных версий iOS. Обычно, уже через 3-4 года определенная версия iOS считается устаревшей и публиковать новые версии приложений с её поддержкой больше нельзя. Однако в ходу всё ещё «старые», но по настоящему трушные и любимые многими «пятёрки», «четвёрки», а среди коллекционеров — и «тройки»! Способ, о котором я расскажу в статье, раскопали ещё «олды», однако он позволяет запускать и отлаживать «хоумбрю» приложения на старых айфонах, потенциально принося им новую жизнь с кастомными приложениями! Интересно? Тогда добро пожаловать под кат!
Читать дальше →

Два года ждали: новый релиз «FreeBSD для Mac» — операционной системы ravynOS

Время на прочтение3 мин
Количество просмотров5K

Кто-то слышал об этом проекте, кто-то нет, но это весьма интересная разработка. Команда ravynOS создаёт операционную систему на базе FreeBSD, стараясь обеспечить совместимость проекта с приложениями для macOS. Оболочка при этом также имеет очень сильную схожесть с интерфейсом macOS. Наработки проекта распространяются под лицензией BSD. Оценить ОС можно, установив загрузочный образ ravynOS 0.5 — он доступен здесь. Подробности — под катом.

Читать далее

Есть ли жизнь на arm'е?

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров20K

Заметка написана с целью рассказать о переходе от macOS к Fedora Asahi Remix, встреченных проблемах, попытке их решения и умозаключениях, а не ради холивара в поисках идеальной ОС. Тем более, спорить тут не о чем. Есть плюсы, минусы, предпочтения и обстоятельства, остальное от лукавого.

Читать далее

Разработка вредоносного ПО для MacOS: инъекция и закрепление шелл-кода на конечном устройстве

Уровень сложностиСложный
Время на прочтение20 мин
Количество просмотров5.4K

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

В этой статье мы:

- Изучим методики инъецирования кода и то, как он применяется в вредоносном ПО;

- Затронем способы обеспечения постоянства хранения;

- В конце мы покажем простой процесс инъецирования шелл-кода и его постоянного хранения. 

Читать далее

Вклад авторов