Divendres, octubre 17, 2025
ESCRIPTORI

Gaming a Linux: Steam Proton, Heroic Launcher (Epic/GOG)

L’estat actual del gaming a Linux ja no s’assembla al de fa una dècada, quan instal·lar un joc implicava lidiar amb Wine a mà, configuracions fosques i una llista interminable de dependències. Avui, amb Steam Proton i projectes com Heroic Launcher, el salt és possible sense haver de ser un expert en Wine.

Això no significa que tot sigui “clic i ja està”. L’experiència depèn de versions de Proton, drivers gràfics, anticheats, configuracions de kernel i ajustos que no sempre estan documentats.

1. Steam Proton en detall: instal·lació, configuració avançada i gestió pràctica

1.1. Proton: què hi ha realment darrere

Proton no és un programa únic, sinó un conjunt de peces integrades i mantingudes per Valve i CodeWeavers perquè Steam pugui executar binaris de Windows a Linux. Convé entendre què inclou, perquè les fallades solen venir d’una d’aquestes capes:

  • Wine: la base. Tradueix crides de Windows (Win32, Win64) a Linux. Cada joc s’executa en un prefix (entorn aïllat amb el seu propi C: virtual).
  • DXVK: converteix DirectX 9/10/11 a Vulkan. Si un joc antic basat en DX11 va malament, probablement la fallada és aquí.
  • vkd3d-proton: converteix DirectX 12 a Vulkan. Cyberpunk 2077, RDR2 o Elden Ring depenen d’aquest mòdul.
  • Llibreries addicionals: FAudio (so XAudio2), suport de comandaments (SDL2 + Steam Input), integració amb VR, parxís per a EAC/BattleEye.
  • Scripts i pegats propis de Proton: solucionen incompatibilitats conegudes (exemple: jocs que requereixen certes DLLs de Windows).

1.2. Instal·lació i ubicació de Proton a Steam

En distribucions modernes, n’hi ha prou d’instal·lar Steam des de repositori oficial o Flatpak. Proton ve inclòs. Per defecte, Steam guarda les seves versions en:

~/.steam/steam/steamapps/common/Proton <versió>

Per saber què tens disponible:

  • Steam → Paràmetres → Steam Play → “Activar Steam Play per a tots els títols”.
  • Aquí apareixeran les versions de Proton instal·lades.

1.3. Quina versió triar i per què

Steam té 3 branques:

  • Proton estable: provada, sense sorpreses.
  • Proton Experimental: integra pegats en proves. Útil per a jocs nou llançats o amb fallades recents.
  • Proton-GE (GloriousEggroll): compilació comunitària amb pegats que Valve no ha integrat encara. És molt popular perquè corregeix fallades concretes (reproducció de cinemàtiques en alguns títols, suport de codecs, fixes per a anticheat, etc.).

Exemple real

  • Elden Ring → necessita Proton Experimental o GE per evitar stuttering amb EAC.
  • Cyberpunk 2077 → funciona millor amb Proton-GE perquè inclou pegats de vkd3d més recents.
  • DOOM Eternal → n’hi ha prou amb Proton estable.

1.4. Instal·lar Proton-GE fàcilment amb ProtonUp-Qt

En lloc de compilar Proton-GE manualment, el més ràpid és fer servir ProtonUp-Qt:

A Arch:

sudo pacman -S protonup-qt

A Ubuntu/Debian via Flatpak:

flatpak install flathub net.davidotek.pupgui2

Després:

  • Obre ProtonUp-Qt.
  • Selecciona instal·lació a Steam.
  • Descarrega l’ última Proton-GE.
  • Reinicia Steam: apareixerà a la llista de versions.

Així pots triar Proton-GE per joc sense tocar Wine manualment.

1.5. Activació de Proton per joc

No tots els jocs necessiten Proton. Alguns (ex. Dota 2, CS:GO, Celeste, Hollow Knight) tenen versió nativa per a Linux. Fer servir Proton aquí pot reduir el rendiment.

Per això convé activar Proton per joc:

  • Clic dret en el joc → Propietats.
  • Compatibilitat → “Forçar l’ús de Proton X.Y”.

