To install steam i visited the website and downloaded the .deb
file, then i installed that onto my system using nala. Which is just a front-end for apt. Then i installed beamng.
What exactly does the launcher say?
kriss@cypher:~/Downloads/-$ ./BeamMP-Launcher
./BeamMP-Launcher: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by ./BeamMP-Launcher)
./BeamMP-Launcher: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by ./BeamMP-Launcher)
./BeamMP-Launcher: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by ./BeamMP-Launcher)
I’ve tried installing these manually, but this didnt change.
Did you compile the launcher yourself?
I found that in some github issue that someone else compiled. I made an attempt to compile one earlier, so im getting help from one of the contributors for that.
What exactly does the launcher say?
Oh there’s so much back and forth with launchers. It just doesnt find the path of the game. Here’s the output:
00e0:err:winediag:ntlm_check_version ntlm_auth was not found. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
00e0:err:ntlm:ntlm_LsaApInitializePackage no NTLM support, expect problems
[10/2/2025 17:37:11] [INFO] Mod caching directory: ./Resources
[10/2/2025 17:37:11] [INFO] Wine/Proton Detected! If you are on windows delete HKEY_CURRENT_USER\So
ftware\Wine in regedit
[10/2/2025 17:37:11] [INFO] Applying patches...
[10/2/2025 17:37:11] [INFO] Patched!
[10/2/2025 17:37:12] [INFO] Launcher version is up to date. Latest version: 2.4.0
[10/2/2025 17:37:12] [INFO] IMPORTANT: You MUST keep this window open to play BeamMP!
[10/2/2025 17:37:12] [ERROR] Failed to find the game please launch it. Report this if the issue per
sists code 4
kriss@cypher:~/.steam/debian-installation/steamapps/common/BeamNG.drive$
I figured i could post here since i got it working. This post did the trick!
Make sure you’re using the native linux launcher.
yeah no. compilators and other dependencies are not included which are required by
BeamMP-Launcher
for it to be launched, were you to get the pre-compiled binary from “somewhere else”. if you just simply don’t have them - you’re not gaming. which is, uhm, a bummer, because you probably hold beamMP in high regard and dont expect it to… literally be inconvenient as much as possible on linux, haha. you just have to have them installed on your system, always, as if you were to compile the binary yourself, fully prepared. hey, wis, you gotta do something about this, we’re, like, losing people playing natively… anyway, i had the same error on my steam deck when i shared it to other computer. you’re definitely missing something, as did i. i dont believe zorinOS comes with compilator tools preinstalled, so yeah, do that. you have to install the package, through a terminal, and NOT a file or an .so library you found on the internet (unless you… did do the package thing and it still didnt work, well, im sorry, you will probably have more chances on any other distro besides, uhm,
ubuntu
, so consider that). so why don’t you, heh, give it another try, eh?
anything native always beats the slow ahh donkey proton by performance, right?.. or you can keep playing via proton. your choice. it’s just… slower. that’s all, really. i’m so tired…
I mean, I suppose it can be compiled statically but that would make it really big. Other than that there’s not really a way to force all distros to have the same versions of the launcher’s dependencies. Tho I suppose a few github actions could be setup to compile the launcher for various different distros.
yeah. there should be a way to let people compile BeamMP-Launcher
STATICALLY. nevermind the size, it’s not that bad if you strip it of debug symbols (strip BeamMP-Launcher
) - which, btw, should also be in the instructions. besides, having beamMP launch on ANY distro using its OWN (baked) libraries is always a plus, like an .appimage
file. it eliminates all kinds of problems one might have new to the linux world. it also allows people to share the binary to any computer that doesnt have the dependencies! which probably makes it possible to have a maintainer, someone who compiles it for everyone to download on github. personally, i find that more important than caring about its size…
You should already be able to compile the launcher statically using CMake. I suppose the size difference will be negligible with modern drive sizes but still something to consider.
That’s pretty much what an app image is, granted in this case it’s more of a plugin to the main app, though I wander what BeamNG does as it comes with one binary for all distros.
Either way if size is a concern then just three binaries for main distros and anyone using a derivative can use it or compile themselves if on an obscure distro.
Make sure you’re using the native linux launcher.
I’m afraid i am not. I am using the windows version of the BeamMP launcher. I found it way too much tinkering to be able to compile a native linux version for Beam MP launcher. As a user of beam mp, it is way too much work for the end-user to compile your software so that i can play.
I understand your idea of compiling so that you’re sure that users has all the dependencies needed, but this is too much.
I’ve been developing a client-side application for another game for a few years now where it hooks onto the game to fetch certain data, and what i did was to wrap the libraries i used inside the .exe
. I am by no means an expert in c++, so i wouldn’t know whats stopping you from doing the same.
I suppose what you also could do is to create a shell script linux-deps.sh
that installs all the dependencies the application requires. Once done they can just run the application.
I don’t understand how you can be developing software and not know the basics of building/compiling.
Even so the instructions I gave are very straightforward making your struggle even more puzzling. It’s literally two commands, the rest is guiding you making sure you have have the dependencies.
done all that and the beamng launcher pops up for a second and then goes away…?
addendum to installing all the compilers and launching beamMP & beamNG on nixOS - an FHS non-compliant declarative distro… though SOME OF THIS can be applied to other distros as well.
- download
vcpkg
. do not try to install it assystemPackages
(a package)!
cd Downloads
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
- inside of the freshly cloned
vcpkg
folder there will be ashell.nix
FHS shell environment. get inside. (NOT required for NON-NIXOS distros)
nix-shell shell.nix
- bootstrap and disable
vcpkg
telemetry (garbage)
./bootstrap-vcpkg.sh --disableMetrics
- your
vcpkg
is ready. now, downloadBeamMP-Launcher
.
cd ..
git clone https://github.com/BeamMP/BeamMP-Launcher.git
cd BeamMP-Launcher
- proceed with compilation (may take a while).
NOTE1: use the recently cloned toolchain path!
NOTE2: you must STILL be inside an FHS! (NOT required for NON-NIXOS distros)
NOTE3: this is assuming you havex86-64
architecture. change accordingly…
CHOOSE ONE:
cmake . -B bin -DCMAKE_TOOLCHAIN_FILE="~/Downloads/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_TARGET_TRIPLET=x64-linux
^ debug version (developer)
cmake -DCMAKE_BUILD_TYPE=Release . -B bin -DCMAKE_TOOLCHAIN_FILE="~/Downloads/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_TARGET_TRIPLET=x64-linux
^ normal version (performance)
AND!
cmake --build bin --parallel
- finally, strip the binary of debug symbols for better performance:
cd bin
strip BeamMP-Launcher
…you may leave the FHS now!
- (OPTIONAL) install ‘gamemode’ to MAXIMISE performance and launch beamMP via
gamemoderun ./BeamMP-Launcher
(beamNG will also receive optimisations as it is a part of the context that beamMP launches)
and you’re ready to play! you may place BeamMP-Launcher
binary on your ~/Desktop
for convenience.
next is technical information…
now, you may have noticed that nixOS does not allow to execute dynamically linked binaries because it is an FHS non-compliant distro. and even if you DO manage to somehow launch it, you will face this message (not exclusive to nixOS):
SSL certificate problem: certificate rejected
curl: (60) SSL certificate problem: certificate rejected
(also code 77!)
this is because $CURL_CA_BUNDLE
, $SSL_CERT_FILE
and NIX_SSL_CERT_FILE
are not set to "/etc/pki/tls/certs/ca-bundle.crt"
, "/etc/ssl/certs/ca-bundle.crt"
and "/etc/ssl/certs/ca-bundle.crt"
respectively, which your system (and every other) comes with preinstalled. EDIT1: wrong and outdated. beamMP certs have been updated. the problem was that your (freshly updated) system-wide certificate bundle did not have the root certificates that beamMP uses, which are by cloudflare from 2007, so they were rejected. if you are still having certificate issues, update (as in repeat all of the compilation steps again) the client and/or the system. EDIT2: as of 2025-06-05
, they are no longer being rejected, but are of invalid_purpose
anyway, i have tried the next steps to launch beamMP natively on nixOS: nix-shell
(as with any attempt at introducing FHS into nixOS, certificates do not work. see HERE and HERE), nix-ld
(only managed to launch beamNG), nix-alien
(same as nix-ld
, but was useful to find, download & link missing packages & libraries), buildFHSUserEnv
(beamMP screams at curl
& openssl
certificates being rejected with code 60 and 77)…
EDIT: perhaps these methods could work, but think about what you are doing: you are essentially creating a system within a system, with its own package list, which is not really an abstraction anymore, i think…
tl;dr
IN SHORT, only podman
with distrobox
worked reliably (and natively). ■■■■, honestly, why havent i tried this before?
once again, containers ARE NOT virtualisation. you DO NOT emulate a single ■■■■ with it. it is properly native (and isolated, therefore secure)! this is why you use linux (probably)… oh and by the way, there is no GUI, so you’re not downloading the whole ■■■■.
configuration.nix
:
# ...
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
};
};
environment.systemPackages = [
pkgs.distrobox
# pkgs.podman-tui # optional
# pkgs.distrobox-tui # optional
];
# ...
- download and install any distro of your choice (
archlinux
,fedora
,debian
,ubuntu
, etc.):
distrobox create --name archlinux --init --image archlinux:latest
(also try :stable
version!)
FEDORA because (as of right now, MAY 2025) arch has a ■■■■■■ up .crt
bundle, which is good and bad simultaneously. literally just visit the main page of this forum, everyone is whining about beammp not working on arch linux lmao. but seriously, if you did not notice yet, BeamMP-Launcher
is a dynamically linked binary, and it is using system-wide certificates, which may or may not be TOO FRESH, TOO NEW for beamMP to “handle”, so a bunch of ■■■■■■■ idiots here (jk) proposed to DOWNGRADE CA BUNDLES a little while ago, compromising your privacy and your security (they could connect to your smart TV!). what one should propose instead is to have beamMP being PACKAGED AND/OR COMPILED STATICALLY, preferrably with a maintainer, because, lets be real, this is pretty annoying, right?
REDACTED as outdated. TLS & SSL root certificates were UPDATED as of 2025-06-04… EDIT: invalid_purpose
moment
- enter container:
distrobox enter archlinux
- cd to beamNG binary to download ANY and ALL missing libraries:
cd ~/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux
…
./BeamNG.drive.x64
…
(arch):
sudo pacman -S fontconfig nss at-spi2-atk cups libxcomposite libxdamage libxrandr libxkbcommon pango alsa-lib
(fedora):
sudo yum install libatomic fontconfig nss at-spi2-atk cups libXcomposite libXdamage libXrandr alsa-lib
…
(package names may vary). NOTE: this is a bare minimum for beamNG. you MAY NOTICE font issues, such as this.
- ONCE beamNG launches and performs well, try starting up beamMP:
./path/to/BeamMP-Launcher
when it launches, it will probably open beamNG in a black screen. that is how podman do on wayland. it cant see the context between these two applications. the solution is to log into an X11 session (i used leftwm btw). EDIT1: do not enable window swallowing for your terminal (i.e. on hyprland). IF POSSIBLE, play beamNG/beamMP in a wayland environment. it handles memory allocation better than X11, which has constant memory leaks and loss of frames! EDIT2: nevermind, i was correct. it is an X11 moment indeed
and there you go. beamNG and beamMP on nixOS. it’s very dirty. but you wanted to! i dont think you trust… in… my… self-righteous nixOS guide… i… cry… when root certificates havent been updated since 2007!!!
P.S. if you are having the…
sudo: /etc/sudo.conf is owned by uid 1000, should be 0
…error, then you will have to completely nuke everything (including deleting all of the containers) with:
podman system reset
what I dont really understand:
debian stable uses ca-certificates 20230311
fedora 42 uses ca-certificates 2024.2.69_v8.0.401
why exactly is it an issue for you to downgrade them on arch to 20240618-1 ?
okay. perhaps fedora is a bit more conservative on which CA’s certificates to expire, to consider outdated. not surprising… but thank you for comparing these versions. very interesting!
remember: root certificates come pre-installed with your system and your browser of choice (exception: google chrome) - people have decided that this is a good idea a little over 15-20 years ago, just for you (■■■■■■■ hell, remember web 1.0 on pure http? they say it’s insecure, but in my mind - it’s the most trustworthy, realest ■■■■. matter of fact, if you wanna really reminisce, remember that shift in the internet when websites moved from http to https? i was like, what the heeeeell no wayayayay!!! they added an extra s to my http!!!). those certificates may or may not be NEWER or OLDER than the ones that beamMP uses, and, UNFORTUNATELY, beamMP is using one of those root certificates issued by CLOUDFLARE from 2007! and if you know how root certificates work (or cloudflare), you cant do ■■■■ about it until you bribe those capitalist pigs. i simplify this a lot, but all of this is very very technical (im lazy to explain this tbh ngl idgaf). anyway, this is why arch linux has these problems - YOUR system’s .crt bundles are different from those that were provided to beamMP! (EDIT: and they had no choice!)
one way to mitigate (NOT FIX!) these TLS and SSL issues is to compile beamMP STATICALLY, which i have been raving about for a little while… iirc, Wis told me that it is already possible, there is just no guide (?)
this is completely out of my depth, by the way, i just know that there is an invisible entity that shakes all the hands for us digitally, but sometimes your computer doesnt have hands, and instead tries connect to a server with a leg, and/or vice versa. don’t mind me…
oh, it is an issue to downgrade certificates because you are exposing yourself to outdated and very dangerous (so they say) certificates that can install bonzi on your computer!!! and they are pretty dangerous, because they are your system-wide certificates, not the browser’s - two different things. knowing the certificate keys, one can gain access to all of your traffic via an SSL tunnel. in this sense, linux reacts faster to potential cyber attacks (via unauthorised handshakes) than windows, because micro$oft doesnt give a ■■■■ about windows or your security… they literally got a system made out of legacy code on top of modern code, like, come the ■■■■ on. but sure, whatever. i say yolo. ■■■■ it. downgrade the ca bundle just for the ■■■■ of playing beammp… lol. it just seems a little overkill, isnt it? just use a container, ffs.
im sure nothing will happen knowing this information but… dont panic just yet lol
good news!
WiserTixx (no ping) told me that the cloudflare root certificates got FINALLY updated (since 2007)!
no more (hopefully) TLS, SSL and security issues from now on…
this (obviously) applies both to windows, linux and macos.
EDIT1: nevermind… i still get the same rejection (60) error code. FOR ■■■■■ SAKE
EDIT2: BAD NEWS! we are now using a certificate with an “unsuitable certificate purpose” aka invalid_purpose
, which means that ONE OF THE CERTS does not accept SSL client
traffic… wis is probably scratching their head rn.
ONCE AGAIN, use podman
with fedora:latest
to launch beamMP, it works for me, it will work for you. instructions above