R2NorthstarTools / NorthstarProton

A Proton build based on TKG's proton-tkg build system to run the Northstar client on Linux and SteamDeck, along with some enhancements out-of-the-box.
Other
44 stars 3 forks source link

NorthstarProton

A Proton build based on GloriousEggroll's proton-ge-custom that serves as an official, stable, and supported runner for playing Titanfall 2 + Northstar on Linux and SteamDeck.

https://r2northstar.gitbook.io/r2northstar-wiki/installing-northstar/steamdeck-and-linux/installing-on-steamdeck-and-linux

IMPORTANT

What's new (vs. legacy NorthstarProton)

LatencyFleX

Once you have installed the vulkan layer properly, LatencyFlex can be enabled by adding LFX=1 %command% to your Titanfall 2 launch options, nothing else is required.

Building

  1. Clone this repo by executing:
git clone --recurse-submodules https://github.com/R2NorthstarTools/NorthstarProton
  1. Drop any custom patches into patches/, then open patches/protonprep-valve-staging.sh and add a patch line for them under #WINE CUSTOM PATCHES in the same way the others are done.

  2. Apply all of the patches in patches/ by running:

./patches/protonprep-valve-staging.sh &> patchlog.txt

in the main NorthstarProton directory. Open patchlog.txt and search for "fail" to make sure no patch failures occured. An easy way to do this is like so:

grep -i fail patchlog.txt
grep -i error patchlog.txt 
  1. Navigate to the parent directory containing the NorthstarProton folder.

  2. Type the following (note: if using docker instead of podman, change to --container-engine=docker):

mkdir build && cd build
../configure.sh --enable-ccache --build-name=SOME-BUILD-NAME-HERE --container-engine=podman
make redist &> log

Build will be placed within the build directory as SOME-BUILD-NAME-HERE.tar.gz.

Credits

Jan (Jan200101), for spearheading the overhaul of NorthstarProton and various patches to improve compatibility.

Thomas Crider (GloriousEggroll), for proton-ge-custom.

Tatsuyuki Ishi (ishitatsuyuki), for LatencyFleX.

Etienne Juvigny (TK-Glitch), for the proton-tkg build system.

Amine Hassane (Sporif), for continually maintaining DXVK-async.

Chris Simons (simons-public) for Protonfixes, which I have shamelessly butchered into the legacy version of this project.