Jump to content

The Linux compatibility thread!


Recommended Posts

Regarding the Modifier key, is there a way to remap it to the Super Key(windows key)

Ive tried a few different variables in the settings.cfg but I can't seem to find the right naming convention.

garrett@debian:~$ uname -a

Linux debian 3.12-1-686-pae #1 SMP Debian 3.12.6-2 (2013-12-29) i686 GNU/Linux

Running KDE Desktop, super key is completely unused and would be a lot easier to use instead of having to travel across the keyboard every time i need to duplicate something.

Hoj0 - I also want to change my mod key to super key. I am always throttling up when I want to transfer fuel.

Try "LeftWindows" or "RightWindows", depending upon your preference.

Taking a look at the API, the MODIFIER_KEY is a Keybinding object, which are built with Unity's Event.KeyCode objects, described here. I've never tried that myself (I moved Gnome's "move window" binding to Super, and assigned KSP's modifier to LeftAlt, for consistency with Windows), but I don't see a reason the codes above shouldn't work.

Edited by toadicus
Link to comment
Share on other sites

I note under the latest Nvidia driver that zooming using the scroll wheel is very unreactive (requires much scrolling to get any zoom). Any fixes for this?

Edit: D'oh, right on the OP - deleted settings.cfg and all is well. RTFM...

Edited by colmo
Found solution.
Link to comment
Share on other sites

I am running KSP on archlinux. It has been working just fine but I recently ran into a strange issue which, I think, happened when I upgraded to xorg-server 1.15.0-5. I use XFCE4 which has a built in composting which I like to use. If try to run KSP with the composting on then I see the squad logo on top of my desktop with the loading bar (I could provide a screen shot if nessisary) and in the menus and game things are transparent so that I can see through to my desktop. This issue is very anoying but easy to turn off by disabling composting so it is not a huge deal but it would be nice if it was fixed. I did not used to have this issue.

Hoj0 - I also want to change my mod key to super key. I am always throttling up when I want to transfer fuel.

I have exactly the same problem, did anyone find a solution to this?

Link to comment
Share on other sites

I think I had this, the compositing options allow for transparencies on the entire window, and this effects KSP for some reason, it also causes KSP to run slow.

Check your window transparency sliders.

Also, you can edit the modifier key in the settings.cfg :)

Link to comment
Share on other sites

I have exactly the same problem, did anyone find a solution to this?

It depends on what you call a soultion:


#!/bin/bash

composting=$(xfconf-query -c xfwm4 -p /general/use_compositing)

xfconf-query -c xfwm4 -p /general/use_compositing -s false

./KSP.x86_64

xfconf-query -c xfwm4 -p /general/use_compositing -s $composting

This script disables composting, starts KSP and disables composting after it closes. only works with XFCE4

Link to comment
Share on other sites

My KSP keeps crashing whenever I try to launch or revert to launch, about 50% of the time.

Any hints on what to try?

I have Crunchbang Waldorf(debian-based), upgraded to jessie, fgrlx from debian repos and 3.12 kernel, running KSP.x86_64 binary (.x86 whines about some libraries)

KSP has quite a bit of mods installed (trimmed B9, KW, LLL, Kethane, EL and couple of minor ones), can they be causing it?

Same set of mods work fine on Win8.

Stock KSP works relatively stable though.

Got more time with it and I totally dont understand it.

For a few hours worked absolutely fine (few hours and dozens of launches), then after X crash it returned to crashy self

Now it crashes constantly, 10+ times in a row without anything done, as soon as I try to launch

Edited by Queril
Link to comment
Share on other sites

I'm kind of embarrassed: I've been moaning a lot about even a patched KSP.x86_64 crashing when it hit 4GB of memory usage. Well, today I was trying things out again (thanks to enneract showing me a screenshot of KSP using 13GB of memory) and I managed to spot KSP running 4000000kb of memory on my system (just before trying to start a game). I went to start a new game (because I know resuming would crash KSP) and KSP still crashed. The very suspicious number got me wondering, so I checked ulimit -a: sure enough, virtual memory was limited to 4000000kb.

So... if you still have trouble with 64-bit KSP even after patching, check your resource limits!!!.

Link to comment
Share on other sites

Ran into a nice new issue with Ubuntu yesterday that might effect KSP, seems Canonical are quietly removing 32bit libs from the 64bit repos and that can leave games unable to run after an update.

This hit the dark mod, ran fine until I ran an update then failed to open because it couldn't find libcurl.so.4, only the 64bit version was in synaptic so I had to force a reinstall with "sudo apt-get install curl:i386"

So if you get any sudden issues with KSP 32bit failing to start on a 64bit system, use

ldd KSP.x86 | grep "not found"

to find what's missing, then reinstall it from the terminal with :i386 at the end to get the 32bit version.

Link to comment
Share on other sites

KSP 0.23 64bit

/snip

A few suggestions:

1) Just have it run from the current working directory instead of taking an arguement.

2) Backup the old KSP.x86_64 by moving it somewhere else

3) Use newlines in your echo statements, or use printf(). Either way, it will clean up your code. You might also be able to use heredocs for especially long sections of output. Bash doesn't allow heredocs to be indented, but that shouldn't be too much trouble to work with.

4) Split your code up into functions. Yes, this is a fairly linear script, but abstraction can make a script a little easier to live with.

Link to comment
Share on other sites

Hi,

I am having problems making KSP work. The game launches throwing no apparent errors, and opening a totally black window with the correct icon. After a few moments music starts but the pane remains black. This happens using both KSP.x86 and KSP.x86_64

My system:

Ubuntu 13.10 (64-bit)

Intel i7 4770k

Nvidia GeForce GTX 760 (Using the 331.38 driver)

16 GB RAM

My KSP.log contains the following non-log entries

[WRN 00:46:33.079] The image effect ImageEffects Unity3 (Tonemapping) has been disabled as it's not supported on the current platform.

[WRN 00:46:33.081] The image effect ImageEffects Unity3 (DepthOfFieldScatter) has been disabled as it's not supported on the current platform.

[WRN 00:46:57.575] PartLoader Warning: Variable rotPower not found in Part

[WRN 00:46:57.575] PartLoader Warning: Variable linPower not found in Part

[WRN 00:46:57.575] PartLoader Warning: Variable Kp not found in Part

[WRN 00:46:57.575] PartLoader Warning: Variable Kd not found in Part

[WRN 00:46:57.937] PartLoader Warning: Variable ThermalAnim not found in Part

[WRN 00:46:58.419] PartLoader Warning: Variable animationName not found in Part

[WRN 00:46:58.577] PartLoader Warning: Variable animationName not found in Part

Running ldd on KSP.x86_64 gives:

ldd ./KSP.x86_64

linux-vdso.so.1 => (0x00007fffa25fe000)

libGLU.so.1 => /usr/lib/x86_64-linux-gnu/libGLU.so.1 (0x00007f77878ca000)

libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007f7787668000)

libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f7787332000)

libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f7787120000)

libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f7786f16000)

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7786d11000)

libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7786af4000)

librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f77868ec000)

libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f77865e7000)

libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f77863d1000)

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7786009000)

/lib64/ld-linux-x86-64.so.2 (0x00007f7787b67000)

libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7785d04000)

libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f7785add000)

libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f77858da000)

libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f77856d3000)

libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f77854d1000)

libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f77852ba000)

libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f77850b4000)

libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f7784e95000)

libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f7784c8f000)

libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f7784a82000)

libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f7784878000)

libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f7784673000)

libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f778446d000)

and running it on KSP.x86 gives:

ldd ./KSP.x86

linux-gate.so.1 => (0xf77ad000)

libGLU.so.1 => /usr/lib/i386-linux-gnu/libGLU.so.1 (0xf7708000)

libGL.so.1 => /usr/lib/i386-linux-gnu/mesa/libGL.so.1 (0xf76ac000)

libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf7576000)

libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf7563000)

libXcursor.so.1 => /usr/lib/i386-linux-gnu/libXcursor.so.1 (0xf7558000)

libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7553000)

libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7538000)

librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf752e000)

libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf74eb000)

libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf74ce000)

libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf731a000)

/lib/ld-linux.so.2 (0xf77ae000)

libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf7231000)

libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf7218000)

libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf7214000)

libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf720e000)

libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf720b000)

libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf71f3000)

libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf71ec000)

libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf71ca000)

libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf71c4000)

libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf71b7000)

libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xf71ac000)

libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf71a7000)

libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf71a0000)

I've uploaded my Player.log here:

http://pastebin.com/rp7VdMyk

When I run ./KSP.exe with Wine1.6 I get:

Unable to load mono library from "Z:/home/cbro2r/Documents/KSP/KSP_linux/KSP_Data/Mono/mono.dll" (error = 126).

What could be wrong?

(I've followed all instructions that appear in the first 13 pages and last 6 pages of this thread.)

Link to comment
Share on other sites

@ cbro2r, are you using the proprietary drivers from Nvidia? It definitely sounds like some kind of driver issue with your videocard. What happens when you try to run "glxgears" from the console? Do red, blue, and green gears show up? I have a similar setup (except Fedora) and the game runs beautifully.

Link to comment
Share on other sites

I am using the Nvidia drivers (v. 331.38).

When I run glxgears I do get gears running and the following output:

libGL error: failed to load driver: swrast

Running synchronized to the vertical refresh. The framerate should be

approximately the same as the monitor refresh rate.

351 frames in 5.1 seconds = 68.818 FPS

^C

Link to comment
Share on other sites

I'm running a 64-bit system, and I have both 64 and 32 bit xorg drivers. I haven't forced any driver settings. I can play TF2 with no problems (other than just being really bad at TF2 :P). I don't think I have any 3D games that use wine.

Link to comment
Share on other sites

Hmm, that's a toughy. How are you playing TF2, in the Linux version of Steam? I'm sorry you are having problems my friend. You can easily test to see if 3d games work in WINE by running any DirectX based Windows game. Try the Windows version of KSP in WINE and see if it works. You might try reinstalling your nvidia drivers manually, directly from the site, where you blacklist the old drivers and boot into run level 3 to install the new ones.

Link to comment
Share on other sites

I tried reinstalling the drivers but it didn't work, however when I run the driver installer I used in the first place with the --update flag it magically all worked. Very mysterious. But hey, KSP is actually pretty fun :P.

Link to comment
Share on other sites

Hi all,

Just thought I should throw in my (belated) method to get text to appear on Fedora 20:

wget [url]http://winetricks.org/winetricks[/url]
chmod +x winetricks
./winetricks eufonts

that solved the no text issue for me. Just a observation: I always have trouble installing proprietary drivers, am running on stock drivers and it runs just fine. I reckon at least equivalent to running on M$ windoze :)

Thanks

ttb

Link to comment
Share on other sites

If the default drivers work for you then don't worry about it, we don't have the same security concerns as some other operating systems ;)

And yeah, eufonts is what you need as there's a particular version of the Arial fonts that Unity uses for its default, Arial and ArialBold are also downloadable from the opening post.

Link to comment
Share on other sites

A few suggestions:

1) Just have it run from the current working directory instead of taking an argument.

If you notice its commented out. I use this code to send an argument from the unity Linux compatibility loader I'm still working on.

Funny things happen with unity I'm forced to make a program written in windows work on a Linux system with bash.

2) Backup the old KSP.x86_64 by moving it somewhere else

Important! will fix this issue in the next releases. I was having my Linux compatibility loader do that before the bash is run so I can track it in that and do a roll back if needed. I'll have it do that in the bash as well.

