A partially open-source Steam client for Linux.
- 64-bit (but needs 32-bit only steamservice for some functionality)
- Lightweight (around 70MB ram use)
- No steamwebhelper requirement
- All games supported (technically)
- VAC supported (you can play, but you might get banned. We're not responsible if you get banned.)
- Customize as you wish (Uses your desktop's color scheme)
- Wayland supported without need for XWayland
- Uses Qt (6)
- Everything marked
//TODO
in the code - A better logo (I'm not a graphic designer)
- Login is a bit janky
- User switcher
- Global settings
- Update steamclient binaries
- UI is pretty crude
- UI is unstyled
- Lots of debug and placeholder things in UI
- Download queue
- Missing "critical" features like Friends and game artwork
- Steam cloud not supported yet
- Shader management not supported yet
Please note that the downloads tab doesn't currently list games.
-
Arch Linux
-
Ubuntu 23.04 (Lunar Lobster) or newer
-
Any other distro with Qt6 6.4.2 or greater
Warning: These releases (currently) are only meant for developers. There is an uncountable amount of bugs I've yet to fix.
- Download the deb from the Releases
- Double click or install through the command line
- You're set! Now launch OpenSteamClient through your application launcher, or use the terminal:
opensteam
After installation, read After Install
We provide an AUR package:
opensteam-git
Install it through makepkg or your AUR helper. Use your application launcher to start it, or run opensteam
in a terminal.
Then read After Install
Note: you shouldn't start the official steam client now as it'll override our files and break both installs. Read Restoring ValveSteam below if you want to use the official client again.
-
Make sure you have the build dependencies installed.
-
Clone this repo recursively
git clone https://github.com/20PercentRendered/opensteamclient --recursive
-
mkdir build && cd build
-
cmake ..
-
make
-
Make sure steam is not running.
-
./opensteam
-
OpenSteamClient will be installed and launched.
If you wish to revert back to the official client, first:
- Close OpenSteamClient
- Launch
opensteam
with the--bootstrapper-restore-valvesteam
option.
Although all the technologies we use are cross platform, windows support is not planned.
This is a GUI for Valve's own Steam Client binaries like steamclient.so
and steamservice.so
.
Those binaries are not open source and Valve doesn't officially support 3rd-party usage of these.
This also means we inherit design choices and potential bugs from these files.
Due to this, we cannot fix everything, such as the client not conforming to the XDG paths specification.
Additionally, Valve does not provide any headers or code to go along with these binaries, so this project essentially works because of guesswork by lots of community members and projects (Thank you!) (such as open-steamworks, open-steamworks fork by m4dEngi, SteamTracking, protobufs dumped from the steam client and MiniUTL).
The repo includes a copy of steam_client_ubuntu12.vdf
, which shows the version and has download paths for the binaries.
The urls point to regular zip files, just use unzip
.
Delete ~/.local/share/opensteam and try again. Also check that you have a PC that meets the requirements. Also, run OpenSteamClient from the terminal and post the logs in a Github issue clearly describing your situation.
The client was made on Arch Linux, for Arch Linux (primarily), so I used whatever features were available.