Table des matières
Bonjour à tous,
Récemment, je me suis enfin motivé à passer de Windows 11 à Linux.
Pourquoi quitter Windows 11 ? J’aurai envie de dire comment y rester après tous les choix de Microsoft: mettre leur IA (Intelligence Artificielle) partout, sortir des versions avec toujours plus de bugs les unes que les autres.
Bref, après des années de procrastination sur Windows sous prétexte de garder “mon PC de jeu”, j’ai enfin migré.
Tout d’abord, je possède un Steam Deck, la console portable faites par Valve, ceux qui gèrent la plateforme de distribution de jeux en ligne Steam. Ce dernier fonctionne parfaitement et se trouve être sous Linux. Ensuite, je n’ai plus vraiment le temps de jouer à part quelques parties de Hadès sur le Steam Deck justement mais aussi de Hearthstone. Donc plus vraiment de raisons de rester sous Windows.
Par souci de simplicité, je me suis mis sur Ubuntu 24.04 pour avoir (ou tenter d’avoir) une expérience la plus simple avec ma carte graphique etc… Bref, dans cet article, on va parler de Steam, de Proton et surtout de Hearthstone dont j’avais fait un article il y a déjà presque 10 ans (oui, j’y jouais déjà à sa sortie, ça date !).
Linux, Steam et Proton
Wine
Depuis que le Steam Deck est sorti, on peut dire que l’expérience jeux-vidéo s’est grandement améliorée sous Linux (surtout pour le grand public).
En effet, Wine existe depuis 1993.
Il s’agit d’un logiciel libre dont l’acronyme est récursif et signifie Wine Is Not an Emulator.
Il apporte une couche de compatibilité permettant d’exécuter des applications Windows sur des systèmes d’exploitation POSIX.
Ça n’est donc pas un émulateur dans le sens où Wine traduit à la volée les appels Windows en appels POSIX.
Proton
Quant à lui, Proton est un autre logiciel libre développé par Valve (les développeurs de Steam) depuis 2018.
En réalité, Proton est un dérivé de Wine (un fork en anglais) et est totalement intégré à Steam justement. Valve rajoute la conversion de DirectX vers Vulkan mais aussi des correctifs spécifiques pour des jeux précis ainsi que des workarounds (solution de contournement à un problème) temporaires ou non standards. Le but de Proton étant que les jeux tournent bien et sans attendre des patchs pendant des mois.
Ce sont ces derniers points qui font que Valve maintient Proton mais ne patche pas directement Wine dont la philosophie est de garder un comportement relativement fidèle à Windows et surtout de rester générique. Cela dit, Valve contribue tout de même énormément au code de Wine (sur tout ce qui peut être accepté là-bas finalement).
Il existe aussi maintenant un fork communautaire de Proton appelé Proton GE dont le but est de rajouter les correctifs de Proton directement dans Wine. Cela permet de bénéficier des améliorations des 2 côtés parfois plus rapidement que sur Proton directement. Honnêtement, je n’ai pas testé ce fork, je préfère rester sur la solution fournie par Valve par souci de pérennité.
ProtonDB
Enfin, ProtonDB est enfin un site communaire décrivant la compatibilité des jeux Steam avec Proton en utilisant un système de badge allant de Injouable à Platine. De la même façon, sur le Steam Deck, Valve rajoute également un badge Non supporté, Jouable ou Vérifié qui permet de donner une idée relativement fiable de si le jeu tourne sans soucis ou pas.
C’est donc bien pratique pour éviter les jeux qui ne fonctionneraient pas bien. Hearthstone n’étant pas un jeu Steam, il ne fait pas partie de ces listes mais tourne pourtant très bien. Nous allons voir maintenant comment l’installer et le lancier via Proton.
Installations et lancement
Dans les exemples ci-dessous, je prendrai les chemins par défaut, ils seront bien sûr à adapter si votre installation diffère (j’ai par exemple mon installation de Steam sur un autre disque). De plus (et par habitude), mon installation de Steam est en français et le reste en anglais.
Installation de Battle.net
Ici, on commence par l’installation et la configuration du launcher Battle.net depuis lequel on pourra installer Hearthstone.
Je considère que vous avez Steam installé (via les paquets officiels par exemple).
Voici les étapes à suivre:
- Télécharger l’application Battle.net.
- Depuis Steam cliquer sur
Ajouter un jeu(tout en bas à gauche) puisAjouter un jeu non Steam.... - Rechercher ensuite le fichier
Battle.net-Setup.exe(celui téléchargé à la première étape):- Le launcher est maintenant présent dans notre bibliothèque Steam.
- Faire un clic droit dessus, puis
Propriétés.... - Dans l’onglet
Compatibilité, choisir la version la plus récente de Proton (10.0-3pour ma part). - Lancer ensuite Battle.net et suivre le processus classique d’installation.
- Le raccourci dans Steam permet maintenant de lancer l’installeur de Battle.net, on veut récupérer le
.exedu launcher pour ne pas le réinstaller à chaque fois:- Réaliser la commande
finddans le dossier de Steam:find ~/.local/share/Steam/ -name 'Battle.net Launcher.exe'. - Dans les propriétés de Battle.net (voir étape 4), aller dans l’onglet
Raccourci. - Dans le champ
CIBLE, mettre l’emplacement (entre guillemets) du launcher (exemple:"~/.local/share/Steam/steamapps/compatdata/XXXXXXXX/pfx/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe").
- Réaliser la commande
- Le launcher peut maintenant être lancé et Hearthstone installé depuis ce dernier.
Installation de Hearthstone Deck Tracker
Maintenant, on enchaîne avec l’installation et la configuration de Hearthstone Deck Tracker.
- Télécharger la dernière version du tracker
- L’extraire dans un endroit “pérenne” (c’est le fichier
.exequi sera lancé à chaque fois). D’ailleurs, je vous conseille de ne pas nommer le dossier avec la version du tracker pour pouvoir le mettre à jour simplement à l’avenir. - Depuis Steam cliquer sur
Ajouter un jeu(tout en bas à gauche) puisAjouter un jeu non Steam...et sélectionner le fichierHearthstone Deck Tracker.exe.- Le tracker est maintenant présent dans notre bibliothèque Steam.
- Faire un clic droit dessus, puis
Propriétés.... - Dans l’onglet
Raccourcipuis le champOPTIONS DE LANCEMENT:- Retrouver le chemin du préfixe proton (voir étape 7 lors de l’installation de Battle.net ci-dessus).
- Y adapter le chemin et mettre l’option:
STEAM_COMPAT_DATA_PATH="~/.local/share/Steam/steamapps/compatdata/XXXXXXXX" %command%. Cela va permettre au tracker de tourner dans le même préfixe Proton que Hearthstone, c’est nécessaire pour que le tracker puisse récupérer les logs de Hearthstone nécessaires à son bon fonctionnement.
- Dans l’onglet
Compatibilité, choisir la même version de Proton que pour Battle.net (voir étape 5 lors de l’installation de Battle.net ci-dessus). - Dans le tracker, dans les Options puis
OverlaypuisGeneral, je conseille de cocher la caseShow gameplay Overlay while Hearthstone is in the background. Autrement, il y a beaucoup de ralentissements à chaque changement de fenêtre.
Lancement de Hearthstone et du tracker
Si on veut tout lancer depuis Steam, il faut d’abord lancer le tracker.
Depuis ce dernier, il faut alors cliquer sur le bouton Start Hearthstone (en haut à droite sur fond bleu).
Cependant, ce n’est pas la méthode que je préconise car Hearthstone souffre parfois de petites lenteurs.
Comme il n’est pas possible depuis Steam de lancer les 2 séparément (c’est le tracker qui lance le jeu), on va donc se passer de Steam et les lancer via Proton en ligne de commande.
Voici ce que j’ai mis dans mon fichier ~/.bashrc:
1STEAM_CLIENT="~/.local/share/Steam"
2PROTON_PREFIX="~/.local/share/Steam/steamapps/compatdata/XXXXXXXX"
3BATTLE_NET_EXE="~/.local/share/Steam/steamapps/compatdata/XXXXXXXX/pfx/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe"
4HS_DECK_TRACKER_EXE="~/Games/Hearthstone-Deck-Tracker/Hearthstone Deck Tracker.exe"
5PROTON="~/steamapps/common/Proton 10.0/proton"
6
7alias Battlenet='STEAM_COMPAT_CLIENT_INSTALL_PATH="${STEAM_CLIENT}" STEAM_COMPAT_DATA_PATH="${PROTON_PREFIX}" "${PROTON}" run "${BATTLE_NET_EXE}"'
8alias HearthstoneDeckTracker='STEAM_COMPAT_CLIENT_INSTALL_PATH="${STEAM_CLIENT}" STEAM_COMPAT_DATA_PATH="${PROTON_PREFIX}" "${PROTON}" run "${HS_DECK_TRACKER_EXE}"'
Je peux donc lancer le launcher via l’alias Battlenet.
On pourrait faire un alias vers le binaire de Hearthstone directement, mais en passant par le launcher, on peut lancer les éventuelles mises à jour du jeu.
Enfin, on peut lancer le tracker via HearthstoneDeckTracker, une fois en partie, ce dernier affichera bien l’overlay avec notre deck et celui de notre adversaire (s’affichant au fur et à mesure qu’il soit révélé).
Conclusion
Il serait également possible de faire tout cela sans Steam, avec des solutions telles que Lutris par exemple. Cependant, je n’ai jamais réussi à avoir l’overlay du tracker via Lutris, et Hearthstone tournait légèrement moins bien également.
Bref, il existera plein d’autres façons, cet article a principalement pour but de montrer que c’est possible (et de me servir de mémo dans quelques mois/années).







