Добрый день всем, кто оказался на данном сайте. Многие пользователи Linux, наверняка захотят поиграть в этой операционной системе в игры, например, в GTA 5. Но, как известно, лаунчер Epic Games не поддерживает Linux. По этой причине пользователи систем Linux и не могут играть в игры от Epic Games. В отличии от того же Steam, который разрабатывает свой лаунчер под Linux. И сегодня мы разберемся как можно запустить Epic Games в Linux. Я уже писал статью о проекте PortWine-Linux. Который создает порты на основе Wine для запуска игр разработанных для Windows в Linux. В прошлый раз статья была посвящена установке Wargaming и World of Tanks на Linux. Ознакомится вы можете с этой статьей пройдя по этой ссылке. На сей раз, снова обратимся к проекту PortWine-Linux для возможности установки Epic Games. Но, сначала нам нужно установить необходимые зависимости. Давайте это и сделаем.
P.S. Не актуально, актуальная версия доступна по данной ссылке.
Устанавливаем зависимости в Ubuntu 18.04 и Linux Mint 19.x
Для того что бы установить необходимые зависимости в операционных системах Ubuntu 18.04 / Linux Mint 19.x, открываем терминал и вводим следующие команды:
sudo dpkg --add-architecture i386 && sudo add-apt-repository ppa:samoilov-lex/gamemode -y && sudo add-apt-repository ppa:cybermax-dexter/vkd3d -y && sudo apt update && sudo apt upgrade && sudo apt install libvkd3d1 libvkd3d1:i386 gamemode freetds-common gpm:i386 lib32gcc1 lib32stdc++6 lib32z1 libaa1:i386 libatk1.0-0:i386 libc6-i386 libcdk5:i386 libclc-amdgcn libclc-dev libclc-r600 libcurl4:i386 libdatrie1:i386 libegl-mesa0:i386 libegl1:i386 libgbm1:i386 libgd-tools:i386 libgdk-pixbuf2.0-0:i386 libgnutlsxx28 libgnutlsxx28:i386 libgraphite2-3:i386 libharfbuzz0b:i386 libice6:i386 libjpeg62 libjpeg62:i386 libmikmod3 libnghttp2-14:i386 libnspr4:i386 libnss3:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpopt0:i386 libportaudio2:i386 libpq5 libpq5:i386 libpsl5:i386 libreadline7:i386 librtmp1:i386 libsdl-net1.2 libsdl-sound1.2 libsdl2-2.0-0 libsdl2-2.0-0:i386 libsdl2-image-2.0-0:i386 libslang2:i386 libsm6:i386 libthai0:i386 libwxbase3.0-0v5 libxcb-xfixes0:i386 libxkbcommon0:i386 libxss1:i386 mesa-opencl-icd mesa-opencl-icd:i386 winbind fonts-wine gcc-8-base:i386 gstreamer1.0-plugins-base:i386 libasn1-8-heimdal:i386 libasound2:i386 libasound2-plugins:i386 libasyncns0:i386 libatomic1:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libblkid1:i386 libbsd0:i386 libc6:i386 libcairo2:i386 libcap2:i386 libcapi20-3 libcapi20-3:i386 libcdparanoia0:i386 libcom-err2:i386 libcups2:i386 libdb5.3:i386 libdbus-1-3:i386 libdrm-amdgpu1:i386 libdrm-intel1:i386 libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libedit2:i386 libelf1:i386 libexif12:i386 libexpat1:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt20:i386 libgd3:i386 libgl1:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libglvnd0:i386 libglx-mesa0:i386 libglx0:i386 libgmp10:i386 libgnutls30:i386 libgpg-error0:i386 libgphoto2-6:i386 libgphoto2-port12:i386 libgpm2:i386 libgsm1:i386 libgssapi-krb5-2:i386 libgssapi3-heimdal:i386 libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0:i386 libhcrypto4-heimdal:i386 libheimbase1-heimdal:i386 libheimntlm0-heimdal:i386 libhogweed4:i386 libhx509-5-heimdal:i386 libicu60:i386 libidn2-0:i386 libieee1284-3:i386 libjack-jackd2-0:i386 libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 libk5crypto3:i386 libkrb5-26-heimdal:i386 libkrb5-3:i386 liblcms2-2:i386 libldap-2.4-2:i386 libllvm8:i386 libltdl7:i386 liblz4-1:i386 liblzma5:i386 libmount1:i386 libmpg123-0:i386 libncurses5:i386 libnettle6:i386 libogg0:i386 libopenal-data libopenal1 libopenal1:i386 libopus0:i386 liborc-0.4-0:i386 libosmesa6 libosmesa6:i386 libp11-kit0:i386 libpcap0.8:i386 libpciaccess0:i386 libpcre3:i386 libpixman-1-0:i386 libpng16-16:i386 libpulse0:i386 libroken18-heimdal:i386 libsamplerate0:i386 libsane1:i386 libsasl2-2:i386 libsasl2-modules:i386 libsasl2-modules-db:i386 libselinux1:i386 libsensors4:i386 libsndfile1:i386 libsndio6.1 libsndio6.1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libstdc++6:i386 libsystemd0:i386 libtasn1-6:i386 libtheora0:i386 libtiff5:i386 libtinfo5:i386 libudev1:i386 libunistring2:i386 libusb-1.0-0:i386 libuuid1:i386 libv4l-0:i386 libv4lconvert0:i386 libvisual-0.4-0:i386 libvorbis0a:i386 libvorbisenc2:i386 libwebp6:i386 libwind0-heimdal:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcb1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxml2:i386 libxpm4:i386 libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxslt1.1:i386 libxxf86vm1:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 zlib1g:i386 xterm curl wget aria2 p7zip p7zip-full cabextract ocl-icd-libopencl1 ocl-icd-libopencl1:i386 libvulkan1 libvulkan1:i386 vulkan-utils mesa-utils mesa-vulkan-drivers mesa-vulkan-drivers:i386 libwine libwine:i386
Устанавливаем зависимости в Ubuntu 20.04
Для установке зависимостей в операционной системе Ubuntu 20.04 переходим в терминал и вводим команды:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt upgrade
sudo add-apt-repository multiverse
sudo apt install freetds-common gpm:i386 icoutils lib32gcc1 lib32stdc++6 lib32z1 libaa1:i386 libatk1.0-0:i386 libc6-i386 libclc-amdgcn libclc-dev libclc-r600 libcurl4:i386 libdatrie1:i386 libegl-mesa0:i386 libegl1:i386 libgbm1:i386 libgd-tools:i386 libgdk-pixbuf2.0-0:i386 libgnutlsxx28 libgnutlsxx28:i386 libgraphite2-3:i386 libharfbuzz0b:i386 libice6:i386 libjpeg62 libjpeg62:i386 libmikmod3 libnghttp2-14:i386 libnspr4:i386 libnss3:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpopt0:i386 libportaudio2:i386 libpq5 libpq5:i386 libpsl5:i386 librtmp1:i386 libsdl-net1.2 libsdl-sound1.2 libsdl2-2.0-0 libsdl2-2.0-0:i386 libsdl2-image-2.0-0:i386 libslang2:i386 libsm6:i386 libthai0:i386 libwxbase3.0-0v5 libxcb-xfixes0:i386 libxkbcommon0:i386 libxss1:i386 mesa-opencl-icd mesa-opencl-icd:i386 winbind fonts-wine gcc-8-base:i386 gstreamer1.0-plugins-base:i386 libasn1-8-heimdal:i386 libasound2:i386 libasound2-plugins:i386 libasyncns0:i386 libatomic1:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libblkid1:i386 libbsd0:i386 libc6:i386 libcairo2:i386 libcap2:i386 libcapi20-3 libcapi20-3:i386 libcdparanoia0:i386 libcom-err2:i386 libcups2:i386 libdb5.3:i386 libdbus-1-3:i386 libdrm-amdgpu1:i386 libdrm-intel1:i386 libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libedit2:i386 libelf1:i386 libexif12:i386 libexpat1:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt20:i386 libgd3:i386 libgl1:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libglvnd0:i386 libglx-mesa0:i386 libglx0:i386 libgmp10:i386 libgnutls30:i386 libgpg-error0:i386 libgphoto2-6:i386 libgphoto2-port12:i386 libgpm2:i386 libgsm1:i386 libgssapi-krb5-2:i386 libgssapi3-heimdal:i386 libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0:i386 libhcrypto4-heimdal:i386 libheimbase1-heimdal:i386 libheimntlm0-heimdal:i386 libhx509-5-heimdal:i386 libidn2-0:i386 libieee1284-3:i386 libjack-jackd2-0:i386 libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 libk5crypto3:i386 libkeyutils1:i386 libkrb5-26-heimdal:i386 libkrb5-3:i386 libkrb5support0:i386 liblcms2-2:i386 libldap-2.4-2:i386 libltdl7:i386 liblz4-1:i386 liblzma5:i386 libmount1:i386 libmpg123-0:i386 libncurses5:i386 libogg0:i386 libopenal-data libopenal1 libopenal1:i386 libopus0:i386 liborc-0.4-0:i386 libosmesa6 libosmesa6:i386 libp11-kit0:i386 libpcap0.8:i386 libpciaccess0:i386 libpcre3:i386 libpixman-1-0:i386 libpng16-16:i386 libpulse0:i386 libroken18-heimdal:i386 libsamplerate0:i386 libsane1:i386 libsasl2-2:i386 libsasl2-modules:i386 libsasl2-modules-db:i386 libselinux1:i386 libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libstdc++6:i386 libsystemd0:i386 libtasn1-6:i386 libtheora0:i386 libtiff5:i386 libtinfo5:i386 libudev1:i386 libunistring2:i386 libusb-1.0-0:i386 libuuid1:i386 libv4l-0:i386 libv4lconvert0:i386 libvisual-0.4-0:i386 libvorbis0a:i386 libvorbisenc2:i386 libwebp6:i386 libwind0-heimdal:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcb1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxml2:i386 libxpm4:i386 libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxslt1.1:i386 libxxf86vm1:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 zlib1g:i386 xterm curl wget aria2 p7zip p7zip-full cabextract ocl-icd-libopencl1 ocl-icd-libopencl1:i386 libvulkan1 libvulkan1:i386 vulkan-utils mesa-utils mesa-vulkan-drivers mesa-vulkan-drivers:i386 glib-networking:i386 gstreamer1.0-plugins-good:i386 gstreamer1.0-x:i386 libavc1394-0:i386 libcaca0:i386 libcairo-gobject2:i386 libdv4:i386 libgstreamer-plugins-good1.0-0:i386 libgudev-1.0-0:i386 libiec61883-0:i386 libmp3lame0:i386 libncursesw6:i386 libproxy1v5:i386 libraw1394-11:i386 libshout3:i386 libsoup2.4-1:i386 libspeex1:i386 libtag1v5:i386 libtag1v5-vanilla:i386 libtwolame0:i386 libvkd3d1 libvkd3d1:i386 libvpx6:i386 libwavpack1:i386 libxv1:i386 gstreamer1.0-plugins-bad libfaudio0 libfaudio0:i386 gamemode libwine libwine:i386
Устанавливаем зависимости в Arch Linux / Manjaro
Теперь давайте установим необходимые зависимости в Arch Linux или Manjaro. Для этого открываем терминал и вводим команды:
sudo pacman -Syu freeglut glew python2-wxpython3 zenity cabextract gnu-netcat vulkan-icd-loader vulkan-radeon vulkan-intel icoutils libutempter p7zip wxpython xbitmaps xterm vkd3d lib32-alsa-lib lib32-alsa-plugins lib32-glu lib32-icu lib32-libdrm lib32-libelf lib32-libglvnd lib32-libice lib32-libpciaccess lib32-libsm lib32-libxdamage lib32-libxi lib32-libxml2 lib32-libxshmfence lib32-libxxf86vm lib32-llvm-libs lib32-lm_sensors lib32-mesa lib32-ncurses lib32-readline lib32-wayland lib32-acl lib32-fontconfig lib32-freetype2 lib32-gettext lib32-harfbuzz lib32-lcms2 lib32-libjpeg-turbo lib32-libnl lib32-libpcap lib32-libpng lib32-libtiff lib32-libusb lib32-libxcursor lib32-libxrandr lib32-libxrender lib32-libxss lib32-libudev0-shim lib32-libgudev lib32-libpulse lib32-libldap lib32-libxml2 lib32-libpng lib32-giflib lib32-gnutls lib32-mpg123 lib32-glibc lib32-vulkan-icd-loader lib32-vulkan-radeon lib32-vulkan-intel lib32-vkd3d lib32-acl lib32-faudio lib32-gettext lib32-lcms2 lib32-libnl lib32-libpcap lib32-libusb
Устанавливаем зависимости в Debian 10
Для пользователей Debian 10 установка зависимостей мало чем отличается от других. Для того что бы проставить необходимые зависимости в Debian10, открываем терминал и вводим команды:
su
dpkg --add-architecture i386 && apt update
apt-get install i965-va-driver:i386 libasound2:i386 libasound2-plugins:i386 libasyncns0:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libbsd0:i386 libc6:i386 libcairo2:i386 libcap2:i386 libcomerr2:i386 libcrystalhd3:i386 libcups2:i386 libdb5.3:i386 libdbus-1-3:i386 libdrm-amdgpu1:i386 libdrm-intel1:i386 libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libedit2:i386 libelf1:i386 libexpat1:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt20:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 libglu1-mesa:i386 libgmp10:i386 libgnutls30:i386 libgomp1:i386 libgpg-error0:i386 libgpm2:i386 libgsm1:i386 libgssapi-krb5-2:i386 libhogweed4:i386 libice6:i386 libidn11:i386 libjbig0:i386 libjpeg62-turbo:i386 libk5crypto3:i386 libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 liblcms2-2:i386 libldap-2.4-2:i386 libltdl7:i386 liblz4-1:i386 liblzma5:i386 libmp3lame0:i386 libmpg123-0:i386 libncurses5:i386 libnettle6:i386 libnuma1:i386 libogg0:i386 libopenal1:i386 libopenjp2-7:i386 libopus0:i386 libosmesa6 libosmesa6:i386 libpcap0.8:i386 libpciaccess0:i386 libpcre3:i386 libpixman-1-0:i386 libpng16-16:i386 libpulse0:i386 libsamplerate0:i386 libsasl2-2:i386 libsasl2-modules:i386 libsasl2-modules-db:i386 libselinux1:i386 libshine3:i386 libsm6:i386 libsnappy1v5:i386 libsndfile1:i386 libsoxr0:i386 libspeex1:i386 libspeexdsp1:i386 libstdc++6:i386 libsystemd0:i386 libtasn1-6:i386 libtheora0:i386 libtiff5:i386 libtinfo5:i386 libtwolame0:i386 libuuid1:i386 libvdpau-va-gl1:i386 libvdpau1:i386 libvorbis0a:i386 libvorbisenc2:i386 libwavpack1:i386 libwebp6:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcb-sync1:i386 libxcb1:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxml2:i386 libxrandr2:i386 libxrender1:i386 libxshmfence1:i386 libxslt1.1:i386 libxtst6:i386 libxvidcore4:i386 libxxf86vm1:i386 libzvbi0:i386 mesa-va-drivers:i386 mesa-vdpau-drivers:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 uuid-runtime va-driver-all:i386 vdpau-driver-all:i386 zlib1g:i386 winbind glib-networking:i386 gstreamer1.0-plugins-base:i386 libatk-bridge2.0-0:i386 libatk1.0-0:i386 libatspi2.0-0:i386 libblkid1:i386 libcairo-gobject2:i386 libcapi20-3 libcapi20-3:i386 libcdparanoia0:i386 libcolord2:i386 libdatrie1:i386 libegl1-mesa:i386 libepoxy0:i386 libexif12:i386 libgbm1:i386 libgd3:i386 libgdk-pixbuf2.0-0:i386 libglib2.0-0:i386 libgphoto2-6:i386 libgphoto2-port12:i386 libgraphite2-3:i386 libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0:i386 libharfbuzz0b:i386 libieee1284-3:i386 libjson-glib-1.0-0:i386 libmount1:i386 liborc-0.4-0:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libproxy1v5:i386 librest-0.7-0:i386 libsane:i386 libsoup2.4-1:i386 libsqlite3-0:i386 libthai0:i386 libudev1:i386 libusb-1.0-0:i386 libv4l-0:i386 libv4lconvert0:i386 libvisual-0.4-0:i386 libxcb-xfixes0:i386 libxkbcommon0:i386 libxpm4:i386 apt-transport-https libc6 libc6:i386
Устанавливаем PortEpic
После того как вы установили все необходимые зависимости, можно переходить к установке PortEpic. Для этого нужно скачать установочный скрипт, который установит PortEpic в вашу операционную систему. Скачать данный скрипт вы сможете либо нажав на эту ссылку, либо, перейдя на сайт проекта PortWine-Linux и скачать от туда:

