Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Does anyone know why Valve forked the Wine rather than joining them?


From the FAQs of the original post on Steam:

"Modifications to Wine are submitted upstream if they're compatible with the goals and requirements of the larger Wine project; as a result, Wine users have been benefiting from parts of this work for over a year now. The rest is available as part of our source code repository for Proton and its modules."

Wine has very tight/strict requirements for what can merged into its codebase, it's why DXVK has had to remain a standalone project because it doesn't live up to Wine's code/goal requirements.


Can you be more specific on where the goals differ?

"Get all windows stuff to run perfectly in Linux" sounds like a pretty simple goal to me.


But that is not the goal for Proton. Proton does not need to be able to run Photoshop or Powerpoint. There is optimizing to be done if you can skip the majority of desktop software as run target.


Wine (and I'm sure Proton) has a ton of app/game specific fixes. It's entirely reasonable for Valve to desire changes that Wine doesn't want to bring upstream.


IIRC DXVK is written in C++ while WINE is written in C.


Wait, so Wine has been accepting pull requests from Valve developers for a whole year and nobody has noticed? How did they keep that under wraps?


Who do you think should have noticed and informed the world?

The main Wine devs knew but were probably asked not to tell anyone, and apart from them I don't think many people scrutinize so much the personal details of all the people who submit pull requests in all the open source projects.


Thanks.


They said they work on their own fork and push everything back to upstream when its appropriate. I guess that gives them the freedom to do anything without worrying if upstream will accept it.


Pure speculation, but it looks like Valve has a tight focus on DXVK whereas I think Wine is a bit more broad in it's support goals.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: