• Linux experimental branch has no servers "Need Steam to refresh servers!"
    125 replies, posted
I see the game client finally loads in Linux but there hasn't been any servers in the list and the console just says "Need Steam to refresh servers!". I'm seeing all kinds of great things in the playrust blog/etc but can't see any of it for myself because I'm in Linux :(
Why does the forum seem to think that you're on Win7?
Because I'm using a user-agent override (lets me watch Netflix with Pipelight)
Interesting... I was just curious. I always wanted a way to watch Netflix on Linux. Thanks! :zoid:
[QUOTE=Sievers808;44880720]Interesting... I was just curious. I always wanted a way to watch Netflix on Linux. Thanks! :zoid:[/QUOTE] lol Its a bit off topic, but yea look up how to install "Pipelight" on your distro. Then just use a user-agent override to get past the unsupported OS message. BTW, are you using Linux right now? Seeing same problem with experimental branch of Rust?
No, I haven't even tried getting into the exp branch yet, much less on Linux. Kind of holding off on Rust until the exp branch is either very close to done or switched to production. I usually have Fedora or Ubuntu on dual-boot but I recently wiped my PC and haven't taken the time to set it all back up yet, really just a fun side project for me to learn. Also I'm on my work PC... games on this would not bode well with Meraki breathing down my neck all day. :tinfoil:
I'm a distro hopper myself. I usually end up back in Ubuntu though. Lately I keep going to SteamOS and Manjaro to check on their progress. But I've been hopping around for about 14 years (I remember the early Red Hat back when it was free). Ubuntu appears to have the best support all around. I depend on Steam for my games now. So far I'm much more pleased with the overall system stability compared to my old Windows setup. In Linux an application rarely causes a systemwide crash. Its almost always recoverable if something goes wrong. If something goes wrong in Windows... hang on to your butts.
I'm still having the same problem when loading the experimental branch in Linux. The client loads up but the servers still can't be refreshed properly. Console still says I need Steam. Any progress on this bug?
[QUOTE=lee8oi;44895610]I'm still having the same problem when loading the experimental branch in Linux. The client loads up but the servers still can't be refreshed properly. Console still says I need Steam. Any progress on this bug?[/QUOTE] I also have the same problem. I'm running Arch Linux 64 bit and I can play the production branch just fine. F1 pops up the console that just says "rust. Need Steam to refresh servers!" and none of the tabs will have any servers on the list. It also says "REFRESHING..." at the bottom with no change.
I have the same issue on 64 bit Arch Linux. I tried putting the app id in the rust folder, to no avail. Perhaps we can join directly if someone could share the ip of an experiemental server that was joined from a different OS. Either way, this appears to be an issue with rust and the steam api/runtime on linux.
The issue here is with the location of the SteamNative library. If you can do some research and find out why it's not finding it, or why it's not loading it.. that will help me out a lot
[QUOTE=garry;44924418]The issue here is with the location of the SteamNative library. If you can do some research and find out why it's not finding it, or why it's not loading it.. that will help me out a lot[/QUOTE] We're on it, boss. Linux user power activate!
Seems that rust doesn't play well with gdb. How unfortunate. A quick scan for steam related libaries being loaded by rust revealed only this: /opt/SteamApps/common/rust/rust_Data/Managed/System.Runtime.Serialization.dll For clarity, /opt is where my steam library resides. Anyway, this probably doesn't show us much. Must keep searching. Off topic: It seems that the 64 bit client of rust for linux is "working" now, unlike before.
[QUOTE=garry;44924418]The issue here is with the location of the SteamNative library. If you can do some research and find out why it's not finding it, or why it's not loading it.. that will help me out a lot[/QUOTE] That is what I get in my log when is start rust.x86 -logFile: [QUOTE]Fallback handler could not load library /home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Mono/x86_64/.//home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Plugins/x86/libSteamNative.so Fallback handler could not load library /home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Mono/x86_64/lib/home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Plugins/x86/libSteamNative.so Fallback handler could not load library /home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Mono/x86_64/./lib/home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Plugins/x86/libSteamNative.so Fallback handler could not load library /home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Mono/x86_64/lib/home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Plugins/x86/libSteamNative.so[/QUOTE] I made a symbolic link of /home in "rust_Data/Mono/x86_64" in such a way that /home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Mono/x86_64/.//home/xavier/.local/share/Steam/SteamApps/common/rust/rust_Data/Plugins/x86/libSteamNative.so would exist but is still not loaded by rust :(
Maybe I've solved this. The libsteam_api.so library is 64-bit (as ldd shows long addresses) while Rust always run as 32-bit. I use Debian Jessie amd64 but Steam always run rust.x86 no matter what. So it just can't load the library. I copied this file from Painkiller Hell & Damnation (32-bit version) and servers have shown up. The game freezes on connect (unsurprisingly, since it's a crude hack; the same library from another game causes crash on launch and all these libs have different sizes) but at least it's something. I can run rust.x86_64 manually but it also doesn't show servers because it can't find the Steam runtime. There are ways of running games with the runtime manually but I'm too lazy to check them out. Anyway, the solution is simple: either replace the library with a 32-bit counterpart or make a short script to detect the arch and run the appropriate executable. And move the library somewhere like rust_Data/Plugins/<arch> or such.
agreed. linked libsteam_api.so from Portal 2 and it showed servers for me as well-
FWIW, renaming (or linking) rust.x86_64 to rust.x86 doesn't solve anything. It runs fine from Steam but servers aren't shown and the message about Steam is there. It's like it can't load this exact library no matter what. I'm trying other versions from other games, some of them crash Rust, some work to the said extent (the game freezes on connect anyway). Well, that's a start.
Found this in ~/.local/config/unity3d/Facepunch Studios/PlayRust/Player.log (edited to simplify paths): [code]dlopen failed trying to load: ~/.local/share/Steam/linux32/libsteam.so with error: ~/.local/share/Steam/linux32/libsteam.so: cannot open shared object file: No such file or directory[/code] Which seems to confirm Gary's post, I think. On my system, there is no libsteam.so at that location, but copying it there did not make a difference. I tried copying libsteam.so into the same folder as rust but that didn't made a difference either. I still have some more things to try. EDIT: Didn't see the last few posts at the time I wrote this.
The right path should be ~/.config/unity3d/Facepunch Studios LTD/Rust/Player.log BTW, there's a real mess with architectures there. rust_Data/Plugins/x86_64/libSteamNative.so and rust_Data/Plugins/x86/libSteamNative.so are identical and both 32-bit. That's probably why the 64-bit version doesn't show servers either. I do: [CODE]mv rust.x86 rust.x86.bak ln -s rust.x86_64 rust.x86[/CODE] Then launch it via Steam. Lots of lines: [CODE]Fallback handler could not load library /opt/SteamLinux/SteamApps/common/rust/rust_Data/Mono/x86_64/.//opt/SteamLinux/SteamApps/common/rust/rust_Data/Plugins/x86_64/libSteamNative.so Fallback handler could not load library /opt/SteamLinux/SteamApps/common/rust/rust_Data/Mono/x86_64/lib/opt/SteamLinux/SteamApps/common/rust/rust_Data/Plugins/x86_64/libSteamNative.so Fallback handler could not load library /opt/SteamLinux/SteamApps/common/rust/rust_Data/Mono/x86_64/./lib/opt/SteamLinux/SteamApps/common/rust/rust_Data/Plugins/x86_64/libSteamNative.so Fallback handler could not load library /opt/SteamLinux/SteamApps/common/rust/rust_Data/Mono/x86_64/lib/opt/SteamLinux/SteamApps/common/rust/rust_Data/Plugins/x86_64/libSteamNative.so [/CODE] Can't say for sure but I doubt that a 32-bit library can be loaded by a 64-bit process.
[QUOTE=AmShaegar;44925384]agreed. linked libsteam_api.so from Portal 2 and it showed servers for me as well-[/QUOTE] Does not work for me. Using Ubuntu 12.04 32bit
[QUOTE=rkfg;44925742]The right path should be ~/.config/unity3d/Facepunch Studios LTD/Rust/Player.log[/QUOTE] I had both Facepunch Studios and Facepunch Studios LTD. The LTD folder was older, so I ignored it. For anyone moving, copying, and/or linking to launch 64 bit rust on steam, you can instead set the launch options for rust within steam to:[code]%command%_64[/code] So the overall issue seems simple: libsteam_api.so is 64 bit, libSteamNative.so in x86_64 is 32 bit (I know other people in this thread found this first, I am just confirming). That explains why it won't work. When using 32 bit rust, libsteam_api.so is not compatible. When using 64 bit rust, libSteamNative.so is not compatible. This is probably a relatively quick fix for Facepunch, possibly just need to adjust some build scripts.
[QUOTE=HER0_01;44926090] So the overall issue seems simple: libsteam_api.so is 64 bit, libSteamNative.so in x86_64 is 32 bit (I know other people in this thread found this first, I am just confirming). That explains why it won't work. When using 32 bit rust, libsteam_api.so is not compatible. When using 64 bit rust, libSteamNative.so is not compatible. This is probably a relatively quick fix for Facepunch, possibly just need to adjust some build scripts.[/QUOTE] Sounds simple enough. Now to wait for Garry to investigate further. Maybe we'll finally get to play with experimental in Linux soon. Or at least be one step closer to it :)
I posted this in the bug reports forum just before the responses started coming in. I've done some poking around as well and I'm anxiously waiting to see when this will be fixed.
I'll get on this today
A bit disappointed that the person who just summed up what I found got all the recognition... Good news that it's being worked on though.
I threw some new x64 dlls on, let me know if it's any better
Did a fresh install of Rust experimental via Steam. Still unable to refresh servers. Linking Portal 2 libsteam_api.so helps but the game still crashes on connect.
[QUOTE=garry;44940137]I threw some new x64 dlls on, let me know if it's any better[/QUOTE] Still no servers.
libsteam_api.so is still 64-bit without alternatives. libSteamNative.so has proper versions now but without appropriate libsteam_api.so it's a no go anyway.
Rust 64 bit shows servers now. Because my internet is not the greatest, I cannot test further at the moment. I will test 32 bit in a minute, but I don't think it will work since libsteam_api.so is still only found in 64 bit, as far as I can tell. EDIT: Just confirmed that 32 bit has the same symptoms as before. Which I don't mind so much because everyone with the capable hardware should probably use 64 bit anyway...but it should still be fixed. Also, I never wanted to make it seem like I am trying to steal the show from rkfg. We had the same conclusions and (s)he deserves credit too.
Sorry, you need to Log In to post a reply to this thread.