Epiphany как замена Safari для веб-разработчика
Я занимаюсь веб-разработкой на Linux. Как правило это не та веб-разработка где нужно обеспечить совместимость со всеми версиями браузеров в 90% случаев, но под актуальные версии Chrome/Firefox/Safari тестировать сайты и веб-приложения обычно нужно. Сложнее всего приходится с Safari: он работает только под MacOS, что затрудняет тестирование в нем разработчикам, использующим другие ОС.
Я продолжительное время использую Epiphany (GNOME Web) как замену Safari для тестирования сайтов и веб-приложений. Это не идеальная замена, но это позволяет при отсутствии MacOS воспроизводить большинство ошибок на которые мне жалуются пользователи Safari. Хочу поделиться этим здесь, т.к. это не выглядит популярной темой.
Ниже подробности того почему это работает, в каких случаях такая замена может иметь смысл а в каких нет, и рассказ о том как я к этому пришел.
Браузерные движки
Для начала, думаю необходимо дать краткую вводную по существующим движкам (engine) на которых работают современные браузеры.
Браузеров сейчас очень много. Если считать все то наберется наверное больше сотни, и каждый год появляются новые. Но нужно понимать что все эти браузеры работают на одном из трех актуальных движков для отрисовки веба, доживших до наших дней (а подавляющее большинство на самом популярном из них). Вот эти движки:
- Blink (это в первую очередь Chromium, и его производные - Google Chrome, а теперь еще и Opera и Edge и вообще почти все современные браузеры)
- Gecko (Firefox)
- WebKit (Safari)
Так же заслуживают упоминания движки, которые на сегодняшний день можно назвать “мертвыми”:
Opera и Edge (являющийся наследником IE) имели собственные движки, но отказались от их развития, и начали делать новые версии на основе Chromium.
От браузерного движка зависит как рендерятся наши веб-страницы, и какая среда для исполнения JS-кода используется. Поэтому, на мой взгляд, троица Chrome/Firefox/Safari является основной для тестирования. Это браузеры с самой большой долей пользователей на каждом актуальном движке. Убедившись что сайт корректно работает в актуальных версиях этих браузеров можно рассчитывать на достаточно широкую совместимость со всеми остальными браузерами.
Например, чаще всего я не проверяю работу сайтов в каждом браузере, основанном на Blink. Я проверяю их в Google Chrome, и в большинстве случаев это означает что и в Opera, и в Edge все будет работать точно так же. Тем более браузеров на Chromium сейчас очень много, и проверить работу сайта в каждом уже практически невозможно.
Следуя такому принципу, имеет смысл поискать браузер работающий на WebKit, который смог бы заменить Safari при разработке.
Midori

- Движок:
WebKit1 - Сайт:
https://www.midori-browser.org2 - Wiki: https://ru.wikipedia.org/wiki/Midori_(браузер)
- Исходники: https://github.com/midori-browser/core3
Первым кандидатом на замену Safari был Midori. Я уже был знаком с ним по Elementary OS где он был установлен по умолчанию. Он упрощенно повторял интерфейс Safari, работал на WebKit, и (кажется) имел сборки и под Windows.
Я пользовался им какое-то время, тестируя в нем свои проекты под Safari. Справедливости ради, пользователей Safari у проектов над которыми я тогда работал было немного, так что требовался он мне не часто.
В мае 2021 года, когда я предложил своему коллеге на Windows установить Midori для проверки багрепорта с Safari, я заметил что сборка которая устанавливается с сайта уже работает на Chromium. Разработчики Midori тоже свичнулись на другой движок. Версии 7-8 работали на WebKit и их можно было использовать для тестов, все что нумеровалось как 0.* - 1.* было новыми версии на Chromium, и в качестве замены Safari больше не подходило.
Epiphany (GNOME Web)