D’aquesta manera evites aplicar Proton globalment i espatllar el rendiment de títols que ja tenen versió Linux.

1.6. Prefixos: què són i com gestionar-los

Cada joc té el seu propi “entorn Windows” dins de Proton. Ruta:

~/.steam/steam/steamapps/compatdata/<appid>/

A dins trobaràs:

  • pfx/ → el prefix Wine (amb el seu “C:” virtual).
  • drive_c/ → simula la carpeta de Windows.

Accions útils:

  • Esborrar prefix si un joc falla després d’actualitzacions:
rm -rf ~/.steam/steam/steamapps/compatdata/<appid>/

Steam el recrea net en rellançar el joc.

  • Editar prefix amb winetricks si un joc necessita llibreries extra:
WINEPREFIX=~/.steam/steam/steamapps/compatdata/<appid>/pfx winetricks corefonts vcrun2019
  • Migrar prefix entre PCs copiant la carpeta <appid>. Útil si vols mantenir instal·lacions o saves manuals.

1.7. Variables d’entorn clau per a Proton

A Steam pots afegir opcions en Propietats → Opcions de llançament. Exemples:

  • Forçar el backend OpenGL si DXVK defectes:
PROTON_USE_WINED3D=1 %command%
  • Desactivar Esync si causa inestabilitat:
PROTON_NO_ESYNC=1 %command%
  • Limitar framerate amb DXVK:
DXVK_FRAME_RATE=60 %command%
  • Activar log de Proton:
PROTON_LOG=1 %command%

Genera steam-<appid>.log al teu home, útil per a depuració.

1.8. Gestió de DXVK i caché de shaders

Una de les queixes més comunes a Proton és l ‘stuttering per compilació de shaders. Què fer:

  • Activa “Shader Pre-Caching” a Steam (Paràmetres → Descàrregues → Shader Pre-Caching).
  • Si un joc segueix amb microtallades, esborra la caché de DXVK:
rm -rf ~/.cache/dxvk
  • Amb GPUs AMD modernes, Mesa compila i guarda els shaders a /var/cache/mesa_shader_cache/. Esborrar-la de vegades ajuda després d’ actualitzacions grans.

1.9. Exemple complet: instal·lar i córrer un joc a Proton

Suposem The Witcher 3 en un equip amb AMD GPU:

  • Instala drivers Mesa recientes (mesa, vulkan-radeon, lib32-vulkan-radeon).
  • Instal·la Proton-GE amb ProtonUp-Qt.
  • A Steam, en el joc → Propietats → Compatibilitat → Forçar Proton-GE 9.x.
  • Opcions de llançament:
gamemoderun mangohud %command%

(això activa Gamemode + MangoHud per monitoritzar).

  • Activa Shader Pre-Caching a Steam.
  • Juga → rendiment proper a Windows, amb FPS estables.

1.10. Bones pràctiques en fer servir Proton al dia a dia

  • No facis servir proton globalment: només en jocs que ho necessitin.
  • Tingues diverses versions disponibles (estable, experimental, GE).
  • Aprèn a netejar prefixos: és més ràpid que reinstal·lar tot.
  • Fes servir ProtonDB com a referència abans d’instal·lar un joc.
  • Fes backup de saves manualment: tot i que Steam Cloud funciona, de vegades un prefix trencat s’emporta saves locals.

2. Heroic Launcher: gestió d’Epic i GOG a Linux sense complicacions

2.1. Què és Heroic i per què triar-lo

Heroic Launcher és un frontend gràfic per  a Legendary, una eina en CLI que permet accedir a la teva biblioteca d’Epic Games. Amb el temps, Heroic també ha integrat suport per a GOG i Amazon Prime Gaming, de manera que avui és el punt d’entrada més còmode per als qui vulguin jugar a Linux títols que no són a Steam.

El seu avantatge principal:

  • Interfície clara, sense dependre de Wine per executar el client oficial d’Epic.
  • Permet triar la versió de Proton/Wine a fer servir a cada joc.
  • Integra configuració de variables d’entorn, DXVK, esync/fsync, Gamemode.
  • Sincronitza saves amb el núvol d’Epic i GOG (quan el joc el suporta).

2.2. Instal·lació i primera arrencada

