Skip to content
Snippets Groups Projects
Commit 2e1fc9e2 authored by Simon McVittie's avatar Simon McVittie
Browse files

docs: Update text regarding sniper

parent 7f857732
No related branches found
No related tags found
No related merge requests found
......@@ -43,6 +43,8 @@ when necessary.
Steam Linux Runtime 3.0, `sniper`,
is the recommended runtime environment for new native Linux games on Steam.
It can be used by any game that benefits from a newer library stack
or SDK environment.
It is a newer runtime than
[scout][ldlp], based on Debian 11 (released in 2021).
......@@ -56,15 +58,25 @@ sniper is designed to be used as a container runtime for `pressure-vessel`,
and [cannot be used](#why) as a
[`LD_LIBRARY_PATH` runtime][ldlp].
Native Linux games that require sniper can be released on Steam.
Since October 2024, this is available as a "self-service"
feature via the Steamworks partner web interface, which can be used by
any game that benefits from a newer library stack.
Early adopters of this mechanism include
[Retroarch][] since [August 2022][Retroarch on sniper],
[Endless Sky][] since [early/mid 2023][Endless Sky on Sniper] and
[Dota 2][] since [mid 2023][Dota 2 sniper],
For backwards compatibility,
the default runtime environment for existing native Linux games is
[Steam Linux Runtime 1.0 (scout)][scout-on-soldier].
To opt-in to using sniper,
app and game developers should compile their titles in the
[sniper SDK][]
and reconfigure the title's metadata to ask Steam to run it with
Steam Linux Runtime 3.0 (soldier).
For more information please see
[Steam Linux Runtime - guide for game developers][SLR for game developers].
Games that use sniper include Valve's
Counter-Strike 2,
Dota 2 and
Team Fortress 2,
and third-party titles like
Battle for Wesnoth,
Endless Sky and
Retroarch.
sniper is also used as a runtime environment for Proton version 8.0 and up,
which are compiled against the newer library stack and would not
......@@ -241,14 +253,14 @@ contributed to the Linux kernel.
[Dota 2 scout SLR]: https://store.steampowered.com/news/app/570/view/4978168332488878344
[Dota 2 sniper]: https://mastodon.social/@TTimo/110578711292322771
[Dota 2]: https://store.steampowered.com/app/570/Dota_2/
[Endless Sky on sniper]: https://github.com/ValveSoftware/steam-runtime/issues/556
[Endless Sky]: https://endless-sky.github.io/
[Flatpak]: https://flatpak.org/
[Retroarch on sniper]: https://github.com/libretro/RetroArch/issues/14266
[Retroarch]: https://www.retroarch.com/
[SLR for game developers]: slr-for-game-developers.md
[Steam Runtime issues]: https://github.com/ValveSoftware/steam-runtime/issues
[Ubuntu]: https://ubuntu.com/
[bubblewrap]: https://github.com/containers/bubblewrap
[ldlp]: ld-library-path-runtime.md
[libcapsule]: https://gitlab.collabora.com/vivek/libcapsule
[pressure-vessel]: pressure-vessel.md
[sniper SDK]: https://gitlab.steamos.cloud/steamrt/sniper/sdk/-/blob/steamrt/sniper/README.md
......@@ -68,23 +68,37 @@ scout.
[Steam Runtime version 3, codenamed sniper][sniper],
is the first such runtime available to developers of native Linux games
on Steam.
It is based on Debian 11 (2021).
Native Linux games that require sniper can be released on Steam.
Since October 2024, this is available as a "self-service"
feature via the Steamworks partner web interface, which can be used by
any game that benefits from a newer library stack.
To use this feature, your app must first set up a Launch Option that
supports Linux.
It can be used by any game that benefits from a newer library stack
or SDK environment,
and is based on Debian 11 (2021).
Most of its libraries are taken directly from Debian, and can benefit
from Debian's long-term security support.
Selected libraries that are particularly important for games, such as
SDL and Vulkan-Loader, have been upgraded to newer versions backported
from newer branches of Debian.
Games that target sniper should be compiled in the [sniper SDK][].
For backwards compatibility,
the default runtime environment when configuring a game in the Steamworks
partner web interface is
[Steam Linux Runtime 1.0 (scout)](#scout).
To opt-in to using sniper,
your app must first set up a Launch Option that supports Linux.
Once that is set up, you can use the Installation → Linux Runtime
menu item to select a runtime.
This can be done during initial setup for an unreleased game,
or as part of an update from a version that targeted scout to a
newer version that targets sniper.
Early adopters of this mechanism included
[Battle for Wesnoth][Wesnoth on sniper],
Games that use sniper include Valve's
Counter-Strike 2,
Dota 2,
[Endless Sky][Endless Sky on sniper] and
[Retroarch][Retroarch on sniper].
Dota 2 and
Team Fortress 2,
and third-party titles like
Battle for Wesnoth,
Endless Sky and
Retroarch.
#### <a name="soldier"></a>Native Linux games targeting Steam Runtime 2 'soldier'
......@@ -1245,11 +1259,9 @@ advanced utilities might not be present.
[Debian Policy]: https://www.debian.org/doc/debian-policy/ch-files.html#scripts
[Debian's /etc/bash.bashrc]: https://sources.debian.org/src/bash/5.1-2/debian/etc.bash.bashrc/
[Docker]: https://www.docker.com/
[Endless Sky on sniper]: https://github.com/ValveSoftware/steam-runtime/issues/556
[Linux joystick implementation in SDL]: https://github.com/libsdl-org/SDL/blob/main/src/joystick/linux/SDL_sysjoystick.c
[Podman]: https://podman.io/
[Proton documentation]: https://github.com/ValveSoftware/Proton/
[Retroarch on sniper]: https://github.com/libretro/RetroArch/issues/14266
[SDL_GetPrefPath]: https://wiki.libsdl.org/SDL_GetPrefPath
[Steam Cloud API]: https://partner.steamgames.com/doc/features/cloud
[Steam Input]: https://partner.steamgames.com/doc/features/steam_controller
......@@ -1257,7 +1269,6 @@ advanced utilities might not be present.
[Steam support documentation]: https://help.steampowered.com/
[Toolbx]: https://containertoolbx.org/
[Verify integrity]: https://help.steampowered.com/en/faqs/view/0C48-FCBD-DA71-93EB
[Wesnoth on sniper]: https://github.com/ValveSoftware/steam-runtime/issues/508#issuecomment-1147665747
[add a Steam Library folder]: https://help.steampowered.com/en/faqs/view/4BD4-4528-6B2E-8327
[basedirs]: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
[compatibility tool interface]: steam-compat-tool-interface.md
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment