Jump to content

User:0xMrRobot/My games

From ArchWiki

This page is for writing down any tinkering necessary to make the games I want to play launch and run well on Arch. Unless otherwise noted, they are installed via Steam, are using Proton Experimental and have this setting in the launch parameters. I installed Protontricks and ProtonPlus via Flatpak. You can search ProtonDB for more suggestions and comments from other players. As always, your mileage may vary.

Ubisoft Connect

I decided to add this as a "game" to my Steam library after running into issues with the version automatically installed with Far Cry Primal. I'll list a combination of the instructions in [1] and [2]:

1. Download the latest UbisoftConnectInstaller.exe from Ubisoft;

2. (Optional) Switch Steam to "Offline Mode" (ports may conflict with Ubisoft Connect during its installation and update);

3. Save UbisoftConnectInstaller.exe to any folder you want;

4. Open Steam > Go to Library > Click on "Add game" (lower left corner) > Click on "Add a non-Steam game" > Click "Browse" > /path/to/UbisoftConnectInstaller.exe;

5. In your game list, right-click on UbisoftConnectInstaller.exe > Properties > Compatibility > Check "Force the use of a specific Steam Play compatibility tool" > Select Proton Experimental;

6. Run UbisoftConnectInstaller.exe > Install to the default location (should be C:\Program Files (x86)\Ubisoft\Ubisoft Game Launcher or something similar) > OK > Wait for the installation to complete > Untick the "Run Ubisoft Connect" box > Close the window.

Steam will create a folder with a number (called prefix) as its name, under $HOME/.local/share/Steam/steamapps/compatdata. Look through its contents to identify the correct folder for the next step. This folder will simply be referred to as <UC FOLDER> from now on. The template for the folder path is:

$HOME/.local/share/Steam/steamapps/compatdata/<PREFIX NUMBER>
Tip You can more easily find the correct prefix for UC by looking at the "Last Modified Time" for each folder.

7. In your game list, right-click on UbisoftConnectInstaller.exe > Properties > Shortcut > Optionally change name to "Ubisoft Connect" > Change "Target" to "<UC FOLDER>/pfx/drive_c/Program Files (x86)/Ubisoft/Ubisoft Game Launcher/UbisoftConnect.exe" and "Start in" to "<UC FOLDER>/pfx/drive_c/Program Files (x86)/Ubisoft/Ubisoft Game Launcher/". The double quotes are required, since the file and folder paths contain spaces;

8. Launch UC > Log in into your account;

9. For each installed Ubisoft game:

9.1. Figure out the game's unique prefix number, i.e. which folder under $HOME/.local/share/Steam/steamapps/compatdata/ belongs to the game;
9.2. Delete the existing pfx/drive_c/Program Files (x86)/Ubisoft;
9.3. Symlink Ubisoft Connect's Ubisoft folder to the Program Files (x86) folder of the game:
$ ln -s "<UC FOLDER>/pfx/drive_c/Program Files (x86)/Ubisoft" "$HOME/.local/share/Steam/steamapps/compatdata/<GAME'S PREFIX>/pfx/drive_c/Program Files (x86)/"

With this setup, every Ubisoft game will use the UC you installed, easing the maintenance of the app.

Note As per Security#ptrace_scope, do not set kernel.yama.ptrace_scope to a higher value than 1.

Far Cry Primal

If you have a relatively new CPU like me (i9-13900HX), set this in launch parameters [3]:

WINE_CPU_TOPOLOGY=31:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 %command%

Apparentely, 31 is the highest thread count supported by the game. If your CPU has (or you simply want to use) less threads, edit the parameter accordingly.

When playing in Fullscreen, Alt+Tab won't work, play on Windowed Fullscreen instead.

Note Even after closing the game, the Ubisoft Connect (upc.exe) process will stay open in the background. Thus, it needs to be terminated manually.

Just Cause 3

To avoid performance issues [4] and to use mods [5], you need these options (do not remove the dot before /borderless):

%command% --vfs-fs dropzone --vfs-archive patch_win64 --vfs-archive archives_win64 --vfs-fs . /borderless /windowed
Note Some mods, like the entity spawner/console thingy, might require other launch parameters as well.


It is possible to mod DLC content, but it requires more tinkering. This video explains all these aspects in great detail.

