LinuxCommandLibrary

steam

Run the Steam game client

TLDR

Launch Steam, printing debug messages to stdout

$ steam
copy

Launch Steam and enable its in-app debug console tab
$ steam -console
copy

Enable and open the Steam console tab in a running Steam instance
$ steam steam://open/console
copy

Log into Steam with the specified credentials
$ steam -login [username] [password]
copy

Launch Steam in Big Picture Mode
$ steam -tenfoot
copy

Exit Steam
$ steam -shutdown
copy

SYNOPSIS


steam [options]
steam [steam_uri]


The steam command initiates the Steam client application. It can be invoked without options to simply launch the graphical interface, or with specific options to control its behavior, or with a Steam URI to directly perform actions like launching or installing a game.

PARAMETERS

-bigpicture
    Launches the Steam client directly into Big Picture mode, optimized for TV screens and gamepads.

-console
    Enables the in-client developer console, useful for debugging and advanced commands.

-dev
    Activates developer mode features within the client.

-forcedesktopui
    Forces the client to open in standard desktop UI mode, even if Big Picture mode is configured as default.

-login user pass
    Attempts to log in to Steam with the specified username and password (use with caution due to security implications).

-shutdown
    Shuts down a running Steam client instance.

steam_uri
    Executes a Steam Uniform Resource Identifier, such as steam://run/<appid> to launch a specific game by its AppID, or steam://install/<appid> to begin its installation. This is a common argument pattern.

DESCRIPTION

The steam command launches the official Steam client, a widely popular digital distribution platform for video games developed by Valve Corporation. On Linux, it provides access to a vast library of games, including those natively supported by Linux, as well as Windows-only titles through Steam Play and Proton compatibility layer. The client allows users to purchase, download, and manage games, connect with friends, join communities, and access various Steam services like the Workshop and community marketplace. Its introduction significantly boosted the viability of Linux as a gaming platform, offering a unified and user-friendly experience for acquiring and playing games.

CAVEATS

Running steam on Linux often requires up-to-date graphics drivers (both open-source and proprietary) for optimal performance. Disk space requirements can be substantial due to large game files. Compatibility issues, especially with older hardware or specific Linux distributions, may arise. Performance with Proton can vary, and not all Windows games are fully compatible or perform optimally.

STEAM PLAY AND PROTON

The steam client on Linux leverages Steam Play, a feature that allows Windows-only games to run on Linux. This is primarily achieved through Proton, a compatibility layer based on Wine and a set of custom patches and performance enhancements developed by Valve. Proton handles DirectX and other Windows-specific APIs, translating them to Vulkan and Linux equivalents, enabling a vast majority of the Steam catalog to be played directly on Linux without manual configuration.

HISTORY

The steam client officially arrived on Linux in 2012, initially supporting a limited number of native Linux games. This marked a significant push by Valve into the open-source ecosystem, followed by the development of SteamOS and the Steam Machine initiative. A pivotal moment was the introduction of Steam Play and the Proton compatibility layer in 2018, which dramatically expanded the library of playable Windows games on Linux, making Steam a dominant force in Linux PC gaming.

SEE ALSO

wine(1), lutris(1), gamemode(7)

Copied to clipboard