Has it really been that long? Apparently so. Valve originally announced their rebranding of Steam Play with Proton back on August 21st, 2018. Seems like a good time for a quick reflection being halfway to a decade old now with the tech that gave rise to the Steam Deck.
Before Proton there were many projects that were helping run windows games and apps on Linux. Many of these were massive undertakings:
Wine (translate windows API calls to Linux API calls)
Wine tricks (automates the installation of many Window app dependencies)
Crossover and their work on wine & wine bottles (a mini windows drive environment for each program)
Loki’s early work on SDL to simplify sound and input for Linux and other *nix targets.
Mono (open source implementation of . Net a library used by a fair amount of windows apps (also includes Moonlight - the open source implementation of MS Silver light)
DXVK a impressive and efficient Direct X 10 & 11 to Vulcan translation layer (later incorporated D9VK - Direct X 9 to Vulcan) which also helps older games run better in Windows in addition to adding compatibility for Linux
And many other pieces I’m forgetting now, make up Proton. Valve did an awesome thing in packaging all the community developed components, put some of those devs on their payroll, and even paid Crossover to work on the project that ultimately became Proton.
Now with Proton, what would require lots of individual steps and separate downloads (setup a separate wine environment for each application, add dependencies, install DXVK, install needed open source frameworks, add any registry tweaks needed, etc) is now
maficallyautomatically handled behind the scenes in one step by one tool by just installing a Windows game on Linux via Steam (though Proton can work without Steam as well).Since all the work is open sourced, the community is able to have their own version of Proton with newer fixes and components that Valve could not distribute themselves due to licensing: Glorious Eggroll.
There were many attempts in the past to make an all-in-one tool to handle setting up wine and other compatibility tools (Lutris, Transgaming, PlayOnLinux, etc). So Valve wasn’t necessarily the first, they just offered a well put together, funded, and easy to use implementation.
This is a really good writeup, thanks for sharing.
I’ve been gaming on Ubuntu in some capacity since 2007ish and it’s so easy to do now without having to manage wine versions and prefixes and mono versions, etc.