La via més senzilla és el paquet Flatpak (es manté molt actualitzat):

flatpak install flathub com.heroicgameslauncher.hgl

A Arch/Manjaro també existeix a AUR:

yay -S heroic-games-launcher-bin

En obrir-lo, el primer és iniciar sessió a Epic i/o GOG. Per a Epic, Heroic obrirà una finestra web de login. Per a GOG, n’hi ha prou amb les credencials del teu compte. Un cop fet, veuràs la teva biblioteca.

2.3. Descàrrega i gestió de jocs

Heroic no executa el client oficial d’ Epic: descarrega els binaris directament mitjançant Legendary. Això significa que:

  • No hi ha botiga en temps real dins d’Heroic. Per comprar, necessites fer-ho des del navegador al web d’Epic o GOG.
  • La instal·lació és lleugera, sense publicitat ni sobrecàrrega.

Els jocs es descarreguen en la ruta que defineixin en Configuració → Carpetes. Convé assignar un disc amb bon rendiment de lectura (NVMe si és possible) perquè alguns títols d’Epic, com Borderlands 3, carreguen moltes textures dinàmiques.

2.4. Wine, Proton i Vi-GE en Heroic

Heroic necessita un “runner” per executar els jocs de Windows. Aquí hi ha diverses opcions:

  • Proton (Valve): es pot fer servir dins d’Heroic. Normalment ho detecta si està instal·lat a Steam.
  • Wine estàndard: recomanat només si busques una cosa molt específica o per a proves.
  • Wine-GE (GloriousEggroll): igual que Proton-GE, però pensat per a Heroic/Lutris. És l’opció més recomanable en la majoria de jocs d’Epic.

Instal·lació de Wine-GE a Heroic

Heroic inclou un gestor intern: Configuració → Wine Manager.Aquí pots instal·lar Wine-GE i versions específiques de Proton-GE. Apareixeran després a la llista desplegable de cada joc.

Això evita haver de compilar manualment Wine amb pegats, que és laboriós i no sempre estable.

2.5. Configuració avançada per joc

A Heroic, cada joc té una pestanya de Configuració. Les opcions més rellevants són:

  • DXVK / VKD3D: activar o desactivar la traducció a Vulkan. Alguns jocs antics funcionen millor amb OpenGL forçat (PROTON_USE_WINED3D=1).
  • Esync i Fsync: acceleren la gestió de fils a Wine. Convé tenir-los activats llevat que notis inestabilitat.
  • Gamemode: integra gamemoderun automàticament si el tens instal·lat.
  • Variables d’entorn personalitzades: pots afegir el mateix que a Steam (exemple: PROTON_LOG=1).

Exemple pràctic: Borderlands 3 (Epic)

  • Instal·lar amb Wine-GE més recent.
  • Activar DXVK i Fsync.
  • En variables d’ entorn, afegir:
DXVK_ASYNC=1

Això redueix stuttering a GPU AMD.

  • Guardar i llançar: rendiment similar a Steam amb Proton.

2.6. Gestió de prefixos a Heroic

Cada joc té el seu propi prefix, igual que a Proton. La ruta habitual és:

~/.var/app/com.heroicgameslauncher.hgl/config/heroic/Prefixes/<nombre del juego>/

Accions útils:

  • Resetejar prefix: des de la interfície, Heroic permet esborrar l’entorn Wine i regenerar-lo. Molt útil si un pegat el trenca.
  • Winetricks: Heroic permet executar winetricks directament sobre un prefix concret. Per exemple, instal·lar vcrun2019  si un joc ho exigeix.

2.7. Sincronització de saves

Heroic sincronitza amb el núvol d’Epic i GOG quan el joc el suporta. No obstant això, hi ha matisos:

  • Alguns jocs d’Epic no exposen l’API de saves (exemple: GTA V). En aquest cas, Heroic no pot sincronitzar.
  • Per fer backup manual: copiar la carpeta Saved Games dins del prefix.

Exemple: The Outer Worlds (Epic) → saves a

~/.var/app/com.heroicgameslauncher.hgl/config/heroic/Prefixes/TheOuterWorlds/pfx/drive_c/users/steamuser/Saved Games

2.8. Logs i diagnòstic

