Устанавливаем Proton в Linux

25.02.2022, 15:27

Еще не так давно сложно было поверить, что Linux будет в какой то мере еще и игровой платформой. Нативных игр по-прежнему мало, но с появлением API Vulkan ускорилось развитие слоя совместимости Wine для запуска приложений Windows. Клиент Steam тому яркое доказательство, Proton позволяет запускать более 70% всей библиотеки Steam. Вне Steam также можно встретить большое количество хороших игр. Для их запуска подходят Lutris, CrossOver, но есть третий вариант – PortProton. Он позволяет запускать сторонние игры с использованием Proton. Дальше мы рассмотрим, как установить Proton Linux.

Что это такое?

Proton – слой совместимости на основе Wine, разработка принадлежит Valve и предназначена клиентам Steam. Он позволяет запускать больше половины игр, написанных для Windows. Ознакомиться со списком игр и отзывами игроков можете на сайте ProtonDB. PortProton это отвязанный от Steam слой совместимости Proton с небольшой утилитой для его настройки. Или другими словами proton без steam linux. Помимо оригинального Proton, на выбор имеется модифицированная версия, Proton GE. Она включает десятки патчей, а также дополнительные функции, вроде повышения резкости при низком разрешении (FSR). При желании вы можете добавить Proton GE в нативный клиент Steam.

Как установить

Перед установкой PortProton необходимо обновить видеодрайвер. В Ubuntu для этого откройте утилиту Драйверы и выберите последний проприетарный драйвер Nvidia. В случае с AMD и Intel нужно использовать открытый предустановленный драйвер Mesa. УСледует понимать, что видеокарта не должна быть старой, должна быть предусмотрена поддержка Vulkan. С ним работают карты начиная с Nvidia GeForce 600, AMD Radeon HD7000 и Intel HD 500.

Помимо этого, может потребоваться установка драйверов Vulkan:

$ sudo apt install libvulkan1 libvulkan1:i386 vulkan-utils

Для драйвера Mesa:

$ sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386 libvulkan1 libvulkan1:i386 vulkan-utils

Устанавливаем зависимость

Также вам потребуется установить зависимости:

$ sudo dpkg --add-architecture i386

$ sudo add-apt-repository multiverse

$ sudo apt update && sudo apt upgrade

$ sudo apt install bubblewrap curl gamemode icoutils tar vulkan-tools libvulkan1 libvulkan1:i386 wget zenity zstd steam cabextract

Список команд предусмотрен и для других дистрибутивов.

Устанавливаем PortProton 

Для установки PortProton нужно выполнить команду:

$ wget -c -T 5 https://portwine-linux.ru/ftp/portwine/PortProton-95 && sh "./PortProton-95"

После инсталляции есть возможность сразу запустить PortProton для настройки Wine. В разделе Autoinstall вы можете установить практически все популярные клиенты, после установки соответствующий значок появится в меню приложений.

Запускаем игры

Чтобы обеспечить запуск игры в контекстном меню exe файла нужно выбрать Открыть в PortProton. В появившемся окне будет указано о наличии игры в базе данных, что позволяет автоматически установить недостающие библиотеки, в связи с чем первый запуск игры может оказаться долгим. Здесь же вы можете выбрать эмулируемый API (DirectX 9 -11, 12 или OpenGL) и слой совместимости (Proton Steam или Proton GE). Если не получилось запустить игру с оригинальным Proton Steam, попробуйте Proton GE.

Как только будут установлены все библиотеки, должна запуститься игра или её лончер. Некоторые игры также необходимо предварительно настроить. Например, может потребоваться переключение в оконный режим, отключение некоторых опций и так далее.

С целью быстрого запуска игры вы можете создать ярлык (кнопка Create Shortcut в окне PortProton). В случае с Ubuntu перетащите ярлык на рабочий стол и в контекстном меню выберите Разрешить запуск.

Запускаются не все игры, к тому же работа в Steam через Proton не гарантирует запуск той же игры, но уже не привязанной к Steam.

Еще раз отметим, что PortProton позволяет запускать большую часть игр для Windows. Вы также можете установить все популярные клиенты: GoG, EGS, Origin и другие. Но надо быть предельно осторожным с запуском онлайн игр, так как они нередко имеют защиту, которая может неправильно принять PortProton и заблокировать ваш аккаунт.