Другое

Невидимый курсор KDE в QEMU на M1 Mac: решение проблемы

Решение проблемы с невидимым курсором KDE в QEMU Arm64 на M1 Mac. Проверка настроек Wayland, обновление драйверов и параметры виртуализации.

Курсор KDE невидим в QEMU Arm64 на M1 Mac: что делать?

Я столкнулся с проблемой, когда физический курсор мыши существует, но становится невидимым в среде рабочего стола KDE. Проблема возникает в Alpine Linux (как на Edge, так и на latest-stable) после установки через sudo setup-desktop plasma. Система работает в QEMU Arm64 на хост-машине с M1 Mac.

Интересно, что с другими дистрибутивами (Debian, Fedora) такой проблемы не возникает. Также стоит отметить, что курсор виден перед появлением интерфейса SDDM, но затем исчезает. При этом в GNOME на Wayland курсор работает корректно, даже с темой Breeze.

Как решить проблему с невидимым курсором в KDE на данной конфигурации?

Проблема с невидимым курсором KDE в QEMU Arm64 на M1 Mac связана с особенностями драйверов мыши и отрисовки курсора в среде Wayland/KDE. Для решения проблемы необходимо проверить настройки X11/Wayland, обновить драйверы и настроить параметры виртуализации.

Содержание

Анализ проблемы

Проблема невидимого курсора в KDE на Alpine Linux в QEMU Arm64 на M1 Mac имеет несколько возможных причин:

Основные факторы:

  • Конфликт между драйверами мыши QEMU и KDE
  • Проблемы с отрисовкой курсора в Wayland
  • Отсутствие необходимых модулей ядра для ARM64
  • Конфликты между альпийскими пакетами и KDE

Интересно, что курсор виден до входа в SDDM, что указывает на то, что проблема возникает именно в процессе инициализации рабочего стола KDE. Также важен факт корректной работы в GNOME на Wayland, что сужает круг возможных причин до специфичных для KDE настроек.

Важно: Проблема возникает только с Alpine Linux, что говорит о возможных особенностях сборки пакетов или конфигурации дистрибутива.


Проверка конфигурации QEMU

Параметры запуска QEMU

Добавьте следующие параметры в команду запуска QEMU для улучшения работы мыши:

bash
qemu-system-aarch64 \
  -cpu host \
  -machine virt,iommu=on \
  -device qemu-xhci,id=usb \
  -device usb-tablet \
  -device usb-kbd \
  -device virtio-gpu-gl,xres=1920,yres=1080 \
  -display sdl,gl=on \
  -vga none

Ключевые параметры:

  • -device usb-tablet - улучшает работу мыши
  • -device virtio-gpu-gl - включает аппаратное ускорение графики
  • gl=on - включение OpenGL для корректной отрисовки

Проверка версии QEMU

Убедитесь, что у вас установлена последняя версия QEMU с поддержкой ARM64:

bash
qemu-system-aarch64 --version

Если версия устарела, обновите QEMU через пакетный менеджер Alpine:

bash
apk update
apk upgrade qemu-system-aarch64

Настройка KDE и Wayland

Переключение на X11 Wayland

Попробуйте переключиться на X11 Wayland в настройках Plasma:

  1. Откройте Системные настройки → Платформа рабочего стола
  2. Выберите “X11 Wayland” вместо “Wayland”
  3. Перезагрузите систему

Примечание: В Alpine Linux может потребоваться дополнительная установка пакетов для X11:

bash
sudo apk add mesa-dri-gallium mesa-egl

Настройка темы курсора

Проверьте и измените тему курсора:

  1. Откройте Системные настройки → Устройства → Мышь
  2. В разделе “Тема курсора” выберите стандартную тему (например, DMZ-White)
  3. Проверьте, что масштабирование курсора установлено на 100%

Конфигурация plasma-desktop

Добавьте следующие строки в файл ~/.config/plasma-org.kde.plasma.desktop-appletsrc:

ini
[Containments][1][Wallpaper][org.kde.image][General]
Image=file:///usr/share/wallpapers/Next/contents/images/1920x1080.png

Или попробуйте создать файл ~/.config/plasma-localrc со следующим содержанием:

ini
[Containments][1][Wallpaper][org.kde.image][General]
Image=file:///usr/share/wallpapers/Alpine-Dark/contents/images/1920x1080.png

Альтернативные решения

Установка дополнительных пакетов Alpine

Установите пакеты, необходимые для корректной работы KDE:

bash
sudo apk add \
  mesa-dri-gallium \
  mesa-egl \
  mesa-gl \
  qt6-qtwayland \
  plasma-wayland-session \
  xorg-server \
  xf86-input-mouse \
  xf86-input-evdev

Настройка параметров ядра

Добавьте параметры ядра в загрузчик:

  1. Откройте файл /boot/extlinux/extlinux.conf
  2. Добавьте параметры в строку ядра:
    APPEND console=ttyS0 modules-load=usbhid,usb_storage,i915
    

Ручная настройка мыши

Создайте файл /etc/X11/xorg.conf.d/90-mouse.conf со следующим содержанием:

ini
Section "InputClass"
    Identifier "mouse"
    Driver "libinput"
    MatchIsPointer "on"
    Option "AccelProfile" "flat"
EndSection

Проверка совместимости оборудования

Драйверы виртуализации

Убедитесь, что включена виртуализация в настройках BIOS/UEFI M1 Mac:

  1. Проверьте, что виртуализация включена в системных настройках
  2. Установите последние обновления macOS
  3. Проверьте совместимость с QEMU через команду:
bash
kextstat | grep -i qemu

Тестирование с другим гостевым ОС

Для диагностики попробуйте установить другую ARM64 систему:

  • Ubuntu ARM64
  • Arch Linux ARM
  • Manjaro ARM

Если курсор работает корректно, проблема специфична для Alpine Linux KDE.


Заключение

Для решения проблемы с невидимым курсором KDE в QEMU Arm64 на M1 Mac рекомендуется:

  1. Обновить QEMU до последней версии с поддержкой ARM64
  2. Добавить параметры виртуализации для улучшения работы мыши
  3. Установить необходимые пакеты Mesa и Wayland для Alpine Linux
  4. Переключиться на X11 Wayland вместо чистого Wayland
  5. Проверить тему курсора и настройки плазмы

Если проблема сохраняется, стоит рассмотреть возможность установки другого дистрибутива Linux, который лучше поддерживает KDE в виртуальной среде QEMU на ARM64.

Рекомендуемые действия:

  • Начните с обновления QEMU и добавления параметров -device usb-tablet
  • Установите все необходимые пакеты Mesa
  • Проверьте работу в X11 Wayland режиме
  • Если ничего не помогает, попробуйте другой дистрибутив Linux

Помните, что проблема может быть связана с особенностями сборки Alpine Linux и его интеграцией с KDE, поэтому полное решение может потребовать дополнительных исследований и тестов.

Источники

  1. Официальная документация QEMU для ARM64
  2. Руководство по Wayland в KDE Plasma
  3. Alpine Linux Wiki - Virtualization
  4. Настройка Plasma на ARM
  5. Решение проблем с курсором в Linux
Авторы
Проверено модерацией
Модерация