steam linux runtime что это
Почему вы должны использовать Proton вместо Steam Linux Runtime
Когда вы используете Steam для запуска игр на ПК с Linux, у вас может быть возможность запустить его с помощью одной из двух утилит: Proton и Steam Linux Runtime. Из этих двух вам, вероятно, следует выбрать Proton. Вот почему.
Что такое Steam Linux Runtime?
На ПК с Linux, на котором запущен Steam, откройте свойства любой игры и просмотрите доступные варианты после установки флажка «Принудительное использование определенного инструмента совместимости Steam Play». Вы можете увидеть «Steam Linux Runtime» рядом с несколькими версиями Proton.
Если у вас есть опция Steam Linux Runtime, это на самом деле означает, что разработчик игры предоставил Steam собственный порт игры для Linux. Конечно, не все разработчики делают это, так что в каком-то смысле вам повезло, что студия решила, что стоит обслуживать скромную толпу Linux.
Итак, это родное издание — это то, во что вы будете играть, если выберете опцию Steam Linux Runtime. Между игрой и вашей операционной системой не будет выполняться слой совместимости. Которые могут звук вроде идеальная ситуация. И действительно, он может работать отлично. Однако, скорее всего, это не так.
Почему Steam Linux Runtime — отстой
Когда вы выбираете собственный порт, вы предполагаете, что разработчики имели в виду выбранный вами дистрибутив Linux при создании порта Linux. В используемом вами дистрибутиве могут не быть установлены библиотеки, с которыми работали разработчики, что может оставить вас в «аду зависимостей».
Конечно, запуск Ubuntu — это, вероятно, беспроигрышный вариант. Но даже тогда разработчики могли работать со старой версией Ubuntu, используя пакеты, которые с тех пор устарели.
Что еще хуже, есть большая вероятность, что игровая студия потратила гораздо меньше времени и денег на версию для Linux по сравнению с версией для Windows или Mac. Простой факт заключается в том, что люди, занимающиеся Linux, значительно меньше чем у Windows и Mac, поэтому стимулов порадовать пользователей Linux полным и отполированным портом гораздо меньше.
Что делает протон лучше?
Когда вы пытаетесь запустить игру только для Windows в Steam на ПК с Linux, Proton — это то, что Steam запускает в фоновом режиме, чтобы убедиться, что он работает. Это собственный уровень совместимости Valve, который позволяет вам играть в игры для Windows без необходимости использования Windows. Этот дополнительный уровень может показаться ненужным, если у вас уже есть собственный порт, но по нескольким причинам у вас, вероятно, будет больше опыта с Proton.
Во-первых, Valve старается убедиться, что Proton совместим с множеством дистрибутивов, а это означает, что ваш предпочтительный дистрибутив с большей вероятностью будет поддерживаться. А поскольку он активно развивается, вам не нужно беспокоиться об обновлении ОС слишком далеко от разработчиков игры.
Кроме того, в отличие от игровой студии, которая выпустила вашу любимую игру, Valve очень заинтересована в том, чтобы в Linux можно было играть в большее количество игр. Steam Deck поставляется с SteamOS, собственным дистрибутивом Linux от Valve. Таким образом, у Valve есть серьезная финансовая заинтересованность в том, чтобы сделать Proton как можно лучше.
Клапан
Фактически, игровая студия может решить не переносить свою игру на Linux полностью, исходя из предположения, что Proton будет работать достаточно хорошо. Feral Interactive, разработчик с несколькими портами для Linux, написал в Твиттере, что «С тех пор, как Valve выпустила Proton, спрос на нативные игры в целом снизился». В качестве яркого примера, планы по созданию собственного порта Linux Сага о тотальной войне: Троя были исключены вскоре после того, как Valve анонсировала Steam Deck.
Конечно, вы также можете попробовать версию вашей игры Steam Linux Runtime, если она доступна. Опять же, это может сработать отлично. Однако проблемы, скорее всего, возникнут, если не сейчас, то позже, когда вы обновите свой дистрибутив. В этом неизбежном повороте Proton станет вашим лучшим выбором.
Как начать использовать Proton
Если вы хотите начать использовать Proton в Linux, это просто. Вы можете следовать нашему подробному руководству по началу работы с Proton. И когда вы не играете, вы должны знать, что Proton — не единственный вариант для запуска программного обеспечения Windows в Linux.
Steam linux runtime что это
A binary compatible runtime environment for Steam applications on Linux.
This release of the steam-runtime SDK marks a change to a chroot environment used for building apps. A chroot environment is a standalone Linux environment rooted somewhere in your file system.
All processes that run within the root run relative to that rooted environment. It is possible to install a differently versioned distribution within a root, than the native distribution. For example, it is possible to install an Ubuntu 12.04 chroot environment on an Ubuntu 14.04 system. Tools and utilities for building apps can be installed in the root using standard package management tools, since from the tool’s perspective it is running in a native Linux environment. This makes it well suited for an SDK environment.
All the software that makes up the Steam Runtime is available in both source and binary form in the Steam Runtime repository https://repo.steampowered.com/steamrt
Included in this repository are scripts for building local copies of the Steam Runtime for testing and scripts for building Linux chroot environments suitable for building applications.
Testing or shipping with the runtime
Steam ships with a copy of the Steam Runtime and all Steam Applications are launched within the runtime environment. For some scenarios, you may want to test an application with a different build of the runtime.
Downloading a Steam Runtime
Each directory also contains various other archive and metadata files, and a sources/ subdirectory with source code for all the packages that went into this Steam Runtime release.
Building your own Steam Runtime variant
For advanced use, you can use the build-runtime.py script to build your own runtime. To get a Steam Runtime in a directory, run a command like:
The resulting directory is similar to the ubuntu12_32/steam-runtime directory in a Steam installation.
To get a Steam Runtime in a compressed tar archive for easy transfer to other systems, similar to the official runtime deployed with the Steam client, use a command like:
To output a tarball and metadata files with automatically-generated names in a directory, specify the name of an existing directory, or a directory to be created with a / suffix:
Using a Steam Runtime
Once the runtime is downloaded (and unpacked into a directory, if you used an archive), you can set up library pinning by running the setup.sh script, then you can use the run.sh script to launch any program within that runtime environment.
/rttest’, you could run:
Or to launch Steam itself (and any Steam applications) within your runtime, set the STEAM_RUNTIME environment variable to point to your runtime directory;
Building in the runtime
To prevent libraries from development and build machines ‘leaking’ into your applications, you should build within a Steam Runtime chroot environment or container.
To obtain one, first find an appropriate directory in https://repo.steampowered.com/steamrt-images-scout/snapshots/. The versioned directory names correspond to the version.txt found in official Steam Runtime builds, typically ubuntu12_32/steam-runtime/version.txt in a Steam installation: you should usually choose a build environment whose version matches the Steam Runtime bundled with the current Steam release, or a slightly older version.
Each directory also contains various other archive and metadata files, and a sources/ subdirectory with source code for all the packages that went into this Steam Runtime release.
or for a 32-bit environment,
Docker images for the scout steam runtime can be downloaded from https://gitlab.steamos.cloud/steamrt/scout/sdk
Alternatively, you can use Debian’s schroot tool (this is likely to work best on Debian or Ubuntu machines). setup_chroot.sh will create a Steam Runtime chroot on your machine. This chroot environment contains the same development libraries and tools as the Docker container. You will need the ‘schroot’ tool installed, as well as root access through sudo.
For a 64-bit environment, use a command like:
or for a 32-bit environment,
Both roots can co-exist side by side. 32 bit steam-runtime libraries are installed into the i386 root, and 64 bit steam-runtime libraries are installed into the amd64 root.
Once setup-chroot.sh completes, you can use the schroot command to execute any build operations within the Steam Runtime environment.
The root should be set up so that the path containing the build tree is the same inside as outside the root. If this path is not within the current user’s home directory tree, it should be added to /etc/schroot/default/fstab
Then the next time the root is entered, this path will be available inside the root.
The setup script can be re-run to re-create the schroot environment.
Using a debugger in the build environment
For example, with Docker, you might unpack the tarball in /tmp/scout-dbgsym-0.20191024.0 and use something like:
or with schroot, you might create /var/chroots/steamrt_scout_amd64/usr/lib/debug/ and move the contents of files/ into it.
By default, a build environment is created that contains:
Switching default compilers can be done by entering the chroot environment:
Steam это проприетарное ПО цифрового распространения компьютерных игр и программ для PC с поддержкой Linux, принадлежащее компании Valve, известному разработчику компьютерных игр. Он упакован для Debian в non-free
Графика
Некоторые игры будут нормально работать с вашими текущими настройками, другие могут требовать обновления драйверов для получения максимальной производительности, а некоторые могут отказаться работать без обновленных драйверов. Определите, какое графическое оборудование вы используете и прочитайте соответствующий раздел для AMD/ATI graphics или Nvidia graphics.
Подготовка
Полномочия пользователя
Самый первый пользователь системы созданный при установке Debian имеет по умолчанию доступ ко всем группам «video», «audio», «cdrom», «scanner» и т.д. Однако если вы собираетесь запускать Steam с другими пользователями то убедитесь то, что они хотя-бы принадлежат к группам «video» и «audio» иначе Steam не запуститься.
Установка
На данный момент пакеты доступны для Debian 8 «Jessie», Stretch и Sid.
Пакет не доступен для выпуска (Debian 7 «Wheezy»); если вы хотите запустить Steam на Debian 7 «Wheezy», вы должны либо использовать jessie chroot (посмотрите на schroot для этого), либо обновиться до Jessie.
64-битные системы (amd64)
Инструкции только для Jessie и Sid выпусков. Не делайте это на Wheezy, вы можете сломать вашу систему.
Добавьте «non-free» компонент в /etc/apt/sources.list, например:
Включите Multi-Arch и обновите список доступных пакетов:
Installing the 32-bit OpenGL libraries may uninstall the 64-bit drivers you may have previously installed. Installing the AMD graphics or NVIDIA graphics drivers for your system is recommended. The appropriate OpenGL library will be installed along with those drivers. If you installed these drivers from jessie-backports be sure to also install the 32 bit library from jessie-backports.
Для видеокарт Nvidia:
Для видеокарт ATI/AMD:
32-битные системы (i386)
Инструкции только для Jessie и Sid выпусков. Не делайте это на Wheezy, вы можете сломать вашу систему.
Добавьте «non-free» компонент в /etc/apt/sources.list, например:
Обновите список доступных пакетов:
Неполадки
Проблемы с запуском Steam
Steam устанавливается с некоторыми определенными версиями библиотек («Steam Runtime»), чтобы эмулировать среду Ubuntu 12.04 в более поздних версиях Ubuntu.
Однако некоторые из этих библиотек могут конфликтовать с теми версиями, которые включены в Debian (например с библиотеками драйверов, в частности, с открытым исходным кодом драйвера ATI).
Вариант: удалить файлы из Steam Runtime
Вы можете удалить библиотеки, которые были установлены вместе с Steam. Тогда будут использоваться ваши системные библиотеки (которые были установлены с помощью apt-get).
Примечание: Каждый раз после обновления Steam эти библиотеки будут опять устанавливаться и вам придется их каждый раз удалять пока не починят этот баг (https://github.com/ValveSoftware/steam-runtime/issues/13). Т.е. после обновления Steam, вы должны будете выйти из него, удалить библиотеки, и заново запустить Steam.
Данные команды удалят библиотеки из-за которых возникает проблема запуска Steam на Debian:
Если вы оказались на этой Steam странице, то скорее всего удаление выше предоставленных библиотек исправит вашу ошибку.
Вариант: не использовать Steam Runtime
Если вы запустите Steam с
то он не будет использовать свою среду выполнения и будет использовать системные библиотеки. На Stretch, вам необходимо установить следующие пакеты, чтобы использовать этот метод:
Также необходимо сделать ссылку:
Потому что в настоящий момент файл libudev.so.0 недоступен в Debian. Если этого не достаточно, то в будущем можно будет использовать это
чтобы найти недостающие зависимости для steamclient.so, или если есть другие библиотеки Steam *.so, который не удается загрузить (вместо steamclient.so нужно будет написать проблемную библиотеку). Чтобы найти пакеты, содержащие зависимости, используйте поиск пакетов Debian на http://packages.debian.org.
Нет звука в игре
Вам нужно удалить alsa-lib и libasound.so.* в
Steam Store и Community Pages не отображается
Запустите Steam из терминала
При попытке открыть страницу магазина терминал должен вывести:
Это означает, что у вас не установлен 32-битный пакета libgpg-error0.
Устанавливаем нужный пакет:
Game Fails to Launch: (Steam Works)
Решение #1: Похоже, при использовании драйвера nvidia 367.44 напрямую steam ломается. Он просто не запускает игру без libgtk-2.0-0:i386 (dependency).
Устанавливаем нужный пакет:
Решение #2: The Steam Game Folder needs x+ (exec) (If you copied from a remote location it may of removed permissions)
Убедитесь, что игры внутри /home/ /.steam/steam/steamapps/common/ имеют права на выполнение (+x), для стартовый скриптов. Некоторые работают самостоятельно, через сценарий оболочки, в то время как другие игры запускают ярлык. The launcher has to be +x for the game to work.
Steam linux runtime что это
Введение
Steam для Linux доступен для всех пользователей Steam. Учитывая тот факт, что каталог поддерживаемых на Linux игр растёт, а группа сообщества Steam для Linux очень активна, настало время портировать вашу игру на Linux.
Разработка игры на Linux может вызвать определенные трудности у разработчиков, хорошо знакомых с разработкой на Windows или macOS. Следующая информация поможет вам успешно портировать вашу игру в Steam для Linux.
Подготовка к работе
Сборка игры на Linux требует:
Инструменты Linux
Число инструментов разработки на Linux огромно, начиная от разнообразных интерфейсов командной строки и заканчивая интегрированными средами разработки с графическими интерфейсами. Следующая информация основана на опыте команды разработчиков на Linux, работающих в Valve.
Для тех, кто больше всего знаком со средствами разработки на Windows, простейшим решением будет использовать Visual Studio на Windows вместе с WinGDB — расширением Visual C++, которое позволяет отладку удаленных процессов Linux, используя интерфейс отладки Visual Studio.
API для Linux
Vulkan — предпочтительная библиотека для высокопроизводительной графической визуализации. Это открытый аналог DirectX12 и Metal.
OpenGL является устаревшим стандартом графической визуализации. Большинство игр напрямую вызывают OpenGL, но есть и другие игры, которые используют метод перевода, который заключается в том, что устаревший код визуализации переводится в вызовы OpenGL. Этот подход использовался для таких старых игр на движке Source, как Team Fortress 2 и Counter-Strike: Source. Если для вашей игры вы выберете OpenGL, рекомендуем использовать основные функции OpenGL 3.0.
Simple DirectMedia Layer (SDL) 2.0 помимо прочего предоставляет низкоуровневый доступ к работе с аудио и окнами. Поддержка 3D-визуализации осуществляется с помощью OpenGL. Инструкции по установке можно найти здесь. Документация и подробная информация представлены на wiki-странице проекта. Valve использует SDL в Steam и большинстве наших игр для работы с окнами. SDL также предоставляет серверную поддержку для API ввода Steam.
Репозитории GitHub
Частые вопросы
В. Моя игра на Linux зависит от многих внешних библиотек. Как решить эту проблему?
О. Многие популярные библиотеки, такие как SDL, OpenAL, FreeType и Fontconfig для вашего удобства включены в Steam Linux Runtime. Если ваша игра зависит от других библиотек, которых нет в Runtime, но они распространяются свободно, пожалуйста, сообщите о них в разделе обсуждений разработчиков Steamworks по Linux и SteamOS.
В. Поддерживается ли Steam DRM на Linux?
О. Да! Новый инструмент DRM drmtoolp поддерживает Linux. Дополнительная информация доступна в разделе Steam DRM.
В. Чем отличается производительность драйверов для Ubuntu и для Windows?
О. Если говорить о стабильности, производительности и наборе характеристик, проприетарные драйверы Nvidia сравнимы с версией для Windows. Проприетарные драйверы как AMD, так и Intel также доступны, но их текущие показатели стабильности и производительности ниже, чем аналоги для Windows.
Что касается производительности Linux, то она зависит от того, какие видеокарты и какие типы драйвера используются (открытые или проприетарные). Обычно проприетарные драйверы показывают лучшую производительность по сравнению с открытыми и имеют больший набор функций. Кроме того, производительность проприетарных и открытых версий драйверов зависит от их возраста, который может различаться.
Steam linux runtime что это
Введение
Steam для Linux доступен для всех пользователей Steam. Учитывая тот факт, что каталог поддерживаемых на Linux игр растёт, а группа сообщества Steam для Linux очень активна, настало время портировать вашу игру на Linux.
Разработка игры на Linux может вызвать определенные трудности у разработчиков, хорошо знакомых с разработкой на Windows или macOS. Следующая информация поможет вам успешно портировать вашу игру в Steam для Linux.
Подготовка к работе
Сборка игры на Linux требует:
Инструменты Linux
Число инструментов разработки на Linux огромно, начиная от разнообразных интерфейсов командной строки и заканчивая интегрированными средами разработки с графическими интерфейсами. Следующая информация основана на опыте команды разработчиков на Linux, работающих в Valve.
Для тех, кто больше всего знаком со средствами разработки на Windows, простейшим решением будет использовать Visual Studio на Windows вместе с WinGDB — расширением Visual C++, которое позволяет отладку удаленных процессов Linux, используя интерфейс отладки Visual Studio.
API для Linux
Vulkan — предпочтительная библиотека для высокопроизводительной графической визуализации. Это открытый аналог DirectX12 и Metal.
OpenGL является устаревшим стандартом графической визуализации. Большинство игр напрямую вызывают OpenGL, но есть и другие игры, которые используют метод перевода, который заключается в том, что устаревший код визуализации переводится в вызовы OpenGL. Этот подход использовался для таких старых игр на движке Source, как Team Fortress 2 и Counter-Strike: Source. Если для вашей игры вы выберете OpenGL, рекомендуем использовать основные функции OpenGL 3.0.
Simple DirectMedia Layer (SDL) 2.0 помимо прочего предоставляет низкоуровневый доступ к работе с аудио и окнами. Поддержка 3D-визуализации осуществляется с помощью OpenGL. Инструкции по установке можно найти здесь. Документация и подробная информация представлены на wiki-странице проекта. Valve использует SDL в Steam и большинстве наших игр для работы с окнами. SDL также предоставляет серверную поддержку для API ввода Steam.
Репозитории GitHub
Частые вопросы
В. Моя игра на Linux зависит от многих внешних библиотек. Как решить эту проблему?
О. Многие популярные библиотеки, такие как SDL, OpenAL, FreeType и Fontconfig для вашего удобства включены в Steam Linux Runtime. Если ваша игра зависит от других библиотек, которых нет в Runtime, но они распространяются свободно, пожалуйста, сообщите о них в разделе обсуждений разработчиков Steamworks по Linux и SteamOS.
В. Поддерживается ли Steam DRM на Linux?
О. Да! Новый инструмент DRM drmtoolp поддерживает Linux. Дополнительная информация доступна в разделе Steam DRM.
В. Чем отличается производительность драйверов для Ubuntu и для Windows?
О. Если говорить о стабильности, производительности и наборе характеристик, проприетарные драйверы Nvidia сравнимы с версией для Windows. Проприетарные драйверы как AMD, так и Intel также доступны, но их текущие показатели стабильности и производительности ниже, чем аналоги для Windows.
Что касается производительности Linux, то она зависит от того, какие видеокарты и какие типы драйвера используются (открытые или проприетарные). Обычно проприетарные драйверы показывают лучшую производительность по сравнению с открытыми и имеют больший набор функций. Кроме того, производительность проприетарных и открытых версий драйверов зависит от их возраста, который может различаться.