The Linux compatibility thread!
The Unity update has fixed the mouse axis scaling issue, delete your settings.cfg to fix the mouse zoom or remove the mouse scaling line from the file.
No anti aliasing!, it had to be disabled for AMD in order for KSP to work, and Unity has recently broken AA support for Nvidia, we can still force AA via our graphics drivers settings.
Segfaults!, Meeki has worked out a fix here for 0.22, helps a lot for heavily modded installs, also 0.23 has new offsets, so check out the new instructions here, thanks to MikeAeronautLZ for finding them.
Also, FuzzyLlama has found how to make the above work in Gentoo!
Kelmv has a fix for S3TC textures on Intel cards here.
If KSP crashes when you revert or pause and resume, you can try the fix here, big thanks to Misanthe for working on this one.
KSP can crash on startup on non-Ubuntu systems with a stacktrace in the log, member a.g. has worked out a fix here.
Locked to a resolution/fullscreen mode and unable to change? <Click here> for finding the Unity prefs file.
Want to enable shadows on Linux for Intel Ivy Bridge graphics? Try this.
Oversensitive mouse, often caused by an addon, but also seen on Debian for no known reason.
Some players have reported that the game fails to load past the "Indicator Panel", LC_ALL=C should fix it.
With Unity4 officially supporting Linux, Squad have taken the bold step in offering a Linux build of KSP while the game is still in development.
Linux support is still temperamental and considered "in development" by Unity themselves so there are a few issues to deal with, especially with the 64bit version so if you are having trouble it's worth sticking to the 32bit version of KSP for linux.
The Windows version of KSP does still work in Wine, use the latest versions of wine and PlayOnLinux for best results, see the old Wine thread for more info.
Officially, the Unity Game Engine supports Ubuntu from 12.04 onwards, older versions may fail to run KSP as they may be missing dependencies that they cannot install, and other flavours of Linux may also struggle a bit.
Please note that just because Unity (and KSP) do not support other distro's, does not mean KSP won't work, but also just because it works on Distro X doesn't mean it'll work on yours.
Using the ldd command I have this list of dependencies required by the KSP.x86_64:
If you are using a 64bit distro you may need the 32bit libraries, you can install them on a Debian based distro using "sudo apt-get install ia32-libs"linux-vdso.so.1 => (0x00007fff55cf0000)
libGLU.so.1 => /usr/lib/x86_64-linux-gnu/libGLU.so.1 (0x00007f29e0240000)
libGL.so.1 => /usr/lib/nvidia-experimental-310/libGL.so.1 (0x00007f29dff18000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f29dfbd8000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f29df9c0000)
libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f29df7b0000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f29df5a8000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f29df388000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f29df180000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f29dee78000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f29deb78000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f29de960000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f29de5a0000)
libnvidia-tls.so.310.14 => /usr/lib/nvidia-experimental-310/tls/libnvidia-tls.so.310.14 (0x00007f29de398000)
libnvidia-glcore.so.310.14 => /usr/lib/nvidia-experimental-310/libnvidia-glcore.so.310.14 (0x00007f29dbea0000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f29dbc80000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f29dba70000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f29db868000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f29db660000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f29db458000)
Please note I am using Nvidia, if you are an Ati user or are on a 32bit OS, your required libraries will be slightly different, and by using ldd on each of those dependencies you can find theirs.
Fonts and localisations
KSP on Linux needs the Arial.ttf and ArialB.ttf fonts installed to display correctly, just place these two files in your /home/user/.fonts directory in Debian distro's.
Arch Linux geniuses should check here for where to install their fonts.
OpenSUSE sufferers should look here.
Gentoo compilers here.
Fedora wearers here.
Followers of Slacktivism here.
For all distro's, putting the fonts in /usr/share/fonts should do the trick, also after adding any fonts to a linux system you should run "fc-cache -fv" as this will look in the common font directory(s) and build from there (thanks meeki)
KSP has some issues with some languages that interchange comma's and periods, you can solve this by starting KSP to the LC_ALL=C command:
For 32bit systems
For 64bit systemsLC_ALL=C ./KSP.x86
StoliFlyer has made a small shell script that we can use to start KSP without having to type in LC_ALL=C each time, which was later improved by Ghost99:LC_ALL=C ./KSP.x86_64
Note, getting the Steam version of KSP to work with LC_ALL=C is a little different, please see below.Quote Originally Posted by Ghost99 View Post
Here is universal and simple script for running one of binary, according to user's architecture and with correct locale.
X64_IS_UNSTABLE variable will protect users from running still unstable 64bit version. When 64bit version would be stable (or just for testing), variable can be changed to "no", or just removed.
LANG variable will be used for any binary, launched from current script and will set correct locale for game.
if [[ `arch` == "x86" || $X64_IS_UNSTABLE == "yes" ]] ; then
elif [ `arch` == "x86_64" ] ; then
Important! - There is a new issue where if a player needs LC_ALL=C and starts a new save, the persistent.sfs can be corrupted in exactly the same way that the settings.cfg can be.
Please see here for a fix.
If you use a localisation that suffers from the above your mouse sensitivity can be corrupted, just delete the settings.cfg to fix it.
The Modifier Key (Debug Tools!)
Alt is in use by many Linux distributions for dragging windows, this interferes with the Alt key in KSP so it has been remapped to RightShift, though it is easily mapped back to any key you like in the settings.cfg
The debug log can be accessed with RightShift+F2, the debug tool are available with RightShift+F12
KSP works best with the proprietary graphics drivers for your graphics adapter, if using AMD or Nvidia, the open source drivers can work but are slow and can lack some effects/shaders.
AMD graphics adapters
Unfortunately, anti aliasing does not yet work in Unity with AMD hardware, so until this is fixed we have to put up with a bit of roughness.
You can install the latest stable AMD proprietary driver in Ubuntu 12.10 by first converting the .run file into a .deb with this command:
sudo sh amd-driver-installer-catalyst-13.4-linux-x86.x86_64.run --buildpkg Ubuntu/quantal
Then install the .deb with the following:
sudo dpkg -i fglrx*.deb
Nvidia graphics adapters
The easiest way to install the more up-to-date Nvidia drivers is to add the x-swat repository to the package manager.
You can download the latest drivers for your system from here.
Nvidia's own instructions can be found here.
Xbox controllers actually work very well in Linux, but they do require xboxdrv to be installed.
Where to find the Player.log and KSP.log
As with OSX and Windows, KSP for Linux creates logs of information that we can use for diagnosing faults.
The log Player.log is written to "/home/user/.config/unity3d/Squad/Kerbal Space Program" for both the store version and the Steam version.
The new KSP.log can be found in the "KSP_Linux" folder if using the store version, or the "/home/user/.local/share/Steam/SteamApps/common/Kerbal Space Program" folder if using Steam.
KSP for Linux on Steam
Steam keeps KSP for Linux in /home/user/.local/share/Steam/SteamApps/common/Kerbal Space Program
And can also be found symlinked in /home/user/.steam/steam/SteamApps/common/Kerbal Space Program
Currently, the Steam launcher will only start the KSP.x86 and not the KSP.x86_64, this is due to the still highly experimental nature of the 64bit version.
The Steam version of KSP may also need the LC_ALL=C command, but it's not very reliable to start Steam using it.
Instead you can add the command to the Steam on a per game basis, this is also useful for things like Optirun with Bumblebee.
An elegant solution can be found here thanks to stibbons, just add LD_PRELOAD and __GL_THREADED_OPTIMIZATIONS variables to the "Set Launch Options..." box in the Properties page for KSP
Or try these older commands:
Skarhu informs us that:Code:LC_ALL=C %command%
If you want to start (experimental) 64bit steam version by default just add following line into game launch options:
Don't know where to do this? See here and here.Code:LC_ALL=C %command%_64
DorfKerbin and a team of Redditors have checked a number of addons for compatibility with KSP for Linux, click here for more.
KSP for Windows in Wine
It is still possible to run the Windows version of KSP in the Wine compatibility layer, KSP works best with the rawinput support of Wine 1.5.13 and higher, so make sure you are using the latest version of Wine.
You will need the updated proprietary drivers for your graphics adapter and the Eufonts pack which is part of Winetricks, then KSP for Windows should work fine in Wine.
There won't be joystick support, and shadows can be messed up, but actual game performance can be slightly higher then in the native Linux build, see the old Wine thread for more.