Jump to content

[Linux] LCL - Linux Compatibility Loader 0.0.1


meeki

Recommended Posts

LCL - Linux Compatibility Loader

Aims to be a fix for all your Terminal typing and Patching needs when playing Kerbal in Linux.

For KSP 0.23

32bit Linux Compatibility Loader v0.1.0 [10.86 MB]

https://dl.dropboxusercontent.com/u/12968946/lcl/LCL_x86/LCL_v0.1.0_x86.zip

64bit Linux Compatibility Loader v0.1.0 [11.72MB]

https://dl.dropboxusercontent.com/u/12968946/lcl/LCL_x86_64/LCL_v0.1.0_x86_64.zip

Source Linux Compatibility Loader v0.1.0 [2.45MB]

https://dl.dropboxusercontent.com/u/12968946/lcl/Source/LCL_source_v0.1.0.zip

Licensed under GPLv3 http://www.gnu.org/licenses/gpl-3.0.html

LCL - Linux Compatibility Loader

Is wrote mainly in Unity3D http://unity3d.com with supporting bash script where needed.

What it can do.....

Launch KSP in terminal

LC_All=C: sove language issues

Multi-Arch support: start in 32 or 64 bit

ulimit: solve too many open thread issues

Threaded Opto: Start with nvidia thread off loading to GPU

Select window size: Use a rubberband tool to set window resolution

Delete settings.sfg: enough said

Arial TTF fonts: Will install them for you if you dont have any txt

Segfault Patch: Patches the 64bit KSP binary so it will stop crashing

And with one click open a browser to this thread or the Linux Compatibility Thread

I hope to expand it over time with your suggestions.

HOWTO

Installation

Running it

Extras

Not running in TERMINAL

NOTE!

Things this program does OutSide the KSP Dir

It will install fonts to your font directory if ya ask it to.

Unity puts a log file in tmp dir. I cant control this.

Edited by meeki
Link to comment
Share on other sites

I like what I see so far. What do you have in already?

SegfaultPatch - http://forum.kerbalspaceprogram.com/threads/24529-The-Linux-compatibility-thread!?p=857019&viewfull=1#post857019

Install Ariel Fonts - http://forum.kerbalspaceprogram.com/threads/24529-The-Linux-compatibility-thread!?p=855124&viewfull=1#post855124

A ulimit patch

All these patches are going into the GUI now.

Other stuff it does.

Making Terminal option so you can have KSP loaded from a terminal under the Start Options. That way you can see the output.

Stuff im working on now:

screen resolution:

GUI for changing screen resolution Full or windowed

custom and predefined resoultions with a test box that will popup showing how the new window will look.

Ive finished the C code for the widow box that shows the resolution.

make all this work with steam installs.

KSP DIR Location:

option to select KSP directory to use

Settings.cfg:

one click delete / backup / edit settings.cfg

# Maybe #

Modlister

Ability to show all current mods installed with clickable link to mod homepage

Installer:

Make LCL .deb installer and also a bash installer for non deb guys

Backup Utility:

ability to backup things like your settings.cfg or current quicksaves.

GOT ANY IDEAS?

Link to comment
Share on other sites

If you can make this a linux mod manager you will be loved by all.

I was looking into that! Cool thing about unity is that it lets you load webpage info rather EZ so im thinking about having it download the mod and install it and track it and pull the info from the page and atach it to a array etc. It will get looked into.

So you navigate to the spacehanger website but when you click download its tracked by my program.

Ive only been coding in unity for 2 weeks (C#). I know other languages so i know what to do its just learning the new code reff. I'm going to focus on finishing up the loader then I'll think about tackling a mod system.

I'm still puting about 2 hrs a day into this while on christmas break from the university.

Just finished up geting rid of a bunch of bash script that i called and turned it into unity code. Goal is to have it only use bash scrips for patching if I have to.

Its comming along. Just broke the 1000 lines of code mark :)

Link to comment
Share on other sites

  • 3 weeks later...

Update:

Still working on it ran into some issues that have forced me to start back at square 1.

OnGUI does not work proper in linux. Buttons have click issues. Thanks unity :P