Quan un joc no arrenca a Heroic:

  • Obre Configuració del joc → pestanya Logs.
  • Activa WINEDEBUG=-all,+seh,+tid per obtenir un log detallat.
  • Revisa si falta alguna DLL o si hi ha error de DXVK.

Moltes vegades els errors de llançament se solucionen instal·lant els Visual C++ Runtimes amb winetricks:

WINEPREFIX=~/.var/app/com.heroicgameslauncher.hgl/config/heroic/Prefixes/<juego>/pfx winetricks vcrun2019

2.9. Integració amb altres launchers

Tot i que Heroic cobreix Epic i GOG, no és exclusiu:

  • Pots exportar jocs a Steam (apareixen com a accessos directes). Útil per centralitzar-ho tot i seguir fent servir Big Picture/Steam Deck UI.
  • També pots barrejar Heroic amb Lutris si necessites configuracions encara més fines (exemple: instal·lar mods complexos).

2.10. Exemple complet: instal·lar i configurar un joc de GOG

Suposem que vols jugar a Disco Elysium (GOG) a Linux fent servir Heroic:

  • Instal·la Heroic via Flatpak.
  • Inicia sessió amb el teu compte de GOG.
  • Descàrrega Disco Elysium des d’Heroic.
  • En Configuració del joc:
    • Runner: Wine-GE més recent.
    • DXVK activat.
    • Gamemode habilitat.
  • Variables opcionals:
MANGOHUD=1 %command%

per monitoritzar FPS.

  • Llançar → el joc corre estable, amb temps de càrrega més ràpids que a Windows.

2.11. Bones pràctiques amb Heroic

  • Mantenir diversos runners instal·lats (Wine-GE 8.x, 9.x i Proton-GE) per provar quina versió va millor amb cada títol.
  • No instal·lis tot al mateix prefix: deixa que Heroic en creï un per joc per evitar conflictes.
  • Fes servir els logs quan alguna cosa falli: no reinstal·lis sense més, revisa primer quin DLL falta.
  • Recolza saves manualment: encara que Heroic sincronitzi, mai confiïs al 100 % en Epic/GOG Cloud.

3. Optimització de rendiment a Linux per a gaming

La compatibilitat que ofereixen Proton i Heroic no serveix de gaire si el sistema no està ben preparat. En aquest bloc s’aborden ajustos que solen marcar diferències notables en jocs exigents o inestables.

3.1. Controladors gràfics

AMD

  • Els drivers lliures Mesa són l’opció recomanada.
  • En distribucions rolling (Arch, Manjaro, Fedora Rawhide) convé mantenir Mesa actualitzat, perquè moltes millores arriben mensualment.
  • Paquet clau:
sudo pacman -S mesa vulkan-radeon lib32-vulkan-radeon
  • A Ubuntu:
sudo add-apt-repository ppa:kisak/kisak-mesa
sudo apt update && sudo apt upgrade

NVIDIA

  • Aquí el crític és fer servir el driver propietari.
  • Exemple a Arch:
sudo pacman -S nvidia nvidia-utils lib32-nvidia-utils
  • A Ubuntu, normalment n’hi ha prou amb:
sudo ubuntu-drivers autoinstall
  • Per a portàtils híbrids: prime-run (Arch/Manjaro) o nvidia-prime (Ubuntu).

Diferència pràctica: en AMD rara vegada necessites scripts addicionals. A NVIDIA gairebé sempre cal llançar els jocs amb prime-run %command% si vols fer servir la GPU dedicada.

3.2. Kernel i pegats relacionats

El kernel influeix més del que sembla en jocs amb alt ús de fils.

  • Esync/Fsync requereixen que el kernel tingui certes capacitats de gestió d’esdeveniments. Avui la majoria de distros modernes l’inclouen.
  • Per a entorns exigents (eSports, simuladors amb molta E/S) alguns opten per kernels amb pegats Liquorix o Zen:
# Exemple en Debian/Ubuntu
sudo add-apt-repository ppa:damentz/liquorix
sudo apt update
sudo apt install linux-image-liquorix-amd64 linux-headers-liquorix-amd64

No sempre donen més FPS, però poden suavitzar stuttering.

3.3. Gamemode

