One True Linux Thread™

It all depends on the licensing model and way of verifying licenses. If the bineries wherent something that needs to be protected (like microsoft does it with windows) one could package them in all maner of formats. My guess (and hop for not having online drm) would be to have drm free versions that can be downloaded once bought.
As rpm user i would welcome a format like fletpak so i dont have to fiddle with deb packe unpacking.
 
I installed the game by running the installer with wine, and the game boots, but the earth looks horrible and I get low performance, but I think my GPU is just too weak and if I lowered enough settings it would work better. If I run the game on Windows 10 on the same machine, the game also runs horribly, but the graphics bug with the earth is gone, but volumetrics are always drawn on top. I'm on Linux Mint.

CPU: AMD Ryzen 7 5700X (8 core processor, about 3.3 GHz)
GPU: AMD Radeon RX 470/480/570/570X/580/580X/590 (I'm confused, I think the computer knows it's one of these but can't figure out which one)
 

Attachments

  • Screenshot from 2026-02-13 20-12-11.png
    Screenshot from 2026-02-13 20-12-11.png
    585.9 KB · Views: 0
I switched off the ocean, the clouds and the godrays and earth is still buggy but not blinding
 

Attachments

  • Screenshot from 2026-02-13 20-29-49.png
    Screenshot from 2026-02-13 20-29-49.png
    625.9 KB · Views: 0
Figured I would provide an update here.

We do want to provide native linux support, that is a Linux download. We've done initial testing producing local linux builds, and we have setup a download repository to push builds to. In the coming months we will start pushing to both the win and linux deployments. This will then allow us to test the feasibility of building, deploying, and supporting linux builds natively.
Like everyone else who is probably enthusiastic about this, I use Linux full time, and would be of the 'evangelist paying customer' archetype, where the question is 'why do you NOT play KSP?' and 'Let me help you with your esoteric linux distro problems so KSP runs great'. I think there's a lot of people like us out here. I have a ton of respect for proton and wine, but if you have a clean build and distribution path for ELF64 and WIN64, I think it speaks volumes about the customer and community integration and support.
 
DistroVGPUDERunnerConfigReport
Ubuntu 24.04.3 LTSAAMD Radeon RX 7900 XTXx11,waylandSteamSee Belowperforms well; some flickering issues with the rendering of planets when the camera is close to them.

System Details​

KSA v2025.11.4.2791 (setup_ksa_v2025.11.4.2791.exe md5sum: 35278d62cd149f12c945b7bf1ac0f44c)
Ubuntu 24.04.3 LTS
Proton 10.0-105
Steam Beta Branch: Stable Client
Steam Version: 1759461205
Steam Client Build Date: Thu, Oct 2 10:27 PM UTC -05:00
CPU: AMD Ryzen 9 9950X
RAM: 32GB
GPU: AMD Radeon RX 7900 XTX
VRAM: 24GB

The Installation Steps I Followed​

Run the Kitten Space Agency Setup Wizard​

  1. Click "Add a Game" at the bottom left of your Steam Library.
  2. Click "Add a Non-Steam Game...".
  3. Click "Browse..." on the "Add Non-Steam Game" dialog.
    • A file chooser dialog should appear.
  4. Navigate to where you have a copy of the setup file mentioned above.
  5. Select the setup file.
  6. Click "Add Selected Programs" on the "Add Non-Steam Game" dialog.
    • This will have created a Non-Steam Game Shortcut in your library. It's name will be the same as that of the setup file you selected.
  7. You may need to search your library for the game if you have a large number of games. Search for the name of the file you selected.
  8. Right click on the game and click on "Properties...".
    • A dialog for the new Non-Steam Game Shortcut will come up.
  9. *Optional*: Change the name of the shortcut from "setup_ksa..." to something better.
  10. Select "Compatibility" from the column on the left.
  11. Check the box labelled "Force the use of a specific Steam Play compatibility tool".
  12. Click on the drop-down and select "Proton 10.0-3".
  13. Close the dialog.
  14. Click the green "Play" button.
    • The "Kitten Space Agency Setup Wizard" dialog should appear.
  15. Click "Install for all users (recommended)".
  16. Click "Next" on the "Select Destination Location" page.
  17. Click "Next" on the "Select Additional Tasks" page.
  18. Click "Install" the "Ready to Install" page.
    • The game will be installed.
  19. Uncheck "Launch Kitten Space Agency" and click "Finish" on the "Completing the Kitten Space Agency Setup Wizard" page.
  20. The setup wizard should close leaving you at your Steam Library.

Get the APPID and Path for the Non-Steam Game Shortcut You Created for KSA​

When you created the Non-Steam Game shortcut. Steam generated an ID for it. You will need that ID later.
  1. In the upper right corner of the main Steam window click on "Steam" and then click on "Settings".
  2. Click on "Storage" on the left.
  3. To the right of the bar that displays how much space is being used click on the three dots button and choose "Browse Folder".
  4. Go into the "compatdata" folder.
    • This should bring up a list of folders with names that are all numbers.
  5. Sort this list by date modified.
    • The newest folder should be the one where Proton installed the Wine prefix for KSA.
    • This number is the APPID. Make a note of it.
    • Also make note of the full path including the APPID folder.

Install .Net 9 Within the Wine Prefix That Proton Created​

If you attempt to run the game, you will most likely get an error telling you to install .NET 9.
  1. Download the .NET 9 installer with the following link.
  2. Right click on the game in your library and click "Properties...".
  3. Click on "Browse..." to the right of the "Target" file path.
    • A file chooser dialog should appear.
  4. Navigate to the location where you downloaded the .NET 9 installer and select it here.
  5. Click the green "Play" button you would normally use to launch the game.
    • This should launch the .NET 9 installer.
  6. Complete the installation of .NET 9.

Set the Target of the Shortcut to the Main Game Executable​

  1. Right click on the game in your library and click "Properties...".
  2. Click on "Browse..." to the right of the "Target" file path.
    • A file chooser dialog should appear.
  3. Navigate to the APPID path you made a note of in the first section.
  4. Go into the "pfx" folder.
  5. Go into the "drive_c" folder.
  6. Go into the "Program Files" folder.
  7. Go into the "Kitten Space Agency" folder.
  8. Select the "KSA.exe" file.
  9. You will need to add double quotes around the path that was filled into the "Target" path field.

Set the Start in Location of the Shortcut to the Main Game Folder​

  1. Click on "Browse..." to the right of the "Start In" file path.
    • A file chooser dialog should appear.
  2. Navigate to the APPID path you made a note of in the first section.
  3. Go into the "pfx" folder.
  4. Go into the "drive_c" folder.
  5. Go into the "Program Files" folder.
  6. Select the "Kitten Space Agency" folder.
  7. You will need to add double quotes around the path that was filled into the "Start In" path field.
  8. Close the dialog.
You should now be able to launch the game as normal with the green "Play" button.
I can say, followed this guide to the letter on Nobara 43 (KDE Plasma 6.5.5) and it worked flawlessly. Though I had two folders that were created at the same time, I had to use the one that was a really big number. (413215840 in my instance, and not the 3658110).

Thanks!

For the record, worked flawlessly at 16k on my 4070Ti (Though I was using 3440x1440 resolution).
 

Attachments

  • Screenshot_20260214_010633.png
    Screenshot_20260214_010633.png
    104 KB · Views: 0
Figured I would provide an update here.

We do want to provide native linux support, that is a Linux download. We've done initial testing producing local linux builds, and we have setup a download repository to push builds to. In the coming months we will start pushing to both the win and linux deployments. This will then allow us to test the feasibility of building, deploying, and supporting linux builds natively.
If that's a sustainable pipeline, that's amazing, thank you! I use Linux, but very non-ideologically - Proton as a supported target platform would be fine as well, and I think many would feel the same. Whatever works best and consumes less development resources - these should go into the game proper IMHO.
 
Well well well:

1771476141487.png

(Discord message link)
https://ksa-linux.ahwoo.com/

Huge thanks to the devs for doing this!

Reminder that it says "not supported", so don't bug the devs with your issues! We can discuss those amongst ourselves, probably in this thread. (Of course, if they ask, give them all the info you can!)
 
Just tried out the Linux build.
It runs immediately without any tweaks. However, it has some issues (not complaining, not bug report since this is unsupported, just documenting my findings).

  • Performance is significantly lower than running KSA's Windows version via Proton
  • I get flickers when moving the camera (I think it's the UI cutting out)
  • I cannot change the resolution. Fullscreen it is for the time being.

CachyOS, Wayland, KDE Plasma 6

AMD 9950X
RTX 5090


ksa-linux_window-errors.png
 
Well well well:

View attachment 1251

(Discord message link)
https://ksa-linux.ahwoo.com/

Huge thanks to the devs for doing this!

Reminder that it says "not supported", so don't bug the devs with your issues! We can discuss those amongst ourselves, probably in this thread. (Of course, if they ask, give them all the info you can!)
Very cool! Crashes on run for me, unfortunately. (Fedora 43, Ryzen 5, Radeon RX 7800 XT)

Code:
10:15:47 ERROR GLFW Error: 65548 Wayland: The platform does not provide the window position
10:15:47  WARN settings file not found, creating default settings at /home/karsten/Documents/My Games/Kitten Space Agency/settings.toml
10:15:47  INFO loaded settings from /home/karsten/Documents/My Games/Kitten Space Agency/settings.toml
10:15:47 DEBUG Found dedicated compute queue family at index 1
10:15:47 DEBUG Multi view supported: True
10:15:47 DEBUG Ray query acceleration structure support:True
10:15:47 ERROR Unhandled exception System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132.
Unhandled exception. System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132
Aborted                    (core dumped) ./KSA
 
Last edited:
It's a bit sad though, only the very first public build has been running well for me (minus the terrain). Ever since, Earth has been a mess of dancing lights that no amount of graphics settings tweaks could fix. I'm having my fingers crossed for the native Linux build, hope the startup crash gets fixed (even though I completely understand that the platform is not really supported at the moment).

20260219105445_1.jpg
 
Running the setup_ksa_v2026.2.18.3622.tar version, I get:

Code:
12:02:29 ERROR Unhandled exception System.TypeInitializationException: The type initializer for 'Brutal.VulkanApi.Vulkan' threw an exception.
 ---> System.DllNotFoundException: Unable to load shared library 'vulkan' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable:
/home/me/games/KSA/linux-x64/vulkan.so: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/libvulkan.so: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/vulkan: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/libvulkan: cannot open shared object file: No such file or directory

   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryByName(String libraryName, Assembly assembly, Nullable`1 searchPath, Boolean throwOnError)
   at Brutal.VulkanApi.Vulkan..cctor()
   --- End of inner exception stack trace ---
   at Brutal.VulkanApi.Vulkan.get_GetInstanceProcAddr()
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 300
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132.
Unhandled exception. System.TypeInitializationException: The type initializer for 'Brutal.VulkanApi.Vulkan' threw an exception.
 ---> System.DllNotFoundException: Unable to load shared library 'vulkan' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable:
/home/me/games/KSA/linux-x64/vulkan.so: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/libvulkan.so: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/vulkan: cannot open shared object file: No such file or directory
/home/me/games/KSA/linux-x64/libvulkan: cannot open shared object file: No such file or directory

   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryByName(String libraryName, Assembly assembly, Nullable`1 searchPath, Boolean throwOnError)
   at Brutal.VulkanApi.Vulkan..cctor()
   --- End of inner exception stack trace ---
   at Brutal.VulkanApi.Vulkan.get_GetInstanceProcAddr()
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 300
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132
Aborted (core dumped)

It appears to be missing some vulkan files/folders: bad build?
Also, the C:\... paths look suspicious.

edit: The vulkan error was easy to fix, I copied the libvulkan.so.1 on my system to libvulkan.so in the game folder where it expects it, but now I get:


Code:
13:19:27  WARN settings file not found, creating default settings at My Games/Kitten Space Agency/settings.toml
13:19:27  INFO loaded settings from My Games/Kitten Space Agency/settings.toml
13:19:27 DEBUG Found dedicated compute queue family at index 1
13:19:27 DEBUG Multi view supported: True
13:19:27 DEBUG Ray query acceleration structure support:True
13:19:27 ERROR Unhandled exception System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132.
Unhandled exception. System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132
Aborted (core dumped)
 
Last edited:
Hm...
ksa_v2026.2.18.3622
It tried to find [lib]vulkan.so in current dir and failed, there were none in the archive (there's ksa_sign.bat lol).
I linked /usr/lib/x86_64-linux-gnu/libvulkan.so.1 -> ./libvulkan.so, got this:

Code:
:~/games_lin/KSA/ksa_v2026.2.18.3622$ ./KSA

(KSA:3): dconf-WARNING **: 17:02:59.063: unable to open file '/run/user/1000/dconf-service/keyfile/user': Failed to open file ?/run/user/1000/dconf-service/keyfile/user?: open() failed: No such file or directory; expect degraded performance
17:02:59 ERROR GLFW Error: 65548 Wayland: The platform does not provide the window position
17:02:59  INFO loaded settings from My Games/Kitten Space Agency/settings.toml
WARNING: radv is not a conformant Vulkan implementation, testing use only.
17:03:00 DEBUG Found dedicated compute queue family at index 1
17:03:00 DEBUG Multi view supported: True
17:03:00 DEBUG Ray query acceleration structure support:True
17:03:00 ERROR Unhandled exception System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132.
Unhandled exception. System.ArgumentException: '3' cannot be greater than 0.
   at System.Math.ThrowMinMaxException[T](T min, T max)
   at Core.Renderer.CreateSwapchain(Int32 graphicsQueueFamilyIndex, Int32 presentQueueFamilyIndex, VkPresentModeKHR requestedPresentMode, Int32 requestedImageCount, GlfwWindow window, VkSurfaceKHR surface, VkSwapchainKHR oldSwapchain) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 730
   at Core.Renderer.Rebuild(VkPresentModeKHR inPresentMode) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 223
   at Core.Renderer..ctor(GlfwWindow window, VkFormat depthFormat, VkPresentModeKHR presentMode, Api vulkanApiVersion) in C:\prototype-planet\Planet.Render.Core\Renderer.cs:line 188
   at KSA.Program..ctor(IReadOnlyList`1 inArgs) in C:\prototype-planet\KSA\Program.cs:line 351
   at KSA.Program.Main(String[] inArgs) in C:\prototype-planet\KSA\Program.cs:line 1132
Aborted                    (core dumped) ./KSA

It is strange that it wants dconf. Providing it does not change anything though.
AMD Navi 44 [Radeon RX 9060 XT], via DRI_PRIME=1

Maybe linked vulkan lib from my system is in conflict with everything else.
 
  • Like
Reactions: Pitou
Side question, why isn't tarball compressed? Even default gzip gives 0.79 size, default xz gives 0.68, easier on traffic.

BTW, ksa-linux download page has a cool style.
 
Last edited:
Side question, why isn't tarball compressed? Even default gzip gives 0.79 size, default xz gives 0.68, easier on traffic.
Apparently by the time they realized that it should've been compressed, they were already in too deep with that exact setup or something.
They said they'll fix it in the future.
...
17:03:00 ERROR Unhandled exception System.ArgumentException: '3' cannot be greater than 0.
...



This is a known issue, the devs said they'll try to fix it soon. For a temporary (and might I add beautifully hacky) fix, see here.