Это старая версия документа.


Иногда бывает нужно запустить полноэкранное приложение (обычно, игру) в отдельном X-сервере, например, для повышения производительности или удобства переключения между задачами.

  1. сначала редактируем файл /etc/X11/Xwrapper.config с правами суперпользователя (лучше сделать перед этим его бэкап), в нём в первой опции выставляем параметр «Anybody». Затем

    sudo bash -c "md5sum /etc/X11/Xwrapper.config > /var/lib/x11/Xwrapper.config.md5sum"
    sudo dpkg-reconfigure xserver-common
  2. Далее с правами пользователя редактируем файл ~/.Xauthority, для этого в консоли:

    xauth
    list

    Увидим что-то вроде

    blind.local:0  MIT-MAGIC-COOKIE-1  e087ead1f80cd5d35b6bd273222d1feb
    [fe80::204:61ff:fe9e:c083]:0  MIT-MAGIC-COOKIE-1  e087ead1f80cd5d35b6bd273222d1feb
    blind/unix:0  MIT-MAGIC-COOKIE-1  e087ead1f80cd5d35b6bd273222d1feb

    Буквенно-цифровой хвост, конечно, будет другим.

    Пишем там же, вставив свой хвост:

    add :1.0 MIT-MAGIC-COOKIE-1 e087ead1f80cd5d35b6bd273222d1feb
    exit
  3. Теперь либо делаем в отдельном файле скрипт на запуск игры вроде такого

    #!/bin/bash
    xinit <путь до исполняемого файла от игрушки> $* -- :1 -nocursor

    и далее пользуемся, либо, если игра запускается через иконку в Applications, то «xinit <путь до исполняемого файла от игрушки> $* – :1 -nocursor» пишем уже там. Параметр -nocursor позволяет избежать проблемы с появлением стандартного иксового черного курсора-креста поверх игрушки при повторном переключении в неё.

    Переключение между игрой и основной X-сессией происходит по Ctrl-Alt-F7 (основная сессия) и Ctrl-Alt-F8 (игрушка)

  4. Теперь игра запускается, но без звука. Если переключиться в основную сессию - то звук от игры там. Для исправления ситуации редактируем файл /etc/group, там прописываем вашего пользователя , или нескольких.

    Меняем

    audio:x:29:pulse

    на

    audio:x:29:pulse,"ваш пользователь"

    FIXME Тут нужен usermod

  5. Перезагружаемся — всё будет работать.

Ссылки