(Я также использую Mint 17 с Cinnamon в качестве основного рабочего стола)
Вы можете рассмотреть возможность использования Xephyr, который может создать вложенный сервер xserver внутри вашего рабочего стола Cinnamon. Я могу использовать свой геймпад (Thrustmaster PS3-type) на сервере Xephyr. У меня не установлен Steam, но я проверил это с помощью другой игры (alex4). Я столкнулся с проблемой разветвления Xephyr (которого не было в старых версиях), но смог обойти это, запустив его из окна xterm. Глядя на то, что я сделал, может помочь вам начать:
sudo apt-get install xterm xserver-xephyr alex4
Затем из терминала:
xterm -e Xephyr :1 -ac -screen 640x480 &
«xterm -e» вызывает запуск xterm и выполнение следующей команды.
«Xephyr:1» означает, что новый дисплей будет:1. Выберите что-то другое, если у вас есть несколько мониторов. Это должно быть что-то, чего еще не существует. (Если у вас один монитор, отображается:0, отображается секунда:1 и т.д.)
«Xephyr -ac» означает отключение контроля доступа, что, как я считаю, означает, что новый xserver будет иметь полный доступ к системе.
«Xephyr -screen widthxheight» - это разрешение (оно также может принимать третье число для битовой глубины, которое я использовал для получения старых программ Windows, для которых требуется 256-цветный режим для работы через Wine).
«&» заставляет xterm разветвляться, позволяя вам ввести другую команду в терминале.
Далее в терминале:
DISPLAY=:1 alex4
Установите системную переменную DISPLAY на любой экран, который вы создали с помощью Xephyr, затем запустите нужную программу.
Если вы пишете сценарий оболочки для запуска этих команд, поместите его в спящий режим, чтобы у Xephyr было достаточно времени для запуска нового дисплея, или ваша попытка запустить программу не удастся из-за ошибки сегментации.
У Xephyr есть флаг «-fullscreen», который вы можете использовать, но вам нужно, чтобы разрешение вашего рабочего стола Cinnamon соответствовало разрешению экрана вашего сервера Xephyr, чтобы он работал должным образом. Используйте для этого xrandr и запомните свое старое разрешение, потому что позже вам придется его вернуть. Например, в моем случае:
xrandr -s 640x480 && xterm -e Xephyr :1 -ac -screen 640x480 -fullscreen & sleep 3 && DISPLAY=:1 alex4 && killall xterm && xrandr -s 1920x1080 && killall Xephyr
(Если вы не знаете, символ && означает ожидание завершения первого процесса, а затем выполнение следующего. Одиночный символ & означает, что нужно выполнить первый процесс и перейти к следующему.)
Надеюсь, это поможет вам. (Введите «Xephyr -help» для получения полного списка параметров. Страница справочника, к сожалению, редкая.)