u/RrOoSsSsOo

Steam native ARM (aarch64) on Asahi Linux (Fedora Remix)
▲ 147 r/AsahiLinux+2 crossposts

Steam native ARM (aarch64) on Asahi Linux (Fedora Remix)

Guide to run a Steam native ARM (aarch64) on Asahi Linux (Fedora Remix)

  1. Download the official ARM64 archive (the URL is periodically updated by Valve with new builds):

wget https://client-update.steamstatic.com/bins_linuxarm64_linuxarm64.zip.0f11199e9a58a0ec4aab3833152ada1b2e56c846 ; mv bins_linuxarm64_linuxarm64.zip.0f11199e9a58a0ec4aab3833152ada1b2e56c846 bins_linuxarm64_linuxarm64.zip

  1. Extract the client by placing the steamrtarm64 folder in the correct path:

mkdir -p ~/.local/share/Steam/
unzip bins_linuxarm64_linuxarm64.zip -d ~/.local/share/Steam/

  1. Enable public beta: Create the configuration file to force the update of the correct packages:

mkdir -p ~/.local/share/Steam/package && echo publicbeta > ~/.local/share/Steam/package/beta

  1. Assign execution permissions, also for execution:

chmod -R u+rwx ~/.local/share/Steam/steamrtarm64/

  1. Fix libvpx dependency on Fedora (Asahi/Fedora specific to avoid crashes on startup):

sudo ln -s /usr/lib64/libvpx.so.9 /usr/lib64/libvpx.so.6

  1. Also create the folder in the Home and the links:

mkdir -p ~/.steam
ln -s ~/.local/share/Steam ~/.steam/steam
ln -s ~/.local/share/Steam ~/.steam/root
ln -s ~/.local/share/Steam/linuxarm64 ~/.steam/sdkarm64

  1. Install the dependency for libgtk-x11:

sudo dnf install gtk2

  1. Install only fex-emu , avoid sudo dnf install steam since it is still an x86_64 package:

sudo dnf install fex-emu

  1. On other Distros the command to start the client would be:

~/.local/share/Steam/steamrtarm64/steam

BUT on Asahi and its 16 kB memory pages size, at least until Valve compiles its Steam Client natively with support for 16kB memory pages, the muvm is necessary to convert from 4 kB executable (and avoid the SIGSEGV Address boundary error):

muvm ~/.local/share/Steam/steamrtarm64/steam

Yes huge performances will be lost...

(10. If it doesn't work:)

(Add -no-cef-sandboxparameter)

Notes:

  • Kernel 6.19.14
  • BigPicture not work well as classic interface
  • I have IPv6 deactivated

Guide inspired by https://interfacinglinux.com/community/sbcsoftware/native-steam-client-for-arm-linux

u/RrOoSsSsOo — 12 hours ago

Steam native ARM (aarch64) on Asahi Linux (Fedora Remix)

https://preview.redd.it/o7iidj7pzn2h1.png?width=3022&format=png&auto=webp&s=36b95fe63d7abf614426741529f8a91778822880

Guide to run a Steam native ARM (aarch64) on Asahi Linux (Fedora Remix)

  1. Download the official ARM64 archive (the URL is periodically updated by Valve with new builds):

wget https://client-update.steamstatic.com/bins_linuxarm64_linuxarm64.zip.0f11199e9a58a0ec4aab3833152ada1b2e56c846 ; mv bins_linuxarm64_linuxarm64.zip.0f11199e9a58a0ec4aab3833152ada1b2e56c846 bins_linuxarm64_linuxarm64.zip

  1. Extract the client by placing the steamrtarm64 folder in the correct path:

mkdir -p ~/.local/share/Steam/
unzip bins_linuxarm64_linuxarm64.zip -d ~/.local/share/Steam/

  1. Enable public beta: Create the configuration file to force the update of the correct packages:

mkdir -p ~/.local/share/Steam/package && echo publicbeta > ~/.local/share/Steam/package/beta

  1. Assign execution permissions, also for execution:

chmod -R u+rwx ~/.local/share/Steam/steamrtarm64/

  1. Fix libvpx dependency on Fedora (Asahi/Fedora specific to avoid crashes on startup):

sudo ln -s /usr/lib64/libvpx.so.9 /usr/lib64/libvpx.so.6

  1. Also create the folder in the Home and the links:

mkdir -p ~/.steam
ln -s ~/.local/share/Steam ~/.steam/steam
ln -s ~/.local/share/Steam ~/.steam/root
ln -s ~/.local/share/Steam/linuxarm64 ~/.steam/sdkarm64

  1. Install the dependency for libgtk-x11:

sudo dnf install gtk2

  1. Install only fex-emu , avoid sudo dnf install steam since it is still an x86_64 package:

sudo dnf install fex-emu

  1. Start Steam by going to the native folder, currently you need to use muvm to convert memory pages from 16 kB of Asahi to 4 kB:

muvm ~/.local/share/Steam/steamrtarm64/steam

(10. If it doesn't work:)

(muvm ~/.local/share/Steam/steamrtarm64/steam -no-cef-sandbox)

Notes:

  • Kernel 6.19.14
  • BigPicture not work well as classic interface
  • I have IPv6 deactivated

Guide inspired by https://interfacinglinux.com/community/sbcsoftware/native-steam-client-for-arm-linux

reddit.com
u/RrOoSsSsOo — 1 day ago