Castle Crashers

To improve stability in fullscreen [6], use this:

%command% -window

It might also help to use an older version of Proton and/or use this parameter as well.

Portal 1

For some reason, Steam autoselected the Steam Linux Runtime 1.0 (scout), which made the game crash every time. Force switching to Proton Experimental fixed the issues.

Instead of switching to Proton, the game also works perfectly with these settings [7]:

%command% -vulkan

DOOM Eternal

To skip the intro video, disable mouse smoothing and skip "Press SPACE to continue" [8], as well as enabling HDR [9], I use these options:

PROTON_USE_WAYLAND=1 PROTON_ENABLE_HDR=1 %command% +com_skipIntroVideo 1 +com_skipKeyPressOnLoadScreens 1 m_smoothing 0

This is an amazing mod for Halo CE, and fortunately it works on Linux as well! Here's how I installed it:

1. Download the mod from ModDB and extract the compressed folder somewhere (I chose $HOME/Downloads/spv3);

2. Open Steam > Go to Library > Click on "Add game" (lower left corner) > Click on "Add a non-Steam game" > Click "Browse" > Select the spv3.exe file from your extracted folder;

3. In your game list, right-click on spv3.exe > Properties > Compatibility > Check "Force the use of a specific Steam Play compatibility tool" > Select Proton Experimental (I chose this and it worked, other versions might work as well, YMMV);

4. If you haven't already, install MCC (I don't have HCE, so YMMV if you don't use MCC via Steam) and all of the Halo 1 content;

5. Run the game. The installer will ask you to manually provide the path to your Halo installation, since it won't be able to find it on its own. Don't worry, this is expected. Close the installer.

6. The last step made Steam create a folder for SPV3 under $HOME/.local/share/Steam/steamapps/compatdata/. Write down the folder's name, AKA the prefix number. From now on, <SPV3 PATH> will refer to $HOME/.local/share/Steam/steamapps/compatdata/<SPV3 PREFIX>.

Tip You can more easily find the correct prefix for SPV3 by looking at the "Last Modified Time" for each folder.

Create a symbolic link inside <SPV3 PATH>/pfx/drive_c/Program Files (x86)/Steam/steamapps/common/ that points to the MCC folder (e.g. $HOME/.local/share/Steam/steamapps/common/Halo The Master Chief Collection/):

$ mkdir -p "<SPV3 PATH>/pfx/drive_c/Program Files (x86)/Steam/steamapps/common/"

$ ln -s "$HOME/.local/share/Steam/steamapps/common/Halo The Master Chief Collection/" "<SPV3 PATH>/pfx/drive_c/Program Files (x86)/Steam/steamapps/common/"

7. Run the game again. The installer will automatically find your MCC installation. Now simply install SPV3! I didn't check the "Compress Folder" box, so YMMV if you do. After the mod is installed, AmaiSosu will show up, so search for the SPV3 folder (by default it'll be C:\Users\steamuser\Documents\My Games\Halo SPV3), select the haloce.exe binary and install OpenSauce;

Note After installing everything, delete the symbolic link you created in step 6. Please do not accidentally delete the MCC folder itself, only the symlink that points to it.

8. In your game list, right-click on spv3.exe > Change the shortcut's name to whatever you want > Change the "Target" field to "<SPV3 PATH>/pfx/drive_c/users/steamuser/Documents/My Games/Halo SPV3/spv3.exe" > Change the "Start in" field to "<SPV3 PATH>/pfx/drive_c/users/steamuser/Documents/My Games/Halo SPV3/". Adjust the paths if you chose a custom install location;

9. Make sure the game will use your dGPU. For NVIDIA users, you can either install nvidia-prime and change the launch options to prime-run %command% or add the correct environment variables to the launch options.

And that's it! On the 1st boot the game might stutter heavily, but it should smooth out after a few minutes. Check out r/halospv3!


Forza Horizon 6

Well... for starters, I had to wait for nvidia to launch a newer version of their driver, since the game warned me that it would only work with nvidia driver version >596. Now (May 30th 2026), even with driver version 610.xx, I can't load into the game without it crashing with raytracing on while on windows it works. Modern gaming at its finest. Disabling raytracing makes the game run well. Stupid.

