Plutonium on Linux: Ultimate Cross-Distro Guide
-
Updated July 2025 | Tested on Ubuntu/Debian/Arch/Fedora/Solus
(FAQ/Troubleshooting at bottom)
Disclaimer:
• Plutonium officially supports only 64‑bit Windows; use Linux at your own risk.
• You must own a legitimate Steam copy (or have Family Sharing enabled) of the Call of Duty game you intend to run. (No pirated files)
• The guide does not support macOS, BSD, or ARM.
• The instructions below assume a basic familiarity with the Linux terminal and package management.
• Steam Deck: Incompatible with anti-cheat (some OLED models may work, try at risk)
(Note: Steam Decks can still play in LAN mode by selecting the square option next to "PLAY" in the Plutonium Launcher.)Table of Contents
- Install Dependencies (Ubuntu,Debian,Arch,Fedora,Solus)
- Setup Wine & Plutonium (Heroic)
- Launch Plutonium (Heroic)
- Performance Tuning (Heroic)
- Troubleshooting (General)
Step One
Installing Dependencies
1. Ubuntu:
sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/winehq.key sudo apt-key add winehq.key sudo apt-add-repository 'https://dl.winehq.org/wine-builds/ubuntu/' sudo apt update sudo apt install --install-recommends winehq-staging dxvk wine-gecko wine-mono winetricks
2. Debian:
Replace <version> with your release name (e.g., bullseye for Debian 11, bookworm for Debian 12, or trixie for Testing
/dists/bullseye/winehq-bullseye.sources
)sudo apt update sudo dpkg --add-architecture i386 sudo mkdir -pm755 /etc/apt/keyrings sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/<version>/winehq-<version>.sources # **REPLACE <version> AS SAID ABOVE** sudo apt install --install-recommends winehq-stable dxvk wine-gecko wine-mono winetricks
3. Arch Linux:
Enable multilib:
sudo nano /etc/pacman.conf
and ensure the [multilib] repository is enabled. Then update:sudo pacman -Syu
Install required packages:
sudo pacman -S giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo libxcomposite lib32-libxcomposite libxinerama lib32-libxinerama ncurses lib32-ncurses opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader cups samba dosbox
DXVK from AUR:
Install using your preferred AUR helper (e.g., yay) and run:yay -S dxvk-bin
4. Fedora:
Note for Nobara Users: Replace sudo dnf upgrade with sudo nobara-sync.
sudo dnf upgrade sudo dnf install wine dxvk wine-gecko wine-mono winetricks sudo dnf install alsa-plugins-pulseaudio.i686 glibc-devel.i686 glibc-devel libgcc.i686 libX11-devel.i686 freetype-devel.i686 libXcursor-devel.i686 libXi-devel.i686 libXext-devel.i686 libXxf86vm-devel.i686 libXrandr-devel.i686 libXinerama-devel.i686 mesa-libGLU-devel.i686 mesa-libOSMesa-devel.i686 libXrender-devel.i686 libpcap-devel.i686 ncurses-devel.i686 libzip-devel.i686 lcms2-devel.i686 zlib-devel.i686 libv4l-devel.i686 libgphoto2-devel.i686 cups-devel.i686 libxml2-devel.i686 openldap-devel.i686 libxslt-devel.i686 gnutls-devel.i686 libpng-devel.i686 flac-libs.i686 json-c.i686 libICE.i686 libSM.i686 libXtst.i686 libasyncns.i686 liberation-narrow-fonts.noarch libieee1284.i686 libogg.i686 libsndfile.i686 libuuid.i686 libva.i686 libvorbis.i686 libwayland-client.i686 libwayland-server.i686 llvm-libs.i686 mesa-dri-drivers.i686 mesa-filesystem.i686 mesa-libEGL.i686 mesa-libgbm.i686 nss-mdns.i686 ocl-icd.i686 pulseaudio-libs.i686 sane-backends-libs.i686 tcp_wrappers-libs.i686 unixODBC.i686 samba-common-tools.x86_64 samba-libs.x86_64 samba-winbind.x86_64 samba-winbind-clients.x86_64 samba-winbind-modules.x86_64 mesa-libGL-devel.i686 fontconfig-devel.i686 libXcomposite-devel.i686 libXcursor-devel.i686 libXdamage-devel.i686 libXfixes-devel.i686 libXi-devel.i686 libXinerama-devel.i686 libXrandr-devel.i686 libXrender-devel.i686 libXtst-devel.i686 zlib-devel.i686
(For a full list of dependencies especially for NVIDIA/AMD drivers, consult your distro’s documentation.)
5. Solus
sudo eopkg install wine wine-devel wine-32bit-devel winetricks dxvk wine-gecko wine-mono
️ Driver Checks
NVIDIA: Install latest drivers + lib32-nvidia-utils.
AMD: Verify RADV drivers:vulkaninfo | grep driver # Should show "MESA_RADV"
Step Two
Create a Wine Prefix
mkdir -p ~/wine/plutonium
(~/
is your home folder)Install Winetricks Dependencies
WINEPREFIX=~/wine/plutonium winetricks -q --force dotnet48 \ d3dcompiler_47 corefonts \ vcrun2005 \ d3dcompiler_43 d3dx11_42 d3dx11_43 \ gfw msasn1 physx \ xact_x64 xact xinput WINEPREFIX=~/wine/plutonium setup_dxvk install WINEPREFIX=~/wine/plutonium winecfg -v win10
- Launch Plutonium
Launching With Heroic
Add Game (In Heroic)
Executable:~/wine/plutonium/plutonium.exe
Add Wine Prefix (In Heroic)
Show Wine Settings >
Wine Prefix:~/wine/plutonium
Plutonium Setup:
Launch Plutonium
Point Plutonium to your Steam game folder(e.g., ~/.steam/steam/steamapps/common/Call of Duty Black Ops II).
Invalid Folder Selected?:
If you don’t see your games folder (due to hidden files), use
WINEPREFIX=~/wine/plutonium winecfg
then go to the Drives tab and Enable "Show dot files" then apply.Step Three
- Performance Tuning (Optional but highly recommended)
(Before we begin)
make a folder on a drive for shader caching. I recommend using this on any game you arent running with steam with owned games. This will be the folder for any caching options below.
mkdir -p ~/wine/shaders
(this will be on your main drive)- Game info
- Wine Tab
- Wine Version: Test as needed (I use Proton-GE-Latest)
- WinePrefix Folder: Same as we created above
- Enable Esync/Fsync (If kernel supports)
- Other Tab
- Use Gamemode
- Use Steam Runtime
- Disable AntiCheat runtimes (not needed)
- Advanced Tab
- Environment Variables:
DXVK_ASYNC=1 DXVK_STATE_CACHE=1 DXVK_STATE_CACHE_PATH=/location __GL_SHADER_DISK_CACHE=1 __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1 __GL_THREADED_OPTIMIZATIONS=1 __GL_SHADER_DISK_CACHE_PATH=/location LD_PRELOAD="" RADV_PERFTEST=gpl
- Environment Variables:
- Gamescope Tab
- Enable anything as wanted.
Troubleshooting:
-
Stuttering/Crazy Mouse Issues:
Update Wine/Proton-GE. -
Stuttering Issues:
Wine Version: Use your system wine or experiment with Proton‑GE if stuttering/slowdowns arise.
Disable Esync/Fsync: These can sometimes cause instability—set them to “Off.”
WAW/Bo1 may have stuttering issues regardless on higher end systems. You will have to experiment with the launch arg
WINE_CPU_TOPOLOGY=corenumber:core0,core1,etc,etc
I.E if you have a 6 core CPU,=6:0,1,2,3,4,5
(count starts at 0, not 1)- Crashing on startup:
- Check the prefix windows version (winecfg on the prefix)
- Check log files in Heroic (right-click the game → Logs).
- Verify that all required dependencies are installed in your Wine prefix.
- Reinstall or redo the prefix(commands) if you suspect corruption or missing components. (backup mods/custom skins if used)
Additional Resources / Credits
Heroic Website: https://heroicgameslauncher.com/
WineHQ: winehq.org
Final Notes:
-
This guide is intended to be maintained and updated as needed. Because Linux distributions and third‑party tools evolve quickly, some package names or commands might change over time. If you encounter issues, check your distro’s forums or the relevant sub‑forums on the Plutonium website for the latest adjustments. Enjoy your gaming on Linux!
-
if you find issues with the guide like wrong information, potentially harmful suggestions, or general QOL improvements to the guide, feel free to suggest them.
-
Sources integrated from multiple forum guides, Reddit posts, and official documentation (e.g., WineHQ, Lutris, and DXVK guides).
Stuck? Need Help
Search logs for errors.
Post on Plutonium’s Forum/Discord!FAQ
Q1: Black Ops 1 (and sometimes BO2) runs poorly.
Black Ops 1 is a known poor PC port and may require testing FPS capping and experimentation with window modes. Better hardware will yield better results in the end, try having a higher fps cap.
Unfortunately the FPS is tied to the viewing input so stuttering = random slow downs and speed ups in camera movement with mouse or controller.there's no fix besides playing on windows or regressing heavily on wine versions (down to 5.7 or less).should be fixed for the most part.Q2: The Plutonium installer appears “frozen.”
On occasion, the installer GUI might not respond immediately. Wait for about 60 seconds and then try restarting it.In Heroic, you can force-stop and then relaunch the client if necessary.
Q3: Can I use mods? custom skins? maps?
Yup! everything is the exact same, all folders will be under~/wine/plutonium/drive_c/users/user/AppData/Local/
. The user will depend on if you're using wine or proton.
Any version or fork of wine should be using your actual user (your PC's username)
Any version or fork of proton will use the "steamuser" folderQ4: Can I host servers on Linux too?
Yes, you can also host servers on Linux. There's methods with docker/pterodactyl-pelican panel or simply through wine on your own PC, however this does require a little more maintenance so if you are new to Linux and already have a hard time, I do not recommend trying this. Instead get a VPS with windows. Also please keep in mind, as the Launcher doesn't have official Linux support, neither do servers. Plutonium only supports Windows for clients and servers.Pterodactyl/Pelican: https://github.com/Draakoor/codptero (Obvious credit to Draakoor for making and maintaining these, ps.....Pelican is not officially supported with these eggs, however they are still compatible. Please do not make issue request for Pelican)
Wine: https://github.com/framilano/PlutoniumLinuxHosting / https://github.com/Sterbweise/T5Server (Obvious credit to Framilano and Sterbweise)
End of FAQ
In all, you should now be able to play plutonium just flawlessly on Linux. You may encounter some issues like random stutters, controllers not working, the game crashing etc etc.
Most issues will go away over time, some quickly, some not so quickly. Stutters will stop the more you play as shaders are able to cache and are stored for future launches.
-
undefined CamoMano referenced this topic on
-
Thank you for the in-depth tutorial, unlucky timing for me to try it since Web Archive is down haha (WINEPREFIX=~/wine/plutonium winetricks -q gfw)
-
Forgot to update, but it actually worked fine for me without gfw.
OS: Arch LinuxKERNEL: 6.11.2-arch1-1
CPU: AMD Ryzen 5 2600 Six-Core
GPU: NVIDIA GeForce GTX 1660 SUPER
GPU DRIVER: NVIDIA 560.35.03
RAM: 32 GBHyprland v0.44.1
-
I just use the install script off of Lutris's website But this is good to know for just in case the script ever breaks in the future
-
Excellent guide. I tried like 3 different guides and none of them worked. Thanks!