Linux gaming [Guide]

Disclaimer

Demand for this guide was over the roof lately (both publicly and through PM, some of you even offered help - which i appreciate a lot!), so i have to release it earlier than planned. :upside_down_face:

This guide should be suitable for anyone from complete newcomer to advanced user (latter will just read TL;DR of given sections for current Best practices and Resources).

Also, this guide is useful for any distribution, not only EndeavourOS or Arch - so you can share it for anyone who use Linux! :space_invader:

It is far from finished, but should be a very good start for PC gamers :partying_face:

Things to come

• I know that set of simple scripts in Wine section is very far from ideal workflow, to be user-friendly for wide range of people, but still it’s much easier, than what you’ll find after reading Wine wiki for 12 months.

Meanwhile i hope that those who don’t know Wine up close in personal will find great help in understanding it’s operation from guide and those scripts.

:exclamation: Don’t use this scripts, if you have PlayOnLinux installed and used - as i use it’s folder-structure to get auto-hooked by Lutris!

You can use many available tools like: pywinery, PlayOnLinux or Lutris itself to manage, but i won’t recommend it.

Personally i respect them for good ideas, but find them very bloated, unnecessary huge, full of dependencies, not-vanilla ways of dealing Wine sometimes, and not-functional for some advanced stuff…

I have already created a great script in bash capable of much more than just ease for gaming, but can’t release it right now until i’ll be 100% sure it’s perfect, after that i’ll release it FOSS on GitHub and AUR:

FEATURES
  • Pure bash
  • Very user-friendly
  • Interface GUI / CLI / mixed
  • Don’t auto-mess mime-types and .desktop files of original system (like Wine and Winetricks do), create PREFIX portable by default
  • No dependencies except winetricks and optional Zenity for GUI
  • Advanced management of ENGINE and PREFIXES, mass actions for:
    • Update selected PREFIXES for specific ENGINE version
    • Remove selected ENGINES (will warn if they’re in use by some PREFIXES)
  • Download and auto-install ENGINES:
    • For now only PlayOnLinux (wine / wine-staging)
    • Looking forward for adding Proton, Tk-Glitch, GloriousEggroll
    • Will try to add custom sources in config, for pre-built Engines
  • Very easy to create prefix
  • Execute .msi or .exe Windows files from file-manager’s double-click - it will ask on which of available PREFIXES you want to run it! :sunglasses:
  • Optional config for places where you store your prefixes, you can have multiple places which will be symlinked (for example Games on separate drive)!
  • Easy scripting from:
    • Bash
    • Probably will parse Lutris scripts for the future too
  • Config for chosen prefix:
    • Change Engine
    • All the usual options like winecfg, regedit, reboot etc
    • Kill all processes
    • Make prefix portable
  • Kill all processes for all PREFIXES
  • Make all PREFIXES portable

• Bridging old games (DirectX 1-8, Glide, DirectDraw) to work with Wine / Proton and DXVK :space_invader:

• Advises on Game configs and Mods

• Emulators


What i’ll need help with

Contrary to popular beliefs - i’m not terminator or even Wine-guru :robot: :sweat_smile:

Please alert me on:
• Typos, errors, dead links
• Best practices updates

What i very much need help with:
Downsampling (i need universal ways of achieving something like Nvidia DSR for any game, regardless of drivers etc) - this is super-important for me personally and games quality!

nvapi - if someone will come up with ways to hook this latest PhysX development or help Wine and DXVK - please do!

AMD / Intel / Hybrid / Optimus graphics gaming. Anything on best practices for as i don’t have experience on Linux and hardware for it.


Now ENJOY!

And please excuse me, as i was and still am super-busy on a work, but will be here and will try to help however i can, but for now i need some rest :joy:

30 Likes