Hacker News new | ask | show | jobs
by dininski 998 days ago
It's good to see an assumption I had, be validated. The assumption was that Linux would struggle to make a dent in the desktop market until it managed to make a tempting proposition for gamers. Projects like WINE tried, but there's just not enough you can do only with open-source contributors, with such a massive undertaking. I'm happy that a big company is finally backing this effort and with nvidia open-sourcing their gpu kernel modules, I'd say exciting times are up ahead :)
6 comments

> Projects like WINE tried, but there's just not enough you can do only with open-source contributors, with such a massive undertaking.

Proton is basically just Wine, right? Aside from that CodeWeavers has been doing commercial Wine development for a long time.

Almost all of Wine already existed before Valve got involved. Yes, they help out too, and that's great, but people are hugely over-crediting Valve (and here, hugely under-crediting all those open source contributors, who did the overwhelming majority of the work).

Proton is Wine with some extra patches; the main project has some pretty hefty requirements in terms of coding standards to reduce possible regressions, which means that on the whole it can be pretty slow to get compatibility.

Gaming is just one subsection of the Win32 API that doesn't touch on all parts of said API. Proton basically has a bunch of extra patches that might introduce a regression in upstream Wine but won't in the context of videogames.

Proton patches also usually get upstreamed when they reach "proper" maturity/are fully tested if I'm not mistaken so long-term, Proton benefits the rest of the wine ecosystem too. As for the open source contributors - Valve iirc just hired some of the previously self-employed wine developers and the guy who got I think it was a Vulkan compat layer working on Linux.

I'm pretty sure Codeweavers has the same model although I don't think they upstream patches nearly as much? They're also very much more targeting business customers on Apple devices who need to run some obscure (usually old) Windows program rather than the entire scope of Win32 software.

Basically it's best to look at proton the way you sometimes get a "next generation" fork of a popular piece of FOSS - higher dev speed and more features, however more focused into keeping a single area working than on the overall health of the upstream (which does get contributed back to for the features that help the upstream).

CodeWeaver is the major force behind wine, wine devs that aren't volunteers are employees of CodeWeaver, aren't they?
most likely, although by now they also may be employees of valve. but valve is also working with codeweaver.

btw: i consider codeweaver somewhat the unsung hero of the linux desktop.

there is no other company in this world that stakes their success entirely on the success of the linux desktop, or maybe on the demise on the windows desktop, because wine is the only software tool that will never ever be useful running on windows.

> wine is the only software tool that will never ever be useful running on windows

Intel was actually including Wine code in their Arc graphics drivers to translate DirectX 9 calls to Vulkan, because they didn't have performant native DirectX 9 drivers. It's a pretty common trick for Arc users to drop the latest DXVK DLL into the directory of a game that is having issues with the graphics card.

Using Wine DLLs is also a good way to resurrect games built on the obsolete DirectDraw API on modern versions of Windows.

that's interesting. i didn't know that. thank you.
> I'm pretty sure Codeweavers has the same model although I don't think they upstream patches nearly as much?

According to Wikipedia "all changes made to the Wine source code are covered by the LGPL and publicly available", but I don't really know from first-hand experience.

> Proton is basically just Wine, right?

That's the thing with desktop linux: almost everything already exists. But there's always an extra mile to go. Sometimes it's tiny bugs, sometimes it's bad default settings, sometimes it's questionnable UI... all things that may not be a problem for tweakers but will stop people that want a good out-of-the-box experience. I'm glad commercial companies go that extra mile.

But yes, props to wine devs. Well deserved.

