Про Parall

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

Навіщо існує Parall

Понад десять років я стикався з обмеженнями macOS щодо запуску кількох екземплярів одного застосунку. Я створював для себе скриптові пакети застосунків, щоб обходити це, а потім зрозумів, що немає простого й відполірованого способу для звичайних користувачів створювати такі ярлики з поведінкою застосунків. Parall перетворює цей процес на перший інструмент такого типу, створений саме для ярликів застосунків з підтримкою кількох екземплярів.

Parall підтримує автоматичну ізоляцію даних для всіх застосунків на базі Chrome, Firefox і ToDesktop, а також для більшості інших застосунків без пісочниці через розширене перенаправлення HOME. Детальний і актуальний список сумісних застосунків доступний на сторінці сумісності.

Навіть коли режим кількох екземплярів не потрібен, Parall можна використовувати для створення ярлика сайту, застосунку, файлу, папки або команди з власною ідентичністю та конфігурацією запуску. Ярлики застосунків можуть додавати власні аргументи командного рядка або перевизначати змінні середовища, включно з HOME, щоб керувати поведінкою, вибирати профілі або перенаправляти шляхи даних. Перевизначення HOME створює контейнероподібну структуру й водночас зберігає важливі macOS-посилання для сумісності.

Визначайте власні змінні середовища, які застосовуються лише до цього ярлика. Це добре підходить для точної конфігурації, налагодження або проєктних середовищ. Parall також підтримує Arduino IDE, дозволяючи запускати окремі середовища розробки з різними toolchain, платами та бібліотеками поруч.

Для навчальних лабораторій і класів Parall може автоматично стирати перенаправлене сховище даних ярлика після його завершення. Це дає змогу легко починати кожну сесію з чистого стану для студентських експериментів без ручного прибирання.

Чому Parall важливий

Parall робить запуск кількох екземплярів одного macOS-застосунку простішим, ніж будь-коли. Кожен має власну Dock-іконку й конфігурацію, наче це окремі застосунки. Замість обхідних шляхів або складних скриптів Parall створює незалежні ярлики, які запускають кілька екземплярів застосунків і дозволяють одночасно використовувати кілька профілів або сесій.

Кожен ярлик залишається напряму повʼязаним з оригінальним пакетом застосунку. Тому коли оригінальний застосунок оновлюється, усі ярлики, створені в Parall, автоматично використовують оновлену версію. Їх не потрібно створювати заново або підтримувати вручну.

Parall містить розширене керування середовищем, що дає точний контроль над тим, як кожен екземпляр застосунку зберігає й розділяє дані. Це також відкриває складні робочі процеси, як-от запуск кількох окремих екземплярів Philips Hue Sync у macOS, щоб різні дисплеї мали власні LED-конфігурації без перетину екземплярів.

Хто створив Parall

Я Ihor July, і я розробляю Parall як фахівець з кібербезпеки та реверс-інженерії, зосереджений на безпечних і приватних macOS-інструментах. Я також розробник DockLock Pro, Mac-утиліти для керування поведінкою Dock на кількох дисплеях, App Trust Preview, локального Mac-застосунку для перевірки застосунків, який перетворює підпис, пісочницю, дозволи й внутрішні компоненти на зрозумілі звіти перед відкриттям застосунку, і LockLines, Mac-утиліти для створення, перегляду й копіювання текстових повідомлень, що вміщуються в macOS.

Parall написаний мною вручну. Це не код, нашвидкуруч зібраний за допомогою ШІ. Я сам пишу код застосунку, тестую кожну зміну й підтримую багаторазовий Objective-C-фреймворк, який використовую в усіх своїх застосунках. ШІ та онлайн-пошук я використовую лише як допомогу для дослідження помилок, крайових випадків, полірування текстів і перекладів. Код застосунку й тестування мої.

Застосунок нативно створений на C++ для продуктивності й працює в пісочниці для максимальної безпеки. Parall відображає роки досліджень і розробки, спрямованих на практичні, приватні рішення для користувачів macOS.

Про пакети ярликів

Ярлики, створені Parall, є окремими пакетами macOS-застосунків, які напряму виконують бінарний файл цільового застосунку. Ці пакети ярликів навмисно не ізольовані в пісочниці, бо мають запускати оригінальний застосунок напряму без додаткових шарів.

Кожен ярлик непідписаний, бо будь-яка зміна пакета застосунку видаляє його оригінальний підпис. macOS може показати повідомлення, що ярлик "намагається змінити інший застосунок", але це загальне системне сповіщення, викликане доступом, а не зміною. Parall не змінює жодних системних файлів або застосунків.

За задумом Parall створює лише пакети ярликів, які віддзеркалюють структуру й конфігурацію оригінального застосунку. Він ніколи не змінює, не інжектить і не записує в наявні застосунки або операційну систему, щоб ваш Mac залишався безпечним і незміненим.