- Steam Deck et SteamOS illustrent comment l’investissement de Valve dans Linux dépasse le cadre d’un appareil de jeu pour bénéficier à l’ensemble de l’écosystème open source
- SteamOS repose sur Arch Linux, l’espace utilisateur GNU, systemd et KDE Plasma, et Valve finance aussi des améliorations de KDE Plasma
- Steam Play / Proton, basé sur Wine, a élargi la compatibilité des jeux sous Linux, tandis que des projets comme DXVK et VKD3D-Proton créent eux aussi de la valeur
- Le champ des contributions couvre les pilotes Mesa OpenGL/Vulkan, les pilotes graphiques du noyau, la gestion des couleurs/HDR chez AMD, Zink, Gamescope, Flatpak, etc.
- Selon Igalia, la politique de Valve consiste à tout faire remonter en upstream, avec des effets qui profitent aussi à l’écosystème du bureau Linux
L’effet upstream parti du Steam Deck
- Le travail de Valve sur le Steam Deck et SteamOS est présenté comme un exemple qui tire vers le haut l’ensemble de l’écosystème open source
- Lors de l’Open-Source Summit de Linux Foundation Europe, Alberto Garcia d’Igalia a expliqué comment SteamOS contribue à l’écosystème Linux
- Igalia continue de collaborer avec Valve sur une partie des travaux d’amélioration de l’écosystème Linux
Les fondations de SteamOS et sa configuration desktop
- SteamOS est construit sur Arch Linux et utilise l’espace utilisateur GNU ainsi que systemd
- Le mode bureau propose KDE Plasma, et Valve finance une partie des travaux d’amélioration de KDE Plasma
- Steam Play / Proton s’appuie sur Wine et apporte une forte valeur aux joueurs Linux comme aux passionnés de Linux
- Parmi les projets open source associés figurent DXVK et VKD3D-Proton
Contributions à la pile graphique et au noyau
- Les ingénieurs de Valve ont apporté de nombreuses améliorations aux pilotes Mesa OpenGL/Vulkan et à des composants des pilotes graphiques du noyau
- Les contributions ne se limitent pas aux pilotes graphiques AMD profitant directement au matériel du Steam Deck
-
Zink OpenGL-on-Vulkan
- Le travail sur Zink OpenGL-on-Vulkan rejoint l’amélioration de l’infrastructure graphique commune
- Dans le domaine du support des pilotes graphiques Linux, les contributions de Valve et de ses partenaires profitent aussi à l’écosystème du bureau Linux au-delà du jeu
De la gestion des couleurs AMD à Flatpak
- Les ingénieurs d’Igalia participent avec Valve aux travaux sur la gestion des couleurs AMD et le HDR
- Igalia est également impliquée dans des domaines comme l’activation de nouvelles fonctionnalités du noyau Linux pour améliorer la prise en charge de Steam Play
- D’autres travaux auxquels Valve a contribué se déclinent aussi dans plusieurs directions
- Extension de la prise en charge des systèmes de fichiers insensibles à la casse sous Linux
- Diverses fonctionnalités du noyau
- Le compositeur Wayland Gamescope
- Mises à jour logicielles immuables
- Flatpak
La politique « upstream everything »
- Selon Igalia, une partie de la politique de Valve consiste à tout faire remonter en upstream
- Pour une vue plus complète des contributions de Valve à Linux et aux logiciels open source, on peut consulter la présentation OSS EU 2023 d’Alberto Garcia
1 commentaires
Avis sur Hacker News
Si Valve est autant appréciée, ce n’est pas seulement grâce à Steam : dès Half-Life 1, l’entreprise a cherché à créer de bons jeux et à offrir une bonne plateforme aux joueurs, tout en s’attaquant, pour eux, à des sujets hors de son périmètre habituel comme Linux ou la VR.
Même s’il y a des points critiquables, comme les règles de la boutique Steam, j’ai l’impression que Valve s’est toujours souciée des joueurs. Je ne suis pas devenu fan à cause d’un jeu en particulier, mais grâce à son soutien constant pour rendre les « jeux » accessibles à tous.
Gabe s’inquiétait de l’intérêt croissant de Microsoft pour le jeu vidéo et, si le passage à la distribution numérique était inévitable, il semble avoir voulu créer une plateforme favorable aux joueurs avant que Microsoft ne le fasse. Quand on regarde les alternatives comme Microsoft, Epic ou GOG, aucune n’a mieux accompagné la transition vers la distribution en ligne que Valve, et le fait d’avoir proposé pour les jeux numériques une politique proche du « remboursement sans poser de questions » est remarquable. Même dans les cas où la politique ne convenait pas, comme des jeux cassés en dehors de la période de remboursement, Valve a su faire des exceptions et traiter les choses dans le bon sens.
Le support client n’a d’abord pas aidé ; j’ai envoyé une réclamation à Gabe, et l’un des développeurs de Steam m’a répondu en reconnaissant que la première prise en charge ne correspondait pas à l’expérience souhaitée. Ils m’ont renvoyé les exemplaires des jeux remboursés et m’ont même envoyé des codes pour « tous les titres Valve actuels et futurs », afin que mon fils et moi puissions jouer ensemble. Au final, cela n’a fait que renforcer mon attachement à l’entreprise et à la plateforme.
Epic insiste sur le fait qu’une boutique numérique peut être rentable avec seulement 12 % de commission, mais on ne voit pas autant qu’avec Valve cet argent réinvesti pour améliorer la plateforme pour tout le monde, avec des choses comme Steam Input, Proton ou Workshop.
Utiliser Steam avec un lecteur d’écran reste difficile au point que des gens ont dû rédiger des guides d’utilisation ; la situation s’est un peu améliorée récemment sous Windows, mais elle reste mauvaise sur Mac. Il existe pas mal de jeux Steam auxquels des personnes aveugles peuvent jouer, que ce soit via une prise en charge native ou un mode d’accessibilité, mais le Steam Deck n’offre aucune prise en charge de l’accessibilité, alors qu’il existe des lecteurs d’écran sous Linux et que la PS5 comme la Xbox disposent aussi de leurs propres fonctionnalités. Il est difficile de croire que Valve s’en soucie vraiment.
[1] (obsolète) https://www.mail-archive.com/audiogames-reflector@sabahattin...
[2] https://blind.shadows1428.com/
[3] https://mortalkombatgamessupport.wbgames.com/hc/en-us/articl...
[4] https://github.com/bradjrenshaw/say-the-spire
[5] https://www.nexusmods.com/stardewvalley/mods/16205
[6] https://www.youtube.com/watch?v=yQC6TJkBElY
[7] https://www.a11yproject.com/posts/getting-started-with-orca/
[8] https://support.xbox.com/en-US/help/account-profile/accessib...
[9] https://www.playstation.com/en-us/support/hardware/ps5-acces...
Je n’ai pas de Steam Deck et je n’ai jamais essayé SteamOS, mais ces dernières années, la prise en charge des anciens comme des nouveaux jeux sous Linux s’est améliorée de façon spectaculaire ; désormais, il semble plus probable que la plupart des jeux se lancent
Le fait que Valve ne garde pas ces améliorations pour elle et les ait reversées en upstream est également excellent, et j’espère que cela continuera
Comme elle et ses sous-traitants envoient presque tout leur travail en upstream, ils n’ont pas besoin de maintenir des divergences séparées, et n’ont pas non plus à compiler eux-mêmes la majeure partie des logiciels qu’ils distribuent. Contrairement à de nombreuses entreprises propriétaires qui cherchent à tout enfermer autant que possible en interne, Valve sait qu’en collaborant étroitement avec les projets upstream, on obtient au final de meilleurs logiciels avec beaucoup moins d’efforts, même si la coordination initiale est plus importante. En tant que créateur et lead developer de Proton pendant ses cinq premières années (2016-2021), je peux dire que Valve a tenu pour acquis dès le premier jour que l’essentiel du travail irait en upstream, ce qui s’est traduit par de bons résultats et de bonnes relations avec les communautés dans d’autres projets open source
[1] P. ex. https://www.codeweavers.com/blog/aeikum/2019/3/27/how-proton...
C’est seulement ensuite que j’ai réalisé à quel point le simple fait d’avoir supposé que le jeu tournerait sous Linux allait de soi était un changement incroyable
Ce n’est pas parfait et tout ne fonctionne pas bien, mais presque tous les jeux que je veux lancer fonctionnent, et presque tous ceux auxquels je joue tournent plutôt bien. Je joue aussi à BG3 sur Steam Deck. Quand je finirai par me poser et monter un nouveau PC gaming, j’y installerai Linux
Je pense qu’une grande raison pour laquelle Valve est une bonne entreprise est qu’elle est non cotée, ce qui lui permet un mode de gestion non traditionnel
Ce n’est pas comme ces sociétés cotées qui font venir des dirigeants capables de prendre des décisions absurdement mauvaises. Le cas d’Unity me vient à l’esprit
En même temps, Valve a aussi une vision qu’elle a pu cultiver sur le long terme. Une autre entreprise se contenterait de fabriquer un produit minimum viable puis partirait si cela ne rapportait pas assez ; Valve, elle, semble avoir les moyens et la direction nécessaires pour continuer à consacrer des ressources à la recherche, au développement et à la planification à long terme. Parmi des sociétés cotées de plus en plus avides, Valve rend le monde open source, et peut-être le monde au sens large, meilleur
À l’inverse, une société non cotée peut faire son travail comme un vignoble toscan vieux de 500 ans et se satisfaire de dégager un bénéfice, ou parfois un bénéfice moindre, tant qu’elle gagne assez pour employer des gens et maximiser le savoir-faire sur le long terme. Les excellents produits sont le résultat naturel de ce type de culture, et le chiffre d’affaires suit généralement les bons produits
Proton est vraiment un projet formidable, et un bon exemple de ce qui fait de Steam une plateforme appréciée par la communauté. Il n’y a pas de motivation financière directe à élargir le choix et à améliorer la compatibilité
Maintenant, si seulement les entreprises d’anti-cheat prenaient Linux en charge, les scores protonDB exploseraient du jour au lendemain
Aucun kernel n’a jamais eu une notoriété et une capacité d’adaptation aussi immenses que Linux. Peu de tâches sollicitent autant de domaines d’un système d’exploitation en même temps que le jeu vidéo
Si les développeurs de jeux, en particulier ceux qui optimisent les moteurs en profondeur, commencent à contribuer à Linux et à l’ajuster pour en tirer un maximum de performances, de débit et de faible latence, le jeu vidéo progressera d’une manière que les options actuelles ne peuvent pas suivre ni offrir de façon comparable. Si un grand fournisseur AAA nous lit, qu’il considère qu’il existe une vaste communauté largement négligée, prête à coopérer, à aider et à améliorer tout ce qui est nécessaire pour faire mieux fonctionner ses produits. Laissez-nous faire pour le jeu vidéo ce que nous avons fait pour les serveurs, le mobile et le calcul haute performance
Ce serait bien que Valve crée quelque chose comme des Native Linux Game Awards
Par exemple, le meilleur jeu natif Linux recevrait un prix, une mise en avant dans la boutique et 50 % de réduction sur les commissions, tandis que le meilleur jeu exclusif à une plateforme native Linux recevrait un prix, une mise en avant dans la boutique et 100 % de réduction sur les commissions. Proton est utile, comme WINE, mais ce n’est qu’un auxiliaire qui demande beaucoup de travail, représente aussi une lourde charge pour Valve et décourage les ports natifs de qualité. Il nous faut plus de jeux natifs comme HL2 et CSGO, et Valve ne devrait pas faire le travail des développeurs d’applications à leur place. À long terme, les ressources de Valve sont nécessaires pour Linux, Mesa, SDL et autres utilitaires. L’objectif de Proton ne devrait-il pas être de se rendre lui-même inutile ? De l’autre côté aussi, on utilise des API incompatibles comme Mantel et Direct3D, toutes les consoles forcent les utilisateurs à changer de plateforme, et Apple, Microsoft, Sony et Nintendo ont recours depuis des décennies à des exclusivités de plateforme, donc il est difficile d’y voir quelque chose d’injuste. Parmi les bons jeux natifs, il y a HL1, HL2, CS1, CSGO, Civilization, Tomb Raider, OpenRA, et les ports disponibles le jour de la sortie sont particulièrement importants
Cela dit, c’est amusant que tu cites quatre jeux Valve en exemple tout en proposant que Valve récompense ce genre d’efforts. En pratique, ça n’arrivera pas, mais l’imaginer fait sourire. Très peu de développeurs feraient un jeu pour économiser 15 % de partage de revenus, et personne ou presque ne parierait sur une exclusivité Linux pour tenter d’économiser 30 %, donc je ne trouve pas la proposition particulièrement catastrophique. Le problème, c’est que les studios AAA, qui sont ceux qui ont le moins besoin d’argent, pourraient rafler les récompenses. Mais en même temps, ce sont bien ces ports-là qu’on cherche à encourager, donc c’est ambigu. On pourrait séparer une catégorie générale et une catégorie « petite équipe », mais définir ce qu’est une petite équipe serait assez délicat
Avec Proton, on peut même lancer de vieux jeux problématiques comme Dark Messiah of Might and Magic, qui ne tournent plus sous Windows non plus. Insister sur les ports natifs Linux me donne l’impression de laisser passer une bonne solution en poursuivant la perfection, et un port natif ne garantit pas forcément quoi que ce soit. Bien sûr, je suis reconnaissant envers les développeurs qui proposent des ports natifs, mais au final, j’ai juste envie de me détendre en tirant sur le visage de nazis extraterrestres de l’espace, pas de réfléchir à la manière de faire tourner ces nazis extraterrestres de l’espace sur mon ordinateur
Si l’on peut recompiler le code à chaque changement de version, ça va, mais si l’on doit distribuer un binaire immuable, ce n’est pas idéal. Côté Windows, on peut lier statiquement à peu près tout et ne récupérer que les DLL système, et ça marche généralement bien ; sous Linux, même si on le voulait, on ne peut pas vraiment faire ça
Pour faire une promotion un peu honteuse de Steam Remote Play : https://partner.steamgames.com/doc/features/remoteplay
C’est un cas où il n’existait pas de bonne alternative pour jouer à distance sous Linux sans latence, et aujourd’hui certaines personnes préfèrent même cette solution à VNC pour un usage de bureau à distance
En réalité, j’ai acheté le Steam Deck parce que je voulais soutenir l’esprit du Steam Deck. Je pensais que cela pouvait devenir un ordinateur vraiment amusant et intéressant, et je suis content de voir Valve contribuer à nouveau
Je pense que les ventes encouragent clairement cette attitude. Ce n’est pas comme s’ils ne l’avaient jamais fait avant, mais un produit qui réussit aide à tirer le travail. Depuis que je l’ai reçu, j’ai acheté une vingtaine de jeux et je me suis remis au jeu. En voyage, c’est une bouée de sauvetage, et à la maison je l’utilise branché sur le dock, avec une vieille manette Stadia comme périphérique d’entrée principal. Le Steam Deck est un appareil à part
J’ai versé un acompte juste après l’annonce du Steam Deck, mais j’étais tout au bout de la file d’attente, et quand mon tour est arrivé j’étais en vacances, donc j’ai raté la notification et ne m’en suis rendu compte que trois jours plus tard, en voyant le remboursement de l’acompte. Agacé, j’ai versé de nouveau un acompte et je suis reparti au fond de la file, mais la production avait augmenté et je n’ai pas attendu très longtemps. Le facteur de succès, c’est sa commodité écrasante. On peut simplement mettre en pause et reprendre, et jouer un peu même pendant les pubs à la télévision. C’est aussi parfait pour explorer les vieux jeux jamais lancés de sa bibliothèque Steam. Maintenant, il ne me reste plus qu’à trouver un code de triche pour passer ce point de sauvegarde de Half-Life 2 à Ravenholm où je n’ai ni assez de vie ni assez de talent pour survivre
Je ne suis pas un joueur hardcore et je n’ai essayé que quelques jeux, mais quand j’ai du temps, je joue surtout sur Switch ou sur un portable gaming équipé d’une carte NVIDIA haut de gamme. Ça tourne très bien sous Pop_OS!. J’aimerais toutefois que la partie bureau soit un peu plus peaufinée. Honnêtement, je pense que beaucoup de gens pourraient utiliser le Deck non seulement comme console de jeu, mais aussi comme appareil informatique principal
Il y a aussi d’autres aspects un peu bruts, mais j’en suis satisfait
Les nombreuses améliorations apportées par les ingénieurs de Valve aux pilotes Mesa OpenGL/Vulkan et aux composants des pilotes graphiques du noyau sont essentielles.
Ils ont contribué non seulement aux pilotes graphiques AMD utiles au matériel du Steam Deck, mais aussi à Zink, l’OpenGL sur Vulkan, et à l’infrastructure commune ; ces contributions dans ce domaine ont aussi été très bénéfiques pour l’écosystème du bureau Linux au-delà du jeu. Quand on regarde Vulkan pour le graphisme, Proton pour la compatibilité Windows bas niveau, la prise en charge des pilotes, la personnalisation et les options des manettes, et le fait de tout reverser en upstream, il y a quelque chose à dire sur la capacité d’une société non cotée à exécuter une vision de long terme. De Canonical à Nintendo en passant par Activision/Blizzard, ils devraient s’inquiéter de voir Valve leur prendre leur déjeuner en offrant, sur la durée, une meilleure expérience client.
C’est une relation symbiotique tant qu’elles ne jugent pas que gérer leur propre boutique vaut mieux qu’un partage de revenus à 30 %. Valve propose aussi déjà une commission plus basse au-delà d’un certain chiffre d’affaires, et a donc déjà fait des concessions sur ce point.
Quand Valve a annoncé pour la première fois vouloir amener le jeu sur Linux, j’étais franchement très sceptique.
Cela ressemblait à une posture pour contrer les politiques prédatrices de Microsoft, et même avec de bonnes intentions, à une promesse creuse qui ne serait finalement pas tenue. Faire tourner correctement des jeux Windows sous Linux, sans bidouille, sans astuce ni magie, et pas juste au niveau « ça marche parfois à peu près si on ne regarde pas les bugs », c’était de la pure folie. Et pourtant ils l’ont fait. Ces fous l’ont fait en seulement quelques années, et c’est vraiment impressionnant. Félicitations à Gabe, aux développeurs de Steam et aux développeurs de Proton.
Tout cela aurait été impossible sans Wine, qui a permis de faire tourner sous Linux de nombreux jeux sans port natif. Proton et SteamOS assurent surtout le dernier kilomètre, notamment en matière de finition et de facilité d’utilisation, et c’est important à cause du principe de Pareto, mais on ne peut pas attribuer tout le mérite à Valve.
C’est juste qu’il est tellement bien poli et emballé qu’il ne donne pas l’impression d’être une bidouille. Je continue d’être surpris chaque fois que je vois à quel point cela fonctionne naturellement.