BeamMP Run On Linux Guide 2025

I’m making this post with the intention of having the BeamMP devs chime in with the necessary information and content to get this working in the best way possible at this time.

There are many posts on this forum and other sites with detailed guides on this, however, after requesting support on Discord a few months ago, I was made aware that these methods are outdated and unnecessary. I was presented with a much more simple and straightforward updated solution that worked really well. Unfortunately, the support system was changed and there is no longer public access to people’s queries, so I’m going to go over the steps I remember and let the devs fill in the blanks and provide the necessary content.

If my memory serves me well, these were the instructions I was given. I’m going based on memory, so I could be slightly wrong!

  1. Download the pre-release BeamMP launcher
  2. Extract it to the BeamNG main directory
  3. I’d recommend backing up the main BeamNG executable before renaming the BeamMP launcher to “BeamNG.drive.exe”
  4. Run the game as Vulkan

I’m asking the devs to please chime in, provide the GitHub link to the modified launcher for Linux, and correct any mistakes I made. I understand you don’t want to create an official guide on the main page, but please at least give those who seek a way to get BeamMP working on Linux a method to make it work.

2 Likes

thats actually genius! rename the game’s launcher to the beammp launcher which then launches the BeamNG.drive.x64.exe! i didn’t think about that when i was tinkering with the steam tinkerer! :unamused:

though, i could be wrong, but running the game in vulkan on linux is redundant, it will run in vulkan anyway, no matter what option you will choose!

The link and the explanation

1 Like

there is a tutorial that works perfectly fine for Ubuntu 24.04 even though its meant for 22.04 I’ve used it SO many times to make servers for people who ask
linux and Windows tutorial
just follow it step by step and it should work ask me anything if it doesn’t
the dude who made it is super easy to follow and is very underrated

thank you very much for sharing this information that’s literally not found anywhere else here! :blush:

but as many people will come to try this out natively, there will be questions, and i, too, have one!

how does one clear cache on a native build, when there is no game launcher for it? the launcher, afaik, can only be run via wine/proton/lutris/etc and it only clears its cache for its own prefix, not for the native linux binary which has its separate user folder! there is no mention of this neither in beamng’s documentation nor on the forums! :face_with_raised_eyebrow:

All that matters is that BeamMP/NG doesn’t see a cache folder so it generates a new one, this can be done in one of three ways as I’ve mentioned above.

This is summery contains outdated information

Summary

The clear cache tool just renames the cache folder to 0.33.backup or something similar, there is no fancy cherry-picking going on.

you are incorrect :roll_eyes:. when you press “deep cache cleaning”, it creates a backup of your latest version user folder inside itself called backups/version.pre.0.0xx.x.x/date which is coincidentally in the path of your mods, configs and settings that you are suggesting to delete, move or rename just to CLEAR CACHE. it is then checking for file hash integrity and any misplaced files, which are moved into unknown_files_user_folder. finally, it then proceeds to clear the temp-orary folder, which is the cache itself (where you have confused it for the whole user folder). were you to rename, move or delete your user folder itself, as you correctly mentioned, the game will see it as an invalid user folder, and create a new one as if you had a fresh install. it would then make no sense to overwrite your old renamed user folder with a fresh one, if your problems still persist AFTER having cleared the cache. once again: it does not rename your user folder, it backs some of its contents up, excluding (!) the mods folder, btw. you dont have to misplace a whole user folder just to clear cache, as you mentioned in both of your replies… i, too, sometimes would rather reinstall the whole game than fix one specific problem! :grin:

and thusly i have discovered the answer to my own question, as shrimple as that :shrimp:
i suggest you should rephrase your message accordingly

1 Like

I’m sorry, I didn’t use the tool in a long time and all the while its had several changes.

The core and focus of my replay though answered your initial question (location of cache) and you indeed explained very well how the tool now works. Let’s not lose focus here, as the post was initially made to help users run BeamMP on Linux.

1 Like

also,

a few notes:

  1. it should be mentioned that these instructions work only in vanilla unmodified bash
  2. if you have a Steam Deck with its SteamOS and use it daily as a “portable linux machine” just like me, installing the base-devel package and any other dependency it requires to compile the BeamMP-Launcher binary, can be a problem (notice that it is vcpkg, however we use cmake anyway, it’s a strange mix of windows and linux, but remember that BeamMP is a volunteer project lol!), you will have to make your ENTIRE FILESYSTEM writable/editable, since it’s read-only by default (yes, SD doesnt come with compile tools nor does it come with a user or literally anything that makes linux a LINUX, cos it’s considered a “gaming distro” and not a workstation for you to tinker with, or so they say… big valve L imho, this makes everything harder for everyone). SO, if you’re on Steam Deck and wish to proceed with installing and compiling, as well as getting one step closer to using arch btw, YOU THEN UNDERSTAND THE RISKS OF BRICKING YOUR SYSTEM! please do see this simple guide for SD (1), this github SteamOS issue (2), this alternative reddit tutorial (3) or this 2 years old (!) userspace guide for SD in case you dont want your packages to be removed on every update, with one caveat that you will still need to have them within /usr/lib/ (4)
    :warning: :warning: :warning:
  3. ATTENTION!!! even after you’ve built the launcher binary, it STILL requires compilator libraries to be installed – if one were to delete base-devel after the compilation AND/OR share a binary to another computer that doesnt have base-devel (for example, a Steam Deck) you will still NOT be able to launch it (devs, you need to include such libraries inside the binary and/or link them! shameful, honestly…)
1 Like

12/11/2024 Major Update For The BeamMP Launcher

A mere 6 hours after creating this post a major update dropped for the BeamMP launcher providing full native support for Linux, but only for the uncompiled version. Unfortunately I can’t edit the post so I’ll provide instruction in this comment.

Ignore everything I said above, here all we need to do is compile the launcher so that’s what we’ll focus on.

!! Important for Steam Deck users !!

The general guide starts here

First you need to clone and set up the vcpkg dependency manager. Open the terminal and type these commands

git clone https://github.com/microsoft/vcpkg.git
cd vcpkg && ./bootstrap-vcpkg.sh --disableMetrics

Then run this command

export VCPKG_ROOT="~/vcpkg"
export PATH=$VCPKG_ROOT:$PATH

Now navigate back to the home folder

cd ~

check to make sure you have this dependency

make --version

If you get an error then you need to install it.
Run ONLY the command for your distro or derivative.
Debian sudo apt install build-essential
Fedora sudo dnf groupinstall "Development Tools"
Arch sudo pacman -S base-devel

Next install cmake. Again only use the command for your distro.
Debian sudo apt install cmake
Fedora sudo dnf install cmake
Arch sudo pacman -S cmake

Now with dependency hell out of the way, lets get to the fun stuff where you see lots of test fly up the terminal window like a real cool developer.

Using the terminal clone the BeamMP launcher repo

git clone --recurse-submodules https://github.com/BeamMP/BeamMP-Launcher.git

Navigate into the directory

cd BeamMP-Launcher

Then run this script

cmake -DCMAKE_BUILD_TYPE=Release . -B bin -DCMAKE_TOOLCHAIN_FILE="~/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_TARGET_TRIPLET=x64-linux

If all done correctly you should now see the glorious sight of mesmerizing text flying high up the terminal windows. If not and you didn’t install the package containing make, then do that now and rerun the command. If you did install the package and you still get an error, then I don’t know what you’re missing. Double check the commands you’re using and then request help here.

At last the final command (make sure terminal is in the BeamMP-Launcher directory).

cmake --build bin --parallel --config Release

One cool wall of text later and congratulations! you’ve successfully compiled the BeamMP launcher. It is located in ~/BeamMP-Launcher/bin/

This launcher can be run from anywhere and the folder of cache that it creates (also used for mods) is located at ~/.local/share/BeamNG.drive/

I hope this helps. Enjoy!

1 Like

I compiled the BeamMP executable but the game crashes on launch. The steam version (normal and vulkan) works fine so I dont know where is the problem with this BeamMP linux version.

This is the beamMP logs:

[19/11/2024 13:26:51] [INFO] Mod caching directory: ./Resources
[19/11/2024 13:26:51] [INFO] BeamMP Launcher v2.3.2
[19/11/2024 13:26:52] [INFO] Launcher version is up to date
[19/11/2024 13:26:52] [INFO] IMPORTANT: You MUST keep this window open to play BeamMP!
[19/11/2024 13:26:52] [INFO] Game Version : 0.33.3.0
[19/11/2024 13:26:52] [INFO] Game user path: /home/fairplex/.local/share/BeamNG.drive/0.33/
[19/11/2024 13:27:06] [ERROR] Game Closed! launcher closing soon
[fairplex@archlinux ~]$

@scrollcaps @Linda420 I have moved this topic into the FAQ category. The FAQ category is locked so it will prevent this post from getting lost in the sea of people asking us why they can’t log in while already being logged in.

okay, very interesting, what does it say in the game crash logs in your user folder and is it possible if you could just manually ./BeamNG.drive.x64 and see its output in the terminal?

:skull:Moved us back to support because being in the FAQ requires reply approvals.

1 Like

There we go, that’s better

After testing further, the issue seems to be that the BeamMP launcher starts the Vulkan version of the game, which dosn’t work correctly under wayland.

Is there a way to change the default version of BeamMP?

1 Like

oh, this is a known issue… :sob::sneezing_face:

totally forgot, THIS IS EXTREMELY IMPORTANT TO UNDERSTAND!

:warning: :warning: :warning:

for example, in Steam Deck’s gaming mode, which is using wayland (with one caveat that happened with a recent beta update that overrides something-something, i forgot lol), if you were to try launching the NATIVE BeamNG binary from
~/.local/share/Steam/steamapps/common/BeamNG.drive/BinLinux/BeamNG.drive.x64
it then hilariously launches it in 1x1 pixel resolution. but then in its desktop mode, which has kde and xwayland, that can run both X11 and wayland apps, the game runs absolutely fine! :blush:

this is because the game itself, BeamNG, was coded for X11 window system ONLY. but of course, obviously, other PROPERLY CODED games, any software, actually, unlike beamNG, DO WORK as intended! :astonished: :exploding_head: i know, i know, those are very shocking news to all the fanboys of this game, but trust me, this is just the tip of the iceberg of the problems that beamNG has. the devs are simply using a very outdated code (for EVERYTHING). i have been criticising their dev team decisions ever since they switched engines and i have come to realise that people love this game because it is awful, at the same time when others want features that they will never get… this is where my frustration comes from, sorry. anyway, there is NOTHING you can do about this, it simply just does NOT tell your window system what resolution to use, therefore it does NOT support bare wayland. except you probably could quite literally switch to xwayland or, if you’re nasty, to X11, just to play the game

:smiley: :+1:

here’s instructions how to use the native beammp with the proton beamng in case your native vulkan beamng doesnt launch:

This isn’t a fortune 500 company, no need to take the piss. Wayland itself still has many bugs so I can’t blame them for focusing on other things and waiting for it to fully bake. Yes the Steam Deck uses Wayland, but that’s not used as a desktop, it has a lot stripped out of it. You can use Wayland like a Windows user (little to no modifications) and probably get by mostly fine, but that’s not the point, try get your hands dirty and Wayland will be dirty.

Ok I understand your frustation. But we know that the game works fine if:

  • Ran using Direct3D, on both X11 and Wayland
  • Ran using Vulkan, on X11 only

So as we have to compile BeamMP ourself from the source, there should be a way to tell BeamMP to run the game with Direct3D instead of Vulkan which is experimental. To me its more like a mistake to make Vulkan the default version of BeamMP launcher.

of course it does! its only vulkan that doesnt… :sweat_smile: you can symlink your native path to the proton (direct3d) version. the link to the instructions for that are in my previous comment, but here it is again anyway :+1:

hopefully you’ll get it running!

Everything is laid out in detail since I had to solve the exact same issue. Running DirectX BeamNG on Linux without Proton/Wine is sadly impossible.

Please check my topic if you need help running BeamMP under DirectX.