Tips and Tricks
Recommended Distros
We strongly recommend choosing a distro that has up-to-date packages and a solid maintenance reputation.
The following distributions make our 👍 list and generally work well with Star Citizen:
- Fedora
- Arch
- EndeavourOS (Arch-based)
- openSUSE Tumbleweed
- Debian Testing
- Ubuntu (only the latest non-LTS release)
- Gentoo
The following distributions make our 👎 list and generally pose additional challenges:
- Debian Stable
- Ubuntu LTS
- Mint (based on Ubuntu LTS)
- Pop!_OS (based on Ubuntu LTS)
- Zorin (based on Ubuntu LTS)
- Drauger OS
- openSUSE Leap
- Manjaro
We do not recommend 👎 LTS distros. LTS releases and out of date distros will likely require extra knowledge and effort to get Star Citizen running. Note that LTS ≠ stable in the traditional sense. LTS distros typically lock their packages to specific major versions which then only receive security updates. This is great for servers but problematic for gaming where new drivers, features, and fixes are important.
We do not recommend 👎 most gaming-focused distributions as many of our Penguins have had issues getting Star Citizen to run. They generally have only an individual or a very small team backing them and, at least where Star Citizen is concerned, don’t offer much benefit beyond our recommended distros for most Penguins.
If you’re new to Linux and looking for something “plug and play”, we recommend avoiding immutable distros such as Bazzite, Silverblue, Nix, etc for now; they come with a slightly steeper learning curve.
Recommended Runners
- LUG-Wine
- Default runner in the LUG Helper
- TKG Builds with LUG patches specifically for Star Citizen
- Mactan
- Managed by the LUG Helper
- TKG builds with LUG community patches
- Runners 10.3+ are patched accomodate easy anti-cheat
- Includes workaround to avoid repeated 30k when loading into the PU
- Includes NTSync
- RawFox
- Managed by the LUG Helper
- recommend v10.0 as of 7-25 its unpatched and works with the C:\ path and enabled EAC
How to add a Wine runner
- Select the option to “Manage Wine runners” in the LUG Helper and it will handle it for you.
- Alternatively, to manually add a custom wine runner:
- Extract the archive to your runners folder. Restart your game launcher after adding a runner and toggle on CLI mode
- Heroic:
~/.config/heroic/tools/wine/
- Heroic flatpak:
~/.var/app/com.heroicgameslauncher.hgl/config/heroic/tools/wine/
- Lutris:
~/.local/share/lutris/runners/wine/
- Lutris flatpak:
/.var/app/net.lutris.Lutris/data/lutris/runners/wine/
- Wine:
~/Games/star-citizen/runners
- Heroic:
- Use the LUG Helper maintenance menu to edit sc-launch.sh to use the runner
################################################################ # Configure the wine binaries to be used # # To use a custom wine runner, set the path to its bin directory # export wine_path="/path/to/custom/runner/bin" ################################################################ export wine_path="/home/you-username-goes-here/Games/star-citizen/runners/wine-tkg-ntsync-git-10.3.r0.g3364df08cb6-327-x86_64/bin"
- Extract the archive to your runners folder. Restart your game launcher after adding a runner and toggle on CLI mode
How to Run the LUG Helper
- Download the latest LUG Helper .tar.gz archive
- Extract the .tar.gz archive
- To run
lug-helper.sh
from a terminal (recommended):- Open your terminal and use
cd /path/to/extracted/archive
to navigate to the location - List files with the
ls
command - Once you are in the directory containing the
lug-helper.sh
script, run it by typing./lug-helper.sh
- Open your terminal and use
- Alternatively, to run
lug-helper.sh
from your file manager:- Navigate to the extracted archive location
- Right click on
lug-helper.sh
and select Run as a Program
The Helper uses Zenity for its optional GUI. If you don’t see the GUI and want it, install Zenity from your package manager.
How to edit the launch script
- Run the LUG Helper and select the
Maintenance and Troubleshooting
menu - Choose the option to
Edit launch script
- Alternatively, locate the
sc-launch.sh
file in your Wine prefix directory (by default,~/Games/star-citizen/sc-launch.sh
) and open it for editing.
How to get a Wine maintenance shell using the launch script
- In a terminal, navigate to your Star Citizen wine prefix directory. By default, this is
~/Games/star-citizen
- Verify that
sc-launch.sh
exists. - Run
./sc-launch.sh shell
to enter a prepared shell environment for your prefix. All Wine prefix environment variables will be set for you. - Type
exit
when done.
Updating DXVK Within a Wine Prefix
Use the LUG Helper tool’s Update DXVK
button
To downgrade dxvk to a previous version:
- Enter a Wine maintenance shell for your prefix using the
sc-launch.sh
script. - Run
winetricks
- Click “Select the default wineprefix” (verify that the file path in the title bar is your star-citizen game)
- Click “Install a Windows DLL or component”
- Select an older dxvk such as dxvk 2.6.1 or older and click OK
NixOS
On NixOS, to set vm.max_map_count
and fs.file-max
, add the following to your NixOS config:
# ... your NixOS Config ...
boot.kernel.sysctl = {
"vm.max_map_count" = 16777216;
"fs.file-max" = 524288;
};
Custom wine runners will not work out of the box if the system wine install does not work ( wineWow64Packages.stableFull
recommended) try wine-astral
from nix-citizen or one of the Alternative Installation methods.
RSI Launcher Manual Update
- Download the latest RSI Launcher installer
- Enter a Wine maintenance shell for your prefix using the
sc-launch.sh
script. - Then run the following command:
WINEDLLOVERRIDES="dxwebsetup.exe,dotNetFx45_Full_setup.exe=d" wine "~/Downloads/RSI Launcher-Setup-2.6.0.exe" /S
Console Variables
- r_displayinfo [ 1, 2, 3, 0 ]
- show fps and other details
- r_displaysessioninfo [ 1, 0 ]
- show session info QR code for reporting
- r_displayframegraph [ 1, 0 ]
- show chart of frame time
- MT (main thread)
- RT (render thread)
- pl_pit.forceSoftwareCursor [ 1, 0 ]
- force software cursor
USER.cfg
# set to your display resolution
# r_width = 1920
# r_height = 1080
#use software cursor
pl_pit.forceSoftwareCursor = 1
# set borderless
# r_WindowMode = 2
# 0 = DX11, 1 = Vulkan
# r.graphicsRenderer = 0
# r_displayinfo = 1
# sys_MaxFPS = 120
# sysmaxidleFPS = 120
# r_VSync = 0
Easy Anti-Cheat
Check the latest news for any wine changes
- Use RSI Launcher 2.5.1 or newer
- Use the latest LUG Helper to switch to a LUG-Wine runner
- Ensure there are no symlinks or special characters in the path to your Wine prefix
- Remove all old EAC workarounds if you have them:
- Use the LUG Helper Maintenance menu option to “Update launch script” to remove the previous environment variable workaround.
Alternatively, select “Edit launch script” and manually remove the EAC environment variable:
EOS_USE_ANTICHEATCLIENTNULL=1
- If using Lutris or another third party launcher, remove the above EAC environment variable from its settings.
- In the RSI Launcher, navigate to
Settings -> Games -> LIVE -> Game Location
. If you previously manually applied the Z:\ path workaround, restore the game location to its default C:\ path:
- Remove EAC line from
/etc/hosts
file:127.0.0.1 modules-cdn.eac-prod.on.epicgames.com #Star Citizen EAC workaround
- If you have any other EAC workarounds in place, remove them as well.
- Use the LUG Helper Maintenance menu option to “Update launch script” to remove the previous environment variable workaround.
Wine Wayland
RSI Launcher buttons may be offset, resize the window or use tab/shift+tab controls for the launcher
- Experimental Wine Wayland
- Use a Wine without staging in the name
- Add environment variable
export DISPLAY=
to unset it to empty - Add RSI Launcher.exe argument ` –in-process-gpu`
- Experimental Proton Wayland
- Add environment variable
PROTON_ENABLE_WAYLAND=1
- Add RSI Launcher.exe argument ` –in-process-gpu`
- Add environment variable
HDR (High Dynamic Range)
CIG’s vulkan doesn’t have HDR yet
Requires experimental native Wayland or Gamescope
To enable HDR in native Wayland:
Run wayland-info|grep color
in a terminal, if you do not see wp_color_manager_v1
then you will need to install VK_hdr_layer and add environment variable ENABLE_HDR_WSI=1
- Wine
- Add environment variable
DXVK_HDR=1
- Add environment variable
- Proton (GE-Proton10-1 or newer)
- Add environment variable
PROTON_ENABLE_HDR=1
- Add environment variable
Gamescope
- Use the LUG Helper to edit your launch script
- Prepend your gamescope arguments to the launch line at the bottom of the launch script. For example:
gamescope --hdr-enabled -W 2560 -H 1440 --force-grab-cursor "$wine_path"/wine "C:\Program Files\Roberts Space Industries\RSI Launcher\RSI Launcher.exe" > "$launch_log" 2>&1
- Enable HDR with flag
--hdr-enabled
Pre-launch and Post-exit Scripts
The launch script installed by the LUG Helper has a commented out example for how to run pre-launch and post-exit scripts. These scripts can be used to launch utilities like antimicrox, opentrack, etc., or disable/re-enable mouse acceleration for more precise FPS handling.
Some examples:
sc-prelaunch.sh
#!/bin/bash
## Disable Mouse Acceleration
## GNOME
# gsettings set org.gnome.desktop.peripherals.mouse accel-profile flat
## KDE
# kwriteconfig5 --file "kcminputrc" --group "Mouse" --key "XLbInptAccelProfileFlat" true
sc-postexit.sh
#!/bin/bash
## Reset Mouse Acceleration
## Gnome
# gsettings set org.gnome.desktop.peripherals.mouse accel-profile default
## KDE
# kwriteconfig5 --file "kcminputrc" --group "Mouse" --key "XLbInptAccelProfileFlat" false