about summary refs log tree commit diff
path: root/pkgs/games/starsector/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/starsector/default.nix')
-rw-r--r--pkgs/games/starsector/default.nix10
1 files changed, 6 insertions, 4 deletions
diff --git a/pkgs/games/starsector/default.nix b/pkgs/games/starsector/default.nix
index 535039c79f2fa..8e38f232f21e9 100644
--- a/pkgs/games/starsector/default.nix
+++ b/pkgs/games/starsector/default.nix
@@ -62,15 +62,17 @@ stdenv.mkDerivation rec {
 
   # it tries to run everything with relative paths, which makes it CWD dependent
   # also point mod, screenshot, and save directory to $XDG_DATA_HOME
-  # additionally, add some GC options to improve performance of the game
-  # and remove flags "PermSize" and "MaxPermSize" that were removed with Java 8
+  # additionally, add some GC options to improve performance of the game,
+  # remove flags "PermSize" and "MaxPermSize" that were removed with Java 8 and
+  # pass-through CLI args ($@) to the JVM.
   postPatch = ''
     substituteInPlace starsector.sh \
       --replace-fail "./jre_linux/bin/java" "${openjdk}/bin/java" \
       --replace-fail "./native/linux" "$out/share/starsector/native/linux" \
       --replace-fail "=." "=\''${XDG_DATA_HOME:-\$HOME/.local/share}/starsector" \
-      --replace-warn "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" \
-      --replace-quiet " -XX:PermSize=192m -XX:MaxPermSize=192m" ""
+      --replace-fail "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" \
+      --replace-quiet " -XX:PermSize=192m -XX:MaxPermSize=192m" "" \
+      --replace-fail "com.fs.starfarer.StarfarerLauncher" "\"\$@\" com.fs.starfarer.StarfarerLauncher"
   '';
 
   passthru.updateScript = writeScript "starsector-update-script" ''