Далее нужно открыть терминал и перейти в папку со скачанным скриптом. Предполагается, что вы скачали скрипт в папку “Загрузки”. Для этого вводим следующую команду:
cd ~/Загрузки/
После чего нужно дать права на запуск данного скрипта. Это можно сделать командой “chmod +x и название скрипта”. В данном случае скрипт называется “PortEpic-20”. То есть, команда будет выглядеть следующим образом:
chmod +x PortEpic-23
Ну а теперь можно запускать данный скрипт для установки EpicGame. Для этого вводим команду:
sh PortEpic-23
При запуске вам нужно будет выбрать язык установки:

После чего появится окно с информацией о версии скрипта и о том, что данный проект не коммерческий. Нажимаем “OK” и двигаемся дальше:

Далее нужно будет указать путь куда вы хотите установить EpicGame, я обычно оставляю по умолчанию. Вы же можете указать иное расположения установки отметив пункт “Другой путь”, а затем указав нужную вам папку:

После чего начнется установка EpicGame. После установки нужно будет выбрать какие библиотеки использовать. Это либо DXVK, либо OpenGL, пункт DXVK+HUB просто выводит информацию о FPS и загруженности вашей системы. Я же рекомендую запускать под DXVK:


После того как вы выберете один из вариантов использования библиотек (OpenGL или DXVK), установка завершится:

Установленный лаунчер EpicGame вы найдете в меню установленных приложений, запустив его он проверит обновления, при необходимости скачает их. После чего вам нужно будет зарегистрироваться или ввести свои регистрационные данные. Тут собственно все как обычно, не чем не отличается от тех же действий в Windows:


После чего вы сможете устанавливать игры используя лаунчер EpicGame. Например, ту же GTA 5:

Заключение
При возникновении каких либо проблем с запуском лаунчера EpicGame вы можете связаться с автором проекта PortWine. При необходимости так же можете вступить в группу вк или подписаться на youtube канал. Так же, можете поддержать автора проекта PortWine финансово, либо, помочь продвижению его проекта разместив ссылки на сайт в своих учетках в соцсетях. Все таки человек старался, делал данные порты для нас, что бы облегчить нам игровую жизнь в системах Linux. А так же помогает решить возникшие в процессе установки проблемы. Если у вас возникнет желание поиграть в World of Tanks на Linux, можете ознакомится с инструкцией по установке перейдя по этой ссылке.
А на этом сегодня все. Надеюсь данная статья будет вам полезна.
С уважением Cyber-X