- Движок: WebKit
- Сайт: https://apps.gnome.org/Epiphany
- Wiki: https://ru.wikipedia.org/wiki/GNOME_Web
- Исходники: https://github.com/GNOME/epiphany
Epiphany (GNOME Web) - это стандартный браузер GNOME, идущий “из коробки” во всех дистрибутивах Linux которые его используют. Он активно обновляется по сей день. На мой взгляд, это самый активно развивающийся браузер на WebKit после Safari. В пользу популярности говорит и то что официальный сайт WebKit предлагает скачать сборку Epiphany в качестве preview-версии движка.
Установить Epiphany можно из репозиториев вашего дистрибутива Linux, а так же с помощью Flathub и Snap.
Браузер обладает минималистичным интерфейсом. Он состоит из более-менее классической верхней панели с кнопками назад-вперед и адресной строкой. Количество настроек не велико, но все самое нужное присутствует. Есть история, менеджер паролей, панель закладок. Я не использую его на постоянной основе, но впечатления положительные.

Я начал пользоваться им после смены движка у Midori. Он хорошо подходит для тестирования совместимости сайтов с Safari. Вот что я в нем обычно проверяю:
- Не поехала ли верстка
- Все ли использованные свойства CSS поддерживаются
- Не сломались ли скрипты
- Если нужно посмотреть/продебажить что-то в devtools Safari
В большинстве случаев проверки сайта в Epiphany оказывается достаточно для того чтобы быть уверенным что и в Safari все будет работать. Для большей точности следует проверять версию WebKit на которой основана версия Epiphany, и сравнивать ее с версией WebKit в актуальном Safari.
А что на Windows?
Сборок Epiphany под Windows нет, но есть пара способов как можно запустить WebKit-браузер на Windows:
- Воспользоваться WSL для запуска Epiphany (вот пример инструкции)
- Использовать специальные сборки WebKit под Windows
В каких случаях это не работает
Но не во всех случаях тестирование в браузере с аналогичным движком можно считать полноценным. Следует помнить, что помимо ошибок совместимости HTML\CSS\JS кода между браузерными движками, существуют такие типы ошибок как:
- Особенности конкретного браузера
- Встроенные в браузер фичи, такие как автодополнения, менеджеры паролей, интеграции с различными сервисами
- Стилизация стандартных веб-компонентов
- Ошибки или различия в части взаимодействия браузера и ОС
- Сама ОС или ее компоненты
- Железо
Все это так же может приводить к тому что сайт не будет работать у конкретных пользователей. В этих случаях замена Safari на Epiphany работать не будет. Например, я сталкивался с ошибками воспроизведения звука в Safari, и тут мне Epiphany не помог - пришлось искать MacBook.
Для того чтобы воспроизвести такие ошибки, можно:
- Воспользоваться специальными сервисами. В 2018 году я использовал BrowserStack для тестирования веб-приложения в Safari. Там был бесплатный тариф (возможно это был триал) и я легко смог запустить виртуальные машины с MacOS и IOS для проверки. Они заметно тормозили, но свою задачу выполнили - я смог посмотреть как будут работать страницы на нужных мне версиях Safari.
- Запустить свою VM с нужной ОС и браузером. Правда, запуск VM c MacOS является довольно сложной задачей в связи с специфическими требованиями по железу и лицензированием. Не могу рекомендовать этот способ, но тем не менее он возможен.
- Найти устройство с нужной ОС и браузером. Это идеальное решение. Если нужно протестить что-то в Safari - хорошо иметь под рукой MacBook.
Еще ссылки по теме
- Gnome browser instead of Safari (Reddit)
- Any Webkit based browsers for Windows? (Reddit)
- How to load the latest webkit on Windows (Medium)
-
Midori теперь использует Chromium в качестве движка.UPD 30.12.25: Midori теперь использует Gecko в качестве движка. Интересно, совершат ли они полный круг, вернувшись когда-нибудь на WebKit… ↩ -
Новая домашняя страница браузера - https://astian.org/midori-browser/ ↩
-
Исходники обновленной версии на Gecko находятся здесь: https://github.com/goastian/midori-desktop ↩