Hacker News Digest

Тег: #x11

Постов: 3

Progress towards universal Copy/Paste shortcuts on Linux (mark.stosberg.com)

На Linux Ctrl-C/Ctrl-V в терминале не работают, потому что Ctrl нужен для управляющих кодов. Приходится жать Ctrl+Shift+C/V. К 2025 году появится универсальное решение без лишнего ПО: старые коды клавиш Copy и Paste, которые Linux «знает» с древности.

Как это работает

  1. Клавиатура
    Программируемые клавиатуры (System76 Launch, Framework 16, ZSA Moonlander, Keychron Q10 и др.) позволяют назначить на любую клавишу слой, где C = Copy, V = Paste. Для активации слоя удерживается модификатор (например, «Raise» на моей Corne).

  2. Прошивка и конфигураторы
    Производители дают свои утилиты (System76 Keyboard Configurator), а Vial поддерживает множество моделей. В слое можно вывести Copy/Paste на C/V, стрелки на домашний ряд и прочие удобства.

  3. ПО Linux
    Приложения опираются на GUI-тулкиты GTK и Qt.

    • GTK добавил поддержку Copy/Paste-кодов в январе 2025.
    • Qt внедрит их в версии 6.10 (сентябрь 2025).

Совокупность программируемого «железа» и обновлённых тулкитов даст единые горячие клавиши Copy/Paste во всех приложениях Linux без дополнительных твиков.

by uncircle • 12 августа 2025 г. в 12:00 • 112 points

ОригиналHN

#linux#terminal#keyboard#vim#tmux#x11#keyboard-shortcuts

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

  • Участники жалуются на разнообразие клипбордов в Linux (X11, Vim, tmux) и их несогласованность.
  • В терминалах приходится добавлять Shift к Ctrl-C/Ctrl-V, что ломает мышечную память и вызывает ошибки.
  • Apple решает конфликт отдельным Cmd-ключом, но даже там приложения перехватывают сочетания непредсказуемо.
  • Многие используют альтернативы: Ctrl/Shift-Insert, выделение + средняя кнопка мыши, ремап клавиш, покупку программируемых клавиатур.
  • Единого механизма объявления и настройки шорткатов в Linux нет, поэтому Chrome и другие приложения игнорируют системные привязки.

StarDict sends X11 clipboard to remote servers (lwn.net) 🔥 Горячее 💬 Длинная дискуссия

StarDict — кроссплатформенный словарь GPLv3 — при работе в X11 по умолчанию пересылает выделенный пользователем текст по нешифрованному HTTP на два китайских сервиса: YouDao и dict.cn.

Проблема обнаружена Винсентом Лефевром 4 августа 2025 года при подготовке к Debian 13. Пакет stardict-plugin, который ставится автоматически, содержит плагин YouDao. Функция «scan» (включена по умолчанию) отслеживает выделение мышью и отправляет текст на серверы без шифрования.

На Wayland уязвимости нет: система блокирует чтение чужих выделений, но и «scan» не работает.

Сопровождающий Debian Сяо Шэн Вэнь считает поведение допустимым: функции можно отключить. Лефевр возражает: конфиденциальные возможности не должны быть активны по умолчанию.

Описание пакета упоминает «scan», но не говорит, что YouDao — онлайн-сервис. Сяо предложил вынести сетевые плагины в отдельный пакет, но сомневается в необходимости.

Аналогичные проблемы сообщались в 2009 и 2015 годах; тогда отключили сетевые словари по умолчанию, но плагин YouDao (добавлен в 2016) игнорирует эту настройку.

by pabs3 • 12 августа 2025 г. в 04:08 • 428 points

ОригиналHN

#stardict#x11#wayland#http#debian#gplv3

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

  • Пакет StarDict по умолчанию отправляет выделенный текст на китайские серверы по нешифрованному HTTP.
  • Мейнтейнер Debian отмахнулся: «в описании пакета всё написано, RTFM».
  • Пользователи возмущены: словарь можно было сделать полностью локальным (≈ 400 МБ), а поведение — опциональным.
  • Уязвимость годами игнорировалась, баг-репорты закрывались как «небаг».
  • Сообщество требует исключить StarDict из репозиториев и пересмотреть политику мейнтейнеров.

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.