Falkon: браузер на базе QtWebEngine¶
Falkon — это свободный веб-браузер с открытым исходным кодом, основанный на движке QtWebEngine (форк Chromium). Разрабатывается сообществом KDE и предназначен для работы в средах рабочего стола, использующих библиотеки Qt, в первую очередь KDE Plasma, а также для систем с ограниченными ресурсами.
¶История
Проект был основан в 2010 году под названием QupZilla. Его создатель, польский разработчик Давид Россат (David Rosca), ставил целью создать лёгкий и быстрый браузер, интегрирующийся с окружением KDE, но не требующий для работы его полной установки. Первая стабильная версия вышла в 2011 году. В 2017 году проект был переименован в Falkon (от немецкого «Falke» — сокол) и принят в состав официальных приложений KDE.
Переход на QtWebEngine произошёл в версии 2.0 (2014 год), что заменило использовавшийся ранее QtWebKit. Это позволило повысить совместимость с современными веб-стандартами, но увеличило размер дистрибутива и потребление памяти. Последний стабильный релиз на момент написания статьи — версия 24.12.0 (декабрь 2024 года).
¶Архитектура и движок
Falkon использует QtWebEngine — модуль библиотеки Qt, который, в свою очередь, базируется на Chromium (версия 122 в релизе 24.12). Это обеспечивает поддержку HTML5, CSS3, JavaScript (включая современные API), WebAssembly, WebGL и других технологий. Однако, в отличие от Chromium, Falkon не включает в себя встроенный компонент Flash Player, а также не поддерживает некоторые проприетарные расширения, такие как Widevine (для DRM-защищённого видео, например, Netflix).
Браузер написан на C++ с использованием фреймворка Qt. Благодаря этому он легко интегрируется с графическими оболочками на Qt (KDE, LXQt, Razor-qt) и использует стандартные диалоги Qt для открытия файлов, печати и настроек.
¶Функциональные возможности
Falkon предоставляет набор функций, типичных для современных браузеров, но с акцентом на простоту и настройку:
- Вкладки (табы) — с возможностью группировки, закрепления и восстановления закрытых вкладок.
- Менеджер загрузок — встроенный, с возможностью приостановки и возобновления.
- Менеджер паролей — хранит логины и пароли в зашифрованном виде (используется KDE Wallet или системный keyring).
- Блокировщик рекламы — встроенный, основанный на списках EasyList и других. Позволяет блокировать не только рекламу, но и трекеры.
- Режим инкогнито — не сохраняет историю, куки и данные форм.
- Расширения — поддерживаются дополнения, написанные на JavaScript и QML. Встроенный магазин расширений содержит несколько десятков плагинов (например, для проверки орфографии, скриншотов, RSS-ридер).
- Пользовательские жесты мыши — возможность назначить действия на движения мыши.
- Экспресс-панель — страница быстрого доступа с избранными сайтами, настраиваемая в виде сетки плиток.
- Веб-инспектор — инструменты разработчика (аналог Chrome DevTools), доступные через контекстное меню.
¶Интерфейс и настройка
Интерфейс Falkon выполнен в стиле Qt — минималистичный, с панелью вкладок, адресной строкой и строкой поиска. Панели инструментов можно настраивать: добавлять или удалять кнопки, менять их расположение. Тема оформления наследуется от системной темы Qt, что обеспечивает единообразный внешний вид с другими приложениями KDE.
Настройки разделены на несколько категорий: «Общие», «Вкладки», «Загрузки», «Конфиденциальность», «Расширения», «Сеть». Доступна тонкая настройка поведения браузера, включая управление куками, JavaScript, всплывающими окнами и политикой загрузки файлов.
¶Производительность и потребление ресурсов
Falkon позиционируется как лёгкий браузер. По сравнению с Chromium или Firefox, он потребляет меньше оперативной памяти и процессорного времени, особенно на слабых компьютерах (например, с 2 ГБ ОЗУ или одноядерным процессором). Однако из-за использования QtWebEngine (который является обёрткой над Chromium) разница в потреблении памяти не столь значительна, как при использовании QtWebKit. В тестах на открытие 10–15 вкладок Falkon потребляет около 300–500 МБ ОЗУ, в то время как Chromium — 500–800 МБ.
Скорость загрузки страниц сравнима с Chromium, так как движок один и тот же. Однако Falkon может быть медленнее при рендеринге сложных веб-приложений (например, Google Docs или Figma) из-за менее оптимизированной работы с GPU.
¶Применение
Falkon используется в следующих сценариях:
- Основной браузер в KDE Plasma — для пользователей, предпочитающих минимализм и интеграцию с окружением.
- Браузер на слабых устройствах — нетбуки, старые ПК, одноплатные компьютеры (Raspberry Pi).
- Встраиваемые системы — благодаря модульности Qt, Falkon может быть использован в качестве компонента для отображения веб-контента в специализированных приложениях (например, киоски, информационные панели).
- Тестирование веб-приложений — разработчики могут использовать Falkon для проверки совместимости с QtWebEngine.
¶Критика и ограничения
Основные недостатки Falkon:
- Меньший набор расширений — по сравнению с Chrome и Firefox, магазин дополнений Falkon содержит всего несколько десятков плагинов, и многие популярные расширения (например, uBlock Origin, LastPass) недоступны.
- Отсутствие поддержки некоторых веб-стандартов — из-за использования устаревшей версии Chromium (QtWebEngine часто отстаёт на несколько релизов) могут возникать проблемы с современными веб-приложениями (например, WebRTC, Service Workers, CSS Grid).
- Проблемы с DRM — невозможность просмотра контента на Netflix, Amazon Prime и других сервисах, использующих Widevine.
- Нестабильность — на некоторых дистрибутивах Linux Falkon может вылетать при работе с тяжёлыми сайтами или при открытии большого числа вкладок.
- Отсутствие синхронизации — нет встроенной синхронизации закладок, паролей и истории между устройствами (как в Chrome или Firefox Sync).
¶Распространение
Falkon доступен для операционных систем:
- Linux — входит в репозитории большинства дистрибутивов (Ubuntu, Fedora, openSUSE, Arch Linux, Debian). Также доступен в виде Flatpak и Snap.
- Windows — официальные сборки для Windows 7 и выше (64-бит). Распространяется через сайт KDE или Microsoft Store.
- macOS — неофициальные сборки, поддержка ограничена.
По данным OpenHub, проект имеет около 200 активных участников, а кодовая база насчитывает примерно 150 000 строк на C++.
¶Интересные факты
- Название «Falkon» было выбрано в результате голосования среди сообщества KDE в 2017 году. Оно отсылает к соколу — символу скорости и точности.
- Изначально браузер назывался QupZilla — комбинация Qt, «up» (вверх) и «zilla» (от Mozilla).
- Falkon является одним из немногих браузеров, которые поддерживают работу в среде рабочего стола LXQt (лёгкая версия Qt).
- В 2020 году разработчики объявили о прекращении поддержки Windows 7 и 8, но позже вернули её из-за просьб пользователей.
¶Источники
- Официальная документация KDE: «Falkon Browser»
- Репозиторий проекта на GitHub: KDE/falkon
- Статья «QupZilla becomes Falkon» на KDE Community Wiki (2017)
- Технический обзор QtWebEngine на Qt Documentation
- Сравнение браузеров на Linux: OpenBenchmarking.org (2023)
- Обсуждение на Reddit: r/kde — «Falkon vs Chromium» (2024)