After searching ProtonDB, Reddit and GitHub, these settings made it work for me:

WINE_USE_KWIN_HACKS=1 PROTON_AUDIO_DRIVER=pulse PROTON_MEDIA_USE_GST=1 PROTON_ENABLE_WAYLAND=1 PROTON_ENABLE_HIDRAW=1 PROTON_USE_NTSYNC=1 PROTON_ENABLE_NVAPI=1 PROTON_ENABLE_NGX_UPDATER=1 PROTON_HIDE_NVIDIA_GPU=0 PROTON_NVIDIA_LIBS=1 PROTON_VKD3D_HEAP=1 VKD3D_CONFIG=enable_experimental_features,descriptor_heap,no_upload_hvv,single_queue PROTON_ENABLE_HDR=1 GST_PLUGIN_FEATURE_RANK=protonvideoconvert:MAX prime-run %command%

All of the graphical settings were set to medium, with raytracing disabled. The screen resolution is set to 1920x1080 and the framerate is locked to 60.

The Proton version that worked best for me is GE-Proton10-34.

I know, I know, there is a Linux version available. But I wanted to try this anyway. Obviously the performance will be worse than using the native Linux version or the windows version on windows, so don't expect this to be the best option.

To install the main program:

1. Download the latest .exe installer or ISO file from MathWorks;

2. If you have the .exe installer, save it wherever you want and skip ahead. If you have an ISO file, mount it somewhere, e.g.

# mkdir -p /mnt/matlab-iso; mount -t iso9660 /path/to/matlab.iso /mnt/matlab-iso

3. Open Steam > Go to Library > Click on "Add game" (lower left corner) > Click on "Add a non-Steam game" > Click "Browse" > /path/to/matlab-iso/setup.exe or the .exe installer that you downloaded;

5. In your game list, right-click on setup.exe or the .exe installer that you downloaded > Properties > Compatibility > Check "Force the use of a specific Steam Play compatibility tool" > Select Proton Experimental;

6. Run the "game" > Install to the default location (should be C:\Program Files\MATLAB\RYYYYz) > Wait for the installation to complete > Close the window.

Steam will create a folder with a number (called prefix) as its name, under $HOME/.local/share/Steam/steamapps/compatdata. Look through its contents to identify the correct folder for the next step. This folder will simply be referred to as <MATLAB FOLDER> from now on. The template for the folder path is:

$HOME/.local/share/Steam/steamapps/compatdata/<PREFIX NUMBER>
Tip You can more easily find the correct prefix for MATLAB by looking at the "Last Modified Time" for each folder.

7. In your game list, right-click on setup.exe or the .exe installer that you downloaded > Properties > Shortcut > Optionally change name to "MATLAB RYYYYz" > Change "Target" to "<MATLAB FOLDER>/pfx/drive_c/Program Files/MATLAB/RYYYYz/bin/win64/matlab.exe" and "Start in" to "<MATLAB FOLDER>/pfx/drive_c/users/steamuser/Documents/MATLAB". The double quotes are required, since the file and folder paths contain spaces;

8. Unmount the ISO file and launch MATLAB :)

9. If you want to install the offline documentation from an ISO file:

9.1. Mount it somewhere, e.g.
# mkdir -p /mnt/matlab-doc-iso; mount -t iso9660 /path/to/matlab-doc.iso /mnt/matlab-doc-iso
9.2. Change "Target" to "<MATLAB FOLDER>/pfx/drive_c/windows/system32/cmd.exe and "Start in" to "<MATLAB FOLDER>/pfx/drive_c/";
9.3. Symlink the mounted ISO folder to MATLAB's C: drive:
$ ln -s /mnt/matlab-doc-iso "<MATLAB FOLDER>/pfx/drive_c/"
9.4. Run the program > Go into the ISO folder > Use the mpm.exe command provided here > Wait for it to finish;
9.5. Unmount the ISO file > Revert the changes from step 9.2 > Launch MATLAB again > Configure MATLAB to use the installed documentation;

The command line options I use currently are:

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia __VK_LAYER_NV_optimus=NVIDIA_only WINE_USE_KWIN_HACKS=1 PROTON_ENABLE_WAYLAND=1 PROTON_USE_NTSYNC=1 %command% -nosoftwareopengl