Hacker News Digest

Тег: #qt

Постов: 3

SailfishOS: A Linux-based European alternative to dominant mobile OSes (sailfishos.org) 🔥 Горячее

Sailfish OS — независимая мобильная ОС с открытым исходным кодом, созданная финской компанией Jolla на основе MeeGo, которую разрабатывали Nokia и Intel с инвестициями около $1 млрд. После того как Nokia отказалась от MeeGo в пользу Windows Phone, команда основала Jolla и в 2013 году представила Sailfish OS. Ключевые версии: 2.0 (2015) с планшетом Jolla, 3.0 (2018) для корпоративного сектора и 4.0 (2021) с расширенными возможностями для экосистем. ОС работает на Linux, использует QML и Qt для интерфейса, поддерживает Android-приложения и совместима с Android-чипсетами.

Sailfish OS позиционируется как альтернатива для корпораций и правительств, ищущих независимую мобильную платформу без привязки к крупным технологическим компаниям. Разработчики подчеркивают, что ОС имеет полные права интеллектуальной собственности и товарные знаки. Поддерживается глобальным сообществом, а исходный код доступен для скачивания. Благодаря использованию Qt5 и Wayland, адаптация под новое оборудование значительно упрощается, что делает Sailfish привлекательным решением для производителей устройств.

by ForHackernews • 01 ноября 2025 г. в 22:05 • 282 points

ОригиналHN

#linux#qml#qt#sailfishos#jolla#android#wayland

Комментарии (116)

  • SailfishOS страдает от нехватки современного оборудования и поддержки, что делает его непрактичным для большинства пользователей.
  • Jolla не вернула деньги за неотгруженные планшеты, что вызвало негодование и отказ от поддержки.
  • Попытки запустить Sailfish на других устройствах ограничены отсутствием полной поддержки драйверов и невозможностью использовать Android-приложения без Google Play Services.
  • Несмотря на то, что Sailfish OS является единственной альтернативой Android и iOS, его развитие и поддержка ограничены ресурсами Jolla.

Tauri binding for Python through Pyo3 (github.com)

Разработчики выпустили PyTauri — это привязка Python к фреймворку Tauri, который позволяет создавать настольные приложения с помощью веб-технологий. Теперь разработчики могут использовать Python для создания приложений, которые компилируются в нативные исполняемые файлы, сохраняя при этом все преимущества веб-разработки, такие как HTML, CSS и JavaScript. Это открывает возможности для создания кроссплатформенных приложений с меньшим весом и более высокой производительностью по сравнению с традиционными Electron-приложениями. Проект примечателен тем, что объединяет простоту Python с мощью современных веб-технологий.

by 0x1997 • 08 октября 2025 г. в 06:58 • 151 points

ОригиналHN

#tauri#python#pyo3#html#css#javascript#electron#servo#qt#webview

Комментарии (47)

  • Обсуждение показало, что Tauri не является просто обёрткой над системным WebView, а скорее фреймворком, который может использовать различные движки, включая экспериментальный Servo.
  • Участники обсудили, что Tauri позволяет использовать веб-технологии для создания десктоп-приложений, но при этом не требует включения полной копии Chromium в каждом приложении, как это делает Electron.
  • Были упомянуты преимущества Tauri в контексте лицензий Qt и сложности использования Qt, а также вопросы производительности и размера дистрибутива.
  • Участники также обсудили, что Tauri позволяет использовать Python в качестве бэкенда, что может быть полезно для веб-разработчиков, желающих использовать веб-технологии для создания десктоп-приложений.

Window Activation (blog.broulik.de)

Как приложение получает фокус в Wayland
В X11 окно могло «захватить» внимание само; в Wayland это невозможно. Приложение может лишь получить фокус, если композитор одобрит запрос. Для этого используется протокол XDG Activation.

  1. Приложение-источник (например, мессенджер) запрашивает у композитора токен активации.
  2. Токен передаётся целевому приложению через переменную окружения XDG_ACTIVATION_TOKEN или поле activation-token в DBus.
  3. Получив токен, приложение просит композитор активировать своё окно.
  4. Композитор проверяет подлинность: наличие токена, серийный номер события, ID приложения и т.д. При сомнении запрос отклоняется.

Готовые решения в KDE/Qt

  • QWindow::requestActivate() сама использует токен из окружения или запрашивает новый.
  • OpenUrlJob, ApplicationLauncherJob, KDBusService уже умеют работать с токенами.
    Благодаря этому большинство KDE-приложений работают без изменений.

Почему X11 не идеален
У KWin-X11 была «защита от кражи фокуса», но она опиралась на эвристики и могла быть обойдена.

Тестируем правильность
В свежем KWin включите «Extreme»-режим предотвращения кражи фокуса: окно поднимется только при валидном токене. За последние дни исправлены:

  • Dolphin терял токен при новом запуске;
  • KRunner, Kickoff и прочие плазмоиды не запрашивали токен;
  • LayerShell-Qt теперь читает переменную и запрашивает активацию при показе;
  • привилегированные клиенты (Plasma, KGlobalAccel) могут получать токены;
  • нажатия модификаторов больше не считаются «пользовательским взаимодействием».

Спецификация DBusRunner получила метод SetActivationToken, который теперь используют Baloo и KClock для корректного открытия файлов в уже запущенных окнах.

by LorenDB • 04 августа 2025 г. в 12:03 • 213 points

ОригиналHN

#wayland#xdg-activation#qt#kde#dbus#x11

Комментарии (124)

  • Пользователи рады, что Wayland запрещает приложениям «воровать» фокус, в отличие от X11/macOS/Windows, где авто-обновления и всплывающие окна прерывают работу.
  • Некоторые жалуются: из-за новых правил пароли и другие важные диалоги прячутся под окнами, пока не всё ПО перейдёт на XDG Activation.
  • Дискуссия о том, кто должен решать передачу фокуса: само приложение, оконный менеджер или пользователь.
  • Название «Window Activation» ввело в заблуждение: многие ждали статью о лицензировании Windows.