Skip to content

ENB, Reshade and Community Shaders

Omni-guides edited this page Jan 4, 2024 · 3 revisions

IMAGE General Banner

ENB, Reshade and Community Shaders all work on Linux, and by extension, the Steam Deck. Reshade and Community Shaders run pretty well through Proton, with only a relatively small impact to performance. So, if the modlist you are running comes with a Reshade or Community Shaders option - or you add one yourself - it should hopefully 'just work' when run via Proton. ENB on the other hand, requires a few additional packages installed into the Proton Prefix via protontricks. While there is a native Linux version of ENB, I have not found any scenario where it is beneficial to use it versus just running the Windows ENB binary via Proton.


On Steam Deck, these steps will need to be carried out in Desktop mode, and it is assumed you have set a user password for sudo commands. On a full Linux system, you should just need access to a terminal.

Install Additional Requirements

ENB requires a few packages to be installed into the Proton prefix for the modlist. Thankfully they are available directly via protontricks, so no need for downloading and installing manually.

If you don't already have it installed, ProtonTricks can be installed via the Discover store as a flatpak, and is likely also available from your distribution's package manager. Personally I use the version from flatpak/Discover Store:

IMAGE Protontricks1

IMAGE Protontricks2

To enable the use of protontricks via the command line, open a Konsole terminal and run the following command to add an alias(If you use a shell other than bash, you will have to adapt the following for your own login script location):

echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc

then close and reopen your terminal/Konsole. We can now invoke protontricks from the command line. Next, we need to allow protontricks access to the filesystem location (adjust as needed if you used a different path):

sudo flatpak override com.github.Matoking.protontricks --filesystem=/home/omni/Games

The packages needed are d3dx11_43, d3dcompiler_43 and d3dcomiler_47. Run the following command to install them, or replace "Skyrim - AVO" with the name of your Non-Steam game entry:

APPID=`protontricks -l | grep -i "Skyrim - AVO" | awk {'print $NF'} | sed 's:^.\(.*\).$:\1:'` ; protontricks --no-bwrap $APPID d3dx11_43 d3dcompiler_47 d3dcompiler_43

Conclusion

And that's really all there is to it! Performance will obviously take a hit compared to running without an ENB. You should also be able to replace the ENB that ships with the Modlist for either a different look, or better performance. Reshade and Community Shaders may be a lighter option, and likewise you may have your own profiles that weren't included with the Modlist by default. I'd love to hear of any ENB, Reshade or Community Shaders profiles that work well on the Steam Deck, or Linux in general. As always, any questions, issues, or comments, you can find me in the #unofficial-linux-help channel of the Official Wabbajack Discord.

Enjoy!