Fix - use onclick insted but I now have to make my gui the long way :( Just got the main menu done again.

Font's looks like the ariel font that comes with unity still plagues linux.

Fix - now using unbuntu fonts and including them in the assets folder so they will compile with my program and not depend on system installed fonts.

Detecting installed copy of kerbal version dang near impossible

Fix - release 2 versions of my Linux Compatibility Loader one for 0.22 and below and one for 0.23 and above. Looks like all new future improvements will take place on the current version of kerbal.

Other issues found but fixed

still pluging away on this.

Learned from the first run and taking the time to make it modular and object based this time. Lots of functions that are one off's

Link to comment
Share on other sites

  • 2 months later...
  • 2 weeks later...

Not working with the steam version. I think this is due to the fact that there are spaces in the path name. The spaces need to be escaped with a \. so .../SteamApps/common/Kerbal Space Program would become .../SteamApps/common/Kerbal\ Space\ Program

Link to comment
Share on other sites

This looks great! I'm pretty new to linux so this should hopefully save me a lot of pain. I have one question though? I downloaded the compatibility loader but when i try to open the LCL in terminal I don't have the option.In open with I get Libre office writer, gedit, and a whole heap of other useless apps, but no terminal. What am I doning wrong?

Link to comment
Share on other sites

Not working with the steam version. I think this is due to the fact that there are spaces in the path name. The spaces need to be escaped with a \. so .../SteamApps/common/Kerbal Space Program would become .../SteamApps/common/Kerbal\ Space\ Program

Can I get your LCL.log file ??? it will be in the dir you ran from It will tell me the path used.

Link to comment
Share on other sites

LOVE it! Looking forward for the next release. Keep good work!

What does threaded optimalization do? Is this the bumblebee thing? Of not is it possible to run KSP though LCL with primusrun?

Is it possible to raise the ulimit size?

Link to comment
Share on other sites

LOVE it! Looking forward for the next release. Keep good work!

What does threaded optimalization do? Is this the bumblebee thing? Of not is it possible to run KSP though LCL with primusrun?

Is it possible to raise the ulimit size?

I wondered this myself. I am pretty sure it is this:

LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 ./KSP.x86_64

However, I did repeat benchmarks in Linux, with the 304 drivers (which supposedly do not even care about these two environment variables) and with the 331 drivers (which supposedly do). Both versions, for both flags: it makes no difference in terms of frames per second. I have Q9550 CPU (quad core) and two GPUs (GTX 470 and a 9800 GT), so there's plenty of multiple cores to go around. No difference.

I have not yet run into any ulimit-based problems that I'm aware of. I haven't crashed since using the 64 bit executable with the bit swapping trick.

Link to comment
Share on other sites

What does threaded optimalization do? Is this the bumblebee thing? Of not is it possible to run KSP though LCL with primusrun?

LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 ./KSP.x86_64

Nailed it! technogeeky. Only thing Id add to this is that there is a question mark symbol next to every option you can click it and it will take you to a page full of information on that setting :)

However, I did repeat benchmarks in Linux, with the 304 drivers (which supposedly do not even care about these two environment variables) and with the 331 drivers (which supposedly do). Both versions, for both flags: it makes no difference in terms of frames per second. I have Q9550 CPU (quad core) and two GPUs (GTX 470 and a 9800 GT), so there's plenty of multiple cores to go around. No difference.

I am running a nvidia 550ti and notice the boost not in frames per second but how many parts i can get before I start getting red lag flashes. I am able to get 20 more parts on a craft with it enabled. but that's at 300 + parts. So 320 parts threaded opto - 300 parts NO threaded opto / 300 = 6.6% performance increase. Its not much but ill take it :)

Is it possible to raise the ulimit size?

I could put a user form in and let a user set the number but if I get a log file that showes that a user needs more than a 2048? ulimit ill give that option.

Thanks for all my beta testers and the good remarks of support. I'm aware that this was built on a windows computer and then tested only on my linux mint 13 computer so there are sure to be bugs. Also I never know what a user is going to click in what order may be different than what I do. So if you find an issue let me know Ill put time towards fixing it. even if its jsut a glitch you can work around.

Log file is key with this. LCL log is in the main LCL folder.

Thanks again

meeki

Link to comment
Share on other sites

  • 3 weeks later...
I wondered this myself. I am pretty sure it is this:

LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 ./KSP.x86_64

Do you think that it is save to use for all users? (All graficcards)

Link to comment
Share on other sites

I wondered this myself. I am pretty sure it is this:

LD_PRELOAD="libpthread.so.0 libGL.so.1" __GL_THREADED_OPTIMIZATIONS=1 ./KSP.x86_64

Do you think that it is save to use for all users? (All graficcards)

It is safe to use anywhere, because it will be ignored if it's inappropriate. I don't think ATI cards will do anything with it. NVIDIA cards with recent enough drivers supposedly will, but I can't be sure if it helps or not.

Link to comment
Share on other sites

  • 2 months later...

Doesn't start my KSP.

http://pastebin.com/6rRveveM

It seems to be a path issue. When I do

ulimit -n 2048 && LC_ALL=C /media/OCZ/SteamLibrary/SteamApps/common/Kerbal Space Program/KSP.x86_64

it doesn't run but when I do

ulimit -n 2048 && LC_ALL=C /media/OCZ/SteamLibrary/SteamApps/common/Kerbal\ Space\ Program/KSP.x86_64

it runs.

Edited by Specialist290
Merging sequential posts
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...