Desenvolupat per Feral Interactive, gamemode ajusta paràmetres del sistema en executar un joc:

  • Canvia el governador de CPU a performance.
  • Desactiva estalvi d’ energia de GPU.
  • Optimitza l’I/O scheduler.

Instal·lació

A Arch:

sudo pacman -S gamemode lib32-gamemode

A Ubuntu:

sudo apt install gamemode

Ús

A Steam:

gamemoderun %command%

A Heroic: activar la casella “Gamemode”.

Convé verificar que està actiu amb:

gamemoded -s

3.4. MangoHud

Overlay per monitoritzar FPS, frametimes, temperatura i consum de GPU/CPU. Molt útil per detectar colls d’ampolla reals.

Instal·lació

Arch:

sudo pacman -S mangohud lib32-mangohud

Ubuntu:

sudo apt install mangohud

Ús

A Steam:

MANGOHUD=1 %command%

A Heroic: afegir-lo com a variable d’ entorn.

Exemple de configuració personalitzada (~/.config/MangoHud/MangoHud.conf):

fps
frametime
cpu_temp
gpu_temp
gpu_core_clock
gpu_mem_clock

3.5. Shaders ocults

Els stutters en jocs DXVK solen deure’s a shaders que es compilen en temps real.

  1. A Steam, Valve distribueix caché precompilats. Si Proton mostra stutter inicial, és probable que encara no tinguis la caché descarregada.
  2. A Heroic, no hi ha distribució automàtica. La solució és jugar una estona perquè DXVK creï la caché a:
~/.cache/dxvk/

o fer servir DXVK_STATE_CACHE = 0 per desactivar-lo si dóna problemes.

Una altra variable útil:

DXVK_ASYNC=1

Permet compilar shaders en segon pla, reduint microparons.

3.6. Gestió d’energia en portàtils

El rendiment en laptops depèn de perfils d’energia i GPU híbrida.

AMD iGPU + dGPU (Radeon/Navi)

Normalment tot funciona amb DRI_PRIME=1 %command%.

Intel iGPU + NVIDIA

Recomanat fer servir prime-run %command% (Manjaro/Arch) o __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia %command% en altres distros.

Per a gestió de bateria: tlp o power-profiles-daemon. En jocs, convé fixar sempre el perfil de rendiment:

powerprofilesctl set performance

3.7. Àudio i latència

Alguns jocs tenen talls de so sota PipeWire/PulseAudio. Solucions:

  • Forçar ALSA a Proton:
  • PULSE_LATENCY_MSEC=60 %command%
  • Si fas servir Proton Experimental, activar “low latency audio” en configuracions internes.

3.8. Modificacions i superposicions

Proton i Wine permeten carregar mods, però de vegades l’estructura de carpetes difereix.

  • Ruta habitual:
.../steamapps/compatdata/<AppID>/pfx/drive_c/users/steamuser/My Documents/
  • A Heroic: dins del prefix corresponent.

Eines com Vortex Mod Manager funcionen sota Proton/Wine, tot i que poden requerir winetricks (dotnet48).

3.9. Casos pràctics d’optimització

Cyberpunk 2077 (Steam Proton)

  • Proton-GE recomanat.
  • Variables:
DXVK_ASYNC=1
RADV_PERFTEST=aco
  • A GPU NVIDIA: desactivar Async si apareixen glitches.

Elden Ring (Steam Proton)

  • Necessita Proton-GE per evitar stuttering per Easy Anti-Cheat.
  • Gamemode + MangoHud per vigilar pics.

Red Dead Redemption 2 (Heroic, Rockstar via Epic)

  • Runner: Wine-GE més recent.
  • Variables:
PROTON_USE_WINED3D=0
DXVK_ASYNC=1
  • Llançar sempre a Vulkan, DirectX 12 sol fallar.

3.10. Check ràpid

  • Drivers actualitzats (Mesa o NVIDIA propietari).
  • Kernel ≥ 6.x amb suport fsync.
  • gamemoderun i mangohud instal·lats.
  • Prefixos nets, un per joc.
  • Proton-GE i Wine-GE disponibles.
  • Variables provades amb logs, no a cegues.
  • Exportar saves manualment de cop.

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *