[Guide] Steam Installation Tutorial

Steam Installation Tutorial

For this tutorial I opted by using nala so please do:

sudo apt install nala -y #do your operations with nala instead of apt
(It’s faster - It’s modern - It’s graphically easier - Has better debug)
If this command doesn’t work try the legacy installation:

#Legacy Installation
sudo apt update && sudo apt install git make python3-pip python3-apt python3-debian pandoc -y 
git clone https://gitlab.com/volian/nala.git
cd nala
sudo make install
sudo nala update && sudo nala upgrade -y
cd

Installing Dependencies

First we need to install some dependencies that are required by Steam. Use the following lines:
Find your DRK version here -box86/docs/COMPILE.md at master · ptitSeb/box86 · GitHub

sudo dpkg --add-architecture armhf
sudo mv /usr/share/doc/linux-libc-dev/changelog.Debian.gz /usr/share/doc/linux-libc-dev/changelog.Debian.gz.old
sudo nala update && sudo nala install libgtk2.0-0:armhf libsdl2-image-2.0-0:armhf libsdl1.2debian:armhf libopenal1:armhf libvorbisfile3:armhf libgl1:armhf libjpeg62:armhf libcurl4:armhf libasound2-plugins:armhf libc6-dev-armhf-cross git cmake gcc-arm-linux-gnueabihf libncurses6:armhf libc6:armhf libx11-6:armhf libgdk-pixbuf2.0-0:armhf libstdc++6:armhf libsdl2-2.0-0:armhf libsdl-mixer1.2:armhf libpng16-16:armhf libcal3d12v5:armhf libsdl2-net-2.0-0:armhf libvorbis-dev:armhf libudev1:armhf libgl1-mesa-dev:armhf  libx11-dev:armhf libsmpeg0:armhf libsdl2-mixer-2.0-0:armhf cabextract libappindicator1 libnm0 libtcmalloc-minimal4 binfmt-support liblttng-ust-dev libcairo2:armhf libgmp10:armhf libvulkan1:armhf libudev-dev:armhf libsdl2-dev libpng-dev:armhf libcups2:armhf libcups2 -y && sudo nala upgrade -y

#Next we’re going to install Box64. Paste the following lines in your terminal:

git clone --depth 1 https://github.com/ptitSeb/box64
mkdir -p box64/build; cd box64/build
# DRK needs to be set for your specific CPU!
cmake .. -DRK3588=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j$(nproc) #automatically uses all your cores
sudo make install

#We also need Box86:

cd ~
git clone --depth 1 https://github.com/ptitSeb/box86
mkdir -p box86/build; cd box86/build
# DRK needs to be set for your specific CPU!
cmake .. -DRK3588=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j$(nproc) #automatically uses all your cores
sudo make install

Fixing missing packages:

cd /usr/lib/arm-linux-gnueabihf/
sudo ln -s  libpng16.so libpng12.so.0

That’s it for the dependencies! Before you continue you should reboot the device with:

Install Steam

First we need to configure the environment for Steam. Use the following lines to add two environment variables to your Linux environment:

echo 'export STEAMOS=1
export STEAM_RUNTIME=1
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1' | sudo tee /etc/profile.d/steam.sh

#if you have a high resolution screen use this instead
#echo 'export GDK_SCALE=2' | sudo tee -a /etc/profile.d/steam.sh
source /etc/profile.d/steam.sh

Next we’re going to use Box86’s install_steam.sh script like this:

cd ~/box86
./install_steam.sh
steam #just wait.

Installation is now finished EnJoy!

Final Steps we need for ChromiumOS (FydeOS/openFyde):

Ctrl alt t - Open Crosh via Chromium Browser

vsh termina
lxc config set penguin security.privileged true
lxc restart penguin

Now on penguin terminal do sudo su to be on Root! not just sudo and type:

sudo su
tail -n 1 /etc/binfmt.d/box86.conf > /proc/sys/fs/binfmt_misc/register
tail -n 1 /etc/binfmt.d/box64.conf > /proc/sys/fs/binfmt_misc/register
exit #leave root
steam

For all games set settings to -force-opengl and maybe install proton experimental like always… after installing steam perform a steam restart bugs may follow and retry is key.

All credits for this magical addition goes to @andrebraga !! :beer: :beer:

https://streamable.com/bnczfz


Alternatively if you can use the NicoD Script (Optional might not work of ChromiumOS):

    _   __ _               ____     ______                   _                  
   / | / /(_)_____ ____   / __ \   / ____/____ _ ____ ___   (_)____   ____ _    
  /  |/ // // ___// __ \ / / / /  / / __ / __ `// __ `__ \ / // __ \ / __ `/    
 / /|  // // /__ / /_/ // /_/ /  / /_/ // /_/ // / / / / // // / / // /_/ /     
/_/ |_//_/ \___/ \____//_____/   \____/ \__,_//_/ /_/ /_//_//_/ /_/ \__, /      
    __     _                        _____              _         __/____/       
   / /    (_)____   __  __ _  __   / ___/ _____ _____ (_)____   / /_            
  / /    / // __ \ / / / /| |/_/   \__ \ / ___// ___// // __ \ / __/            
 / /___ / // / / // /_/ /_>  <    ___/ // /__ / /   / // /_/ // /_              
/_____//_//_/ /_/ \__,_//_/|_|   /____/ \___//_/   /_// .___/ \__/              
                                                     /_/                        
git clone https://github.com/NicoD-SBC/armbian-gaming.git
cd armbian-gaming
/bin/bash ./armbian-gaming.sh

More info here: GitHub - NicoD-SBC/armbian-gaming: Tool to install gaming apps on Armbian Linux/Ubuntu/Debian arm64

2 Likes

Counter Strike Source runs at 27 fps which is… incredible :joy:


Half Life 2 Deathmatch at a ‘steady’ 30 fps

khadas@Khadas:~$ steam
steam.sh[11435]: Running Steam on ubuntu 22.04 64-bit
steam.sh[11435]: STEAM_RUNTIME is enabled by the user
setup.sh[11497]: Steam runtime environment up-to-date!
steam.sh[11435]: Can't find 'steam-runtime-check-requirements', continuing anyway
/home/khadas/.local/share/Steam/steam.sh: line 792: /home/khadas/.local/share/Steam/ubuntu12_32/steam: cannot execute binary file: Exec format error

i get this error when trying to open it

You most likely failed some step. Did this yesterday and it was working.
Edit: Try again if you need help join here Discord