3) Use newlines in your echo statements, or use printf(). Either way, it will clean up your code. You might also be able to use heredocs for especially long sections of output. Bash doesn't allow heredocs to be indented, but that shouldn't be too much trouble to work with.

I'm a fan of newlines \n printf is great for that but for me as a bash nublet of 3 years I got stuck in a habit of echo. I tend to use it for comments :) I also Like to use echo "" as a way to break up my code and what I'm reading. Your right though it would make my code cleaner if i could have a long printf with newlines running across one line rather than echo echo echo.

Just started reading up on this. http://tldp.org/LDP/abs/html/here-docs.html interesting way of doing it. my fave part so far is this "Example 19-8. A script that generates another script" I can see this saving some time in longer code.

4) Split your code up into functions. Yes, this is a fairly linear script, but abstraction can make a script a little easier to live with.

Don't agree. I love functions !!! Here is the one I made for running Linux bash and exe stuff from unity on Linux.

//ExecuteLinuxFile or bash command

//Runs a linux Bash Script or executable file outside of Unity

//

//Paramiters:

//directory, the directory path of the file in relation to $HOME of this application

//filename, the name of the file ... dont forget extention if exzists

//waitforexit, bool value true forces unity to wait for app to exit

public static void ExecuteLinuxFile(string directory, string filename, bool waitforexit) {

Process excute = new Process();

excute.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

excute.StartInfo.CreateNoWindow = true;

excute.StartInfo.UseShellExecute = false;

//In unity

//UnityEngine.Debug.Log ("Fake Running" + filename);

//excute.StartInfo.FileName = "C:\\Windows\\system32\\cmd.exe";

//Linux

excute.StartInfo.FileName = "/bin/bash";

excute.StartInfo.Arguments = directory + filename;

excute.Start();

if(waitforexit)

{

excute.WaitForExit();

}

}

I love one offs as well. The thing is this is a very linear script as you said and is less than a page. If I don't need more than a page of code to get the job done and/or I don't need to do the same thing more than 3 times I tend to skip functions.

Thanks for the pointers I love learning new things.

Meeki

Edited by meeki
Link to comment
Share on other sites

Hello everybody. I seem to be having a problem with the modifier key in .23 on a 64-bit Xubuntu 12.04, namely it doesn't work most of the time (Mod+L does nothing, Mod+rightclicking two tanks just shows the fuel level and does not allow to transfer it). Sometimes I could make it work by quicksaving, restarting the game and loading the save, but then the game starts ignoring the key again. I managed to get around it by using the Ship Manifest mod, but it would still be good to know why this happens.

I also have another issue with a fresh stock .23 install on a laptop running i686 Arch Linux. This one has no problems at all with the mod key, but has the "no text shown" thing, which AFAIK should indicate the lack of Arial and ArialBold fonts, but trying every way known to me of installing them and following the advice in this thread didn't help in any way.

Edited by flashcactus
Link to comment
Share on other sites

Hello. I have three Ubuntu 12.04 machines, and no single machine I have is powerful enough to run KSP. So, I will be trying an experiment: Run KSP on an Ubuntu Kerrighed cluster.

Why do I suspect this will work? Check this out: http://www.kerlabs.com/technology.en.html

Under Single System Image -> Binary Compatibility:

all existing applications running on a Linux machine run on a Kerrighed cluster without any modification. For administators, users and even applications, a Kerrighed cluster is the very same as a regular machine running Linux.

If the above quote is true, then does it not logically follow that if the machines are running Ubuntu 12.04 LTS, then they can run KSP given that they have between them at least one adequate GPU?

Link to comment
Share on other sites

flashcactus, install the Arial and ArialBold fonts available in the opening post, also you can remap the modifier key in the settings.cfg file, see if that helps :)

hounddowg1, that sounds pretty cool, if you get it working can you post a tutorial on how to do it? :)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...