The major bit from "extra mile" here being "adding a button in their proprietary vendor lock-in platform".
i didn't check but i believe the major part of the extra mile is fixing 1000s of tiny little bugs that break games. it should be possible to verify that by looking at the wine changelog. the rest is creating a smooth experience downloading and running games. smoother than any alternative (like playonlinux or lutris)
Wine has worked surprisingly well for a long time, well before Valve got involved, although compatibility was never perfect of course (and still isn't!) I don't think they had to "fix 1000s of tiny little bugs that break games". Codeweavers has been selling commercial Wine-based solutions for a long time.

It's easy to offer a better experience if you also own the actual storefront; that was kind of my point.

And as I said, I'm sure Valve contributes; but describing wine as some sort of semi-usable half-working project before their involvement is rather inaccurate.

describing wine as some sort of semi-usable half-working project before their involvement is rather inaccurate

i disagree. wine worked, but many games didn't. fixing that is mostly valve's doing. and in my opinion the wine experience is still inferior compared to steam.

the problem is very much one of perception. 90% of the work that went into wine was already there. but the remaining 10% of work that was missing make up 90% of the impression of how well it is working. (the numbers are made up, but i hope you get my idea. it's the general linux desktop problem. the desktop is functional and stable, but the impression of it isn't because of a few small issues that just seem to bother many people)

so by attacking these remaining issues, valve is making a significant contribution.

i think it is also important that valve is able to apply patches before they make it into wine, because that means these patches see way more testing than the wine project probably would be capable of on their own. which is another reason that makes vales work significant.

I used wine for many years. "Semi-usable half-working project" was entirely my experience; nearly everything I tried to run had at least one weird bug.

The proton work is open source (and readily installable without using the storefront), so you can actually just look and see that they did, in fact, fix many little bugs that break games - perhaps only many hundreds, rather than thousands.

The issue were specifically games. Before proton, Wine DX9 compatibility was workable at best, DX10&11 was terrible and DX12 hadn't even started.
Codeweavers selling a commercial product is a major sign that the "community edition" of wine is not up to snuff.
The significant extra bit missing was DXVK(and VKD3D), whose development is financed by Valve and, for various reasons is still not part of Wine.
Theorycrafting here, but wine and proton will make it pretty easy to decouple Steam platform DRM.

It should be noted that it's perfectly possible to release your game on steam in a way where the steam client doesn't even need to be running in order to launch the game. The choice to tie Steam's service into the ability to run the software you purchase /seems/ to be a decision made entirely by the people publishing their games.

If that's the case, you should really be more concerned about that behavior rather than Steam's DRM existing. Don't buy games whose behaviors you disagree with!

According to the article, Steam OS also uses two Direct 3D to Vulkan translation libraries. That’s obviously a big part of running a game.
Neither are written by Valve.
Valve is a contributor, so that’s not an entirely true statement. And I was replying to your original statement that “Proton is just wine”, which again, is not true.
I never said "Proton is just wine". I said "Proton is basically just Wine". Leaving out that qualifier makes a big difference.
Basically means: “in the most essential respects; fundamentally.” So in this case, no, omitting the word basically makes no meaningful change to the meaning of your sentence.
Proton is not just WINE. It is a bundle of many open source technologies including WINE. Proton was a major step forward in the consolidation and simplification of running Windows games on Linux. It also included a ton of upstream contributions to all the bundled technology by full time paid Valve employees.
It's interesting to see Apple basically imitating this with their porting toolkit. The net result is game developers being presented with two growing ecosystems for the same game simply by ensuring they stay compatible with both. With their VR stuff coming out soon, there could be a big push to get some games going there.

Either way, if you are a game developer, ensuring the games work fine via proton and Apple's porting kit should be a no-brainer. Basically, it should just work mostly without too much effort. All you need to do is a bit of Q&A and maybe avoiding to use some stuff that is problematic or coming up with some workarounds for those things. Neither ecosystem is very big. But at the same time, growing your market by a few percent is always nice. It's big enough that not supporting that is becoming an odd choice to make.

I've been using Steam on my Manjaro laptop for some casual gaming. The setup was pretty easy and I'm able to run most of my steam library. I'm not much of a gamer but I've bought some things over the years. And most of those things stopped working on macs. My guess is that Valve is starting to see a lot of Linux users with steam accounts that don't own a Steam Deck. It wouldn't surprise me if that's actually most of their Linux users.

As for OSS, Wine is basically very successful thanks to efforts like this. Most successful OSS projects need active users and, like it or not, the private sector tends to be by far the largest stakeholder in these projects. Wine as a hobby project was basically a bit of a niche thing. They got a lot of amazing stuff done of course. But it was kind of a bit of a pain to set it up and use it and progress was slow. Also support for a lot of games was a bit lacking and very dependent on the community chasing that. Steam makes this super easy and they made huge progress with getting a lot of games working. More importantly, they are big enough that game developers themselves now care about compatibility. And that's of course more commercial users.

> My guess is that Valve is starting to see a lot of Linux users with steam accounts that don't own a Steam Deck.

You don't have to guess, just look at the steam hardware survey - https://store.steampowered.com/hwsurvey?platform=linux - 44.18% of Linux is SteamOS Holo (a.k.a. Steam Deck), while overall Linux is 1.82%.

Since historically Linux usage hovered around 1%, I'm guessing that the Steam Deck by itself didn't drive any additional users to Desktop Linux (or at least not in huge amounts), though the 1% by itself is probably driven by Valve's efforts to improve Linux support.

just to be pedantic, the valve devs are absolutely open source contributors, they just happen to be paid to do it.
It's great that Valve is willing to pay them for it. It's a bit sad that such capital investment from a commercial party is necessary, but I can live with that.

As someone who has just switched to Linux gaming, I've got to say it's working great. Maybe it's slightly less stable, but not by much, and performance is excellent.

It's a bit sad that such capital investment from a commercial party is necessary

by now the linux ecosystem has received to much commercial investment to separate out what is community effort and what is not, but i believe that most of the polish that went into linux desktop applications and interfaces have some commercial investment in them.

the problem is that for most volunteers 90% of usability is good enough. if it works for me, my work is done. on the other hand the imperfect is almost necessary to attract contributors. a perfectly working application is more likely to attract users but less contributors. and as soon as contributors work on something it becomes imperfect again.

this is not to say that contributors mess things up, on the contrary, but most do just enough work to make it work for them, leaving the work to polish it up for other users to someone else. and i think that is perfectly fine. contributors should not be expected to do work that is of no benefit for themselves. the benefit of a polished application is almost always for non-contributing end users, which in turn is almost always a commercial interest.

That's absolutely true. Valve has added significant value and I love them for it. And the community is still doing great work tuning configurations for each game.

One particularly great thing about Valve's support is that it benefits all games, and not just those on Steam. It's absolutely a great example of how open source helps everybody.

> It's a bit sad that such capital investment from a commercial party is necessary

I think it's great that someone invests. That investments are necessary is no sadder than that salaries are necessary for your work. It's just a normal part of work/life where the alternative would be to do it for free, out of passion. But you also have to make a living.

> That investments are necessary is no sadder than that salaries are necessary for your work.

Well, that's also sad.

I just wanted to say it would have been nice if the community would have been able to get this working more easily. But clearly it's too much work to do it without some dedicated fulltimers.

fully agree! I'm biased because I also work for pay on open source products but I think it's a great "rising tide lifts all boats" model of software development.
> It's a bit sad that such capital investment from a commercial party is necessary, but I can live with that.

People getting paid is a good thing.

But only because it is necessary. It would be better if we could be independent from commercial considerations.
I don't know what that means. It would be better if everything were free?
Well, yes. But what I mean is that it would have been nice if hobbyists were able to accomplish this without needing the help from a commercial entity.

I'm a bit at a loss why some people here prefer commercialised open source over community-driven open source. I mean, I'll take it, and Valve did an amazing job, but there have been plenty of attempts to make this work before Valve stepped in, and it just didn't work that well back then, and it would have been nice if we didn't have to rely on Valve for this.

it was the opposite for me, I was tempted into getting the steam deck because it seemed like a fun device and an exciting new frontier for linux, and it's gotten me into gaming in a way I haven't been since college.
When I got my SteamDeck, I thought I was going to do a lot more tinkering than I did gaming. I planned on getting NixOS working on it. I ended up just playing games and having fun just using the stock install.
I'm tempted to get one, but it's going to be sitting on a shelf, along with my Oculus Quest. Gaming is a thing that sounds nice in principle, but I rarely can get into it in practice.
i was in the same boat - i wanted to enjoy games again, especially indie games, but i was mostly just buying them during steam sales and then never playing them. i bought the steam deck in order to see if it would be a more fun gaming experience than my laptop, and if not at least i'd have a fun linux device to tinker with. but it absolutely did get me back into playing (maybe an hour or so a day) and i've been enjoying it a lot.
Hmm, that's very interesting. I'm exactly the same as you, I really like indie games but it's always "meh, I'd rather do something else". Maybe I'll borrow a friend's Deck for a weekend to try it, thanks!
That's how reality works. In order to do something, resources must be invested. In order for resources to be invested, people must perceive value in the thing they are investing in.

In order to do something big, many people must invest many resources, and they would only do so if they all see great value in the thing.

In order to have resources to invest, all of the people must have excess resources that they have generated from previous endeavors.

Remember, capitalism is merely the most efficient system we have for assigning limited resources across society.

the interesting thing for me is that my assumption was that linux gaming would not pick up until the desktop experience of installing and using games would improve, but i somehow missed that creating a separate "game desktop" would do the trick. i didn't consider before that it absolutely makes sense to keep games in their own environment which does make the task a bit easier.

but this also validates another assumption of mine, that it would take funding probably driven by commercial interest (and here i was thinking of companies like redhat) to fix this.

> The assumption was that Linux would struggle to make a dent in the desktop market until it managed to make a tempting proposition for gamers.

I don't think that assumption has been validated, and I don't see that from this article. The premise of this article isn't that the steam deck is taking market share, it's that it's increasing compatibility of games on linux. More to the point, the steamdeck hasn't made a dent in the desktop market, see [0] it's a fraction of a percentage of _gamers_ never mind any other use cases.

Don't read this as me saying this isn't progress, but we're still a far cry (pun intended) from a dent.

[0] https://store.steampowered.com/hwsurvey/Steam-Hardware-Softw...

Linux is now more popular than OSX according to those statistics. That's a decent milestone, and it's only going to grow as enshittification forces further downgrades in user experience, freedom and privacy in commercial OSes.
> Linux is now more popular than OSX according to those statistics.

Linux is more popular than OSX _on steam_ according to those statistics.

> it's only going to grow as enshittification forces further downgrades in user experience, freedom and privacy in commercial OSes.

I think you're wrong here. Take a look at the wayback machine [0] for a history of this data. There was absolutely 0 growth in linux use over the past decade until last year. The thing that changed wasn't enshittifaction, it was a piece of hardware that provided a good user experience. It's nothing to do with windows/mac getting worse or less privacy focused, it's valve providing a smooth usable product that _happens_ to run linux. I'm curious if Proton's success causes a decrease in windows users and an increase in other distros, but right now that's not what we're seeing.

[0] https://web.archive.org/web/20230000000000*/https://store.st...

By "emulating" Win32 and DirectX, in detriment of native Linux features.