News for hackers. Stuff that matters.
Re:DirectX is coming to the Windows Subsystem for Linux by lalaland1125 on Wednesday May 20, 2020 @02:45AM (#23243978)
It appears that Microsoft has now initiated the "Extend" phase of their classic Embrace, Extend, Extinguish playbook. The key is that the proprietary Microsoft specific API added by this patch is only usable in a WSL environment as it relies on many pieces of proprietary closed source software that Microsoft is unwilling to open source. This patch does nothing but fragment the Linux ecosystem and encourage people to develop software that only works in WSL environments. With the "benefit" of forcing the Linux kernel developers to pay the maintenance costs of course.
Re:DirectX is coming to the Windows Subsystem for Linux by m12k on Wednesday May 20, 2020 @05:24AM (#23244879)
Look, I'm not saying saying we should "trust" Microsoft not to Embrace, Extend, Extinguish if they could - but they can't and they know it, so that's not their strategy. EEE was hinged entirely on the dominance of Windows and IE for the Extinguish phase. They won on desktop, but today most of the action has moved to mobile (where Windows lost completely to iOS and Android) and webservers (where Linux is massively dominant). In those domains, they are no longer the 500 pound gorilla in the room, they're the "hey, fellow kids" oldtimer trying to fit in and get in on a piece of the action. Look at a comp sci class in the last decade, and you'll see 1/2-2/3rds of them with MacBook Pros in their laps, because it compiles iOS apps and it's a *nix so it easily runs most of the same tools as a linux webserver. That's what WSL is about, trying to win back developers. That's why they bought Xamarin and Github. That's why they released VS Code. They're trying to win back developers by meeting them whereever they are, even if they know they are targeting platforms where Microsoft is not dominant and has no hope of becoming so. They're trying to make it feasible to target a linux webserver while developing on Windows. They're trying to make Azure a serious contender for cloud computing outside of the corporate C# world. There's not a realistic scenario where they become dominant enough on those platforms to execute any kind of Extinguish move. And they don't need to - there's still tons of money to be made with just a slice of the cloud pie. I think EEE went out the window along with Balmer and the 'Windows First' doctrine. I'm not saying they wouldn't, but I'm saying they can't and they know it, and they're ok with that.

All this is not to say that there's any reason for upstream to accept any bad patches that rely too much on proprietary code. But in this case, I think the analysis of the underlying motivations for that patch was outdated.

Re:DirectX is coming to the Windows Subsystem for Linux by NeverFade on Wednesday May 20, 2020 @07:08AM (#23245469)
> EEE was hinged entirely on the dominance of Windows and IE for the Extinguish phase.

EEE was more effective when Microsoft was completely dominant, but it's clearly still effective even when that dominance has diminished.

This move, for instance, will cause Linux users to depend on a proprietary, closed-source API entirely controlled by Microsoft. It's very bad for Linux and very good for Microsoft. It's a lever of Microsoft control, extended into the rival Linux system. Very easy to see how it effectively fragments the Linux ecosystem and allows Microsoft to forcibly pull users who come to depend on DirectX from Linux to Windows by manipulating this lever - reducing Linux support in the future, etc.

This is classic EEE, and the only way you can dismiss it is if you believe their PR, as apparently you do:

> they are no longer the 500 pound gorilla in the room, they're the "hey, fellow kids" oldtimer trying to fit in and get in on a piece of the action.

As the other comment explained, they are still a huge gorilla in spaces that are absolutely vital to Linux: server, desktop, and laptop.

Linux as we know it lives or dies on the server and desktop / laptop markets. Yes, Android is technically based on the Linux kernel, but it builds an entirely different ecosystem on top of it. The Linux ecosystem is only on the server and PC - exactly where Microsoft is competing.

Finally, the availability of this proprietary API will reduce the incentive for hardware companies like Nvidia to allow development of direct Linux support (drivers etc) for their products - which is what Linux really needs in order to survive, let alone prosper.

Re:DirectX is coming to the Windows Subsystem for Linux by halbritt on Wednesday May 20, 2020 @09:12AM (#23246422)
> As the other comment explained, they are still a huge gorilla in spaces that are absolutely vital to Linux: server, desktop, and laptop.

No reasonable person at Microsoft considers Linux to be a threat on the desktop/laptop. No reasonable person at Microsoft considers Windows Server to be a threat to Linux on the server.

Re:DirectX is coming to the Windows Subsystem for Linux by NeverFade on Wednesday May 20, 2020 @09:31AM (#23246588)
Microsoft holds a large and fast-growing share of the enterprise server market with products like Office365, Exchange, and Sharepoint.
Re:DirectX is coming to the Windows Subsystem for Linux by AshleyGrant on Wednesday May 20, 2020 @12:00PM (#23248437)
O365 is SaaS. Customers that are hosting Exchange on-prem are being encouraged to move to O365 for email. Same for SharePoint. If I had to guess, O365 is helping to reduce, not grow, the market share of Windows server.
Re:DirectX is coming to the Windows Subsystem for Linux by NeverFade on Wednesday May 20, 2020 @06:57PM (#23252982)
What's important is that server-side services that Microsoft offers are replacing Linux servers. Whether it's SaaS like Office365 or more traditional server software like Exchange and Sharepoint is not crucial.
Re:DirectX is coming to the Windows Subsystem for Linux by 5partan on Thursday May 21, 2020 @08:01AM (#23257359)
Except that Linux usage on Azure has surpassed that of Windows a long time ago...
Re:DirectX is coming to the Windows Subsystem for Linux by NeverFade on Thursday May 21, 2020 @12:03PM (#23260117)
And I was talking specifically about Microsoft products like Office365, Exchange, and Sharepoint.
Re:DirectX is coming to the Windows Subsystem for Linux by halbritt on Thursday May 21, 2020 @10:17PM (#23268060)
Microsoft's interest in on-premises business with these products is waning, just as the market share for them is also waning. They most assuredly aren't trying to win the war against Linux on the server. That war has been won (by Linux) and MS is off chasing other revenue streams that are growing.
Re:DirectX is coming to the Windows Subsystem for Linux by halbritt on Wednesday May 20, 2020 @12:22PM (#23248710)
Fast growing?

The on-premises infrastructure market has been and is projected to continue shrinking in favor of cloud spend.

Googling around one can find reports with names like "IDC Worldwide Operating Systems and Subsystems Market Shares report" that show how prevalent Linux is vs. Windows Server even in Enterprise IT.

Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:33AM (#23246599)
There are enough Fortune 500 using Windows Servers to keep Microsoft in business for a long time.
Re:DirectX is coming to the Windows Subsystem for Linux by shandor on Wednesday May 20, 2020 @07:13AM (#23245513)
> As one last point to consider: Linux as we know it lives or dies on the server and desktop / laptop markets

I agree with your general sentiment, but just wanted to note that high-end embedded systems are also a very Linux-heavy domain. Even though from hardware side it might look similar to the mobile space (ARMs everywhere etc.) it is actually a completely different world.

Re:DirectX is coming to the Windows Subsystem for Linux by TheRealDunkirk on Wednesday May 20, 2020 @08:45AM (#23246211)
> In those domains, they are no longer the 500 pound gorilla in the room, they're the "hey, fellow kids" oldtimer trying to fit in and get in on a piece of the action.

Said of a company which owns a market-shaping player in every layer of the stack: OS, directory, database, applications, development languages, source code repository, and the second-biggest cloud to host it all in. Given that mobile and web involve about half of that list, I fail to see how they're some sort of non-player, trying to play "catchup" to the rest of the world now.

Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:28AM (#23246554)
SV distortion field.
Re:DirectX is coming to the Windows Subsystem for Linux by Maakuth on Wednesday May 20, 2020 @01:19PM (#23249370)
Not to mention the biggest public company in the world, alternating with Apple.
Re:DirectX is coming to the Windows Subsystem for Linux by jfkebwjsbx on Wednesday May 20, 2020 @08:58AM (#23246308)
> Look at a comp sci class in the last decade, and you'll see 1/2-2/3rds of them with MacBook Pros in their laps,

Perhaps in some countries, definitely not everywhere. At my university, there is only a single Mac across 40 or so laptops.

> because it compiles iOS apps

I doubt students buy Macs for that. iPhones are not nearly as popular outside the US.

> and it's a *nix

Students don’t care about its UNIX certification. Most don’t even know what that is when they start their undergrad.

> it easily runs most of the same tools as a linux webserver

No, it does not. Many important dev tools are not available, not even through brew.

> That's what WSL is about, trying to win back developers

Globally, the majority of developers are on Windows/Linux, not macOS.

> They're trying to make it feasible to target a linux webserver

I’d bet this is about avoiding Linux becoming the major platform for ML/DS/AI, rather than anything about macOS.

[dead]
Re:DirectX is coming to the Windows Subsystem for Linux by Semaphor on Wednesday May 20, 2020 @12:12PM (#23248579)
Max 10% at my university in Germany. I’d say windows/linux was about an even split for the rest.
Re:DirectX is coming to the Windows Subsystem for Linux by skohan on Wednesday May 20, 2020 @08:24AM (#23246042)
> That's what WSL is about, trying to win back developers. That's why they bought Xamarin and Github. That's why they released VS Code. They're trying to win back developers by meeting them whereever they are, even if they know they are targeting platforms where Microsoft is not dominant and has no hope of becoming so. They're trying to make it feasible to target a linux webserver while developing on Windows. They're trying to make Azure a serious contender for cloud computing outside of the corporate C# world.

So in other words, what you're saying is they are Embracing this FOSS linux-based developer workflow...

And you could almost say they're Extending the linux kernel to support DX12 on WSL...

Am I missing something?

Re:DirectX is coming to the Windows Subsystem for Linux by m12k on Wednesday May 20, 2020 @09:01AM (#23246335)
Could you explain to me what you think an Extinguish step would look like in that sequence? Because I don't think there is a realistic one, and I don't think Microsoft thinks so either.
Re:DirectX is coming to the Windows Subsystem for Linux by skohan on Wednesday May 20, 2020 @09:12AM (#23246428)
I think it's hyperbolic to imagine that MS will manage to fully extinguish Linux outside of WSL, but that's not the only way they could damage the linux ecosystem by leveraging the foothold they are building in the FOSS world.

It's not so hard to imagine picking up a legacy project at some point in the future, and pretty much having to develop it on Windows and deploy to Azure because of some WSL-specific dependencies baked into the framework it's built on.

That's just one scenario, but the point is why would you expect that they wouldn't leverage their market-share to disadvantage competitors if they ever got into position to do so? Just because they aren't in that position now doesn't mean we shouldn't be put off by the fact that they're building those levers to fragment the ecosystem now.

Re:DirectX is coming to the Windows Subsystem for Linux by generalk on Wednesday May 20, 2020 @09:17AM (#23246458)
Correct me if I'm wrong, but my impression here is that Windows Subsystem for Linux will support DX12, but not broader Linux support for DX12.

So if you want a machine that can play games and run a Linux dev toolchain, that would require a Windows install. If you can incentivize folks who may never have installed Windows to do so, and keep them there as the only place they can both play games and use their preferred dev environment, then you've extinguished that portion of the desktop linux install base.

EDIT: Also I absolutely love the "I don't think Microsoft thinks so either." Microsoft is a for-profit corporation who's eyeing a way to get users who traditionally avoid them to come to their platform and stay there. They aren't some benevolent font of cool tech, they're trying to sell you products.

Re:DirectX is coming to the Windows Subsystem for Linux by m12k on Wednesday May 20, 2020 @10:00AM (#23246835)
I agree, when we look at Microsoft's motivation, considering them driven by profit makes more sense than anything else. Hence why I'm critiquing comments that seem to think Microsoft is driven by some innate desire to destroy Linux and FOSS. They're not, they just want to make money, but back when their making money was based on Windows, and they thought Linux was an existential threat to that, those two goals coincided. Today, I think Microsoft cares much more about building up Azure to beat AWS and become the biggest cloud platform - they don't care if the servers are running Linux or Windows, as long as it's running on Azure - being seen by developers as Linux-hostile runs counter to that goal. So again, I'm not saying they wouldn't go for an Extinguish if they could, but I think they know that they can't and they have a strategy where they don't need to.
Re:DirectX is coming to the Windows Subsystem for Linux by generalk on Wednesday May 20, 2020 @11:31AM (#23248073)
We're not talking about Microsoft's cloud / server strategy though. Linux as a server OS is different from Linux as a development platform. The two have nothing in common except the word "Linux."

Microsoft is taking steps to embrace desktop Linux, we've seen that with WSL. Instead of ditching Windows for a different/better dev platform, just keep using Windows.

They are extending their own desktop Linux by adding the capability to use DX12 in Linux, so long as it's run on Windows. Note that they are not adding this capability to a straight Ubuntu install, let alone any other distribution.

To claim "Microsoft knows they can't Extinguish desktop Linux" is naive at best, and shill-like at worst. They don't need to completely eliminate desktop Linux for EEE to apply here. the "Extinguish" part comes naturally from fewer and fewer devs choosing an alternative to Windows.

Re:DirectX is coming to the Windows Subsystem for Linux by m12k on Sunday May 24, 2020 @06:42AM (#23290633)
> We're not talking about Microsoft's cloud / server strategy though

Yes we are. I was talking about the motivation behind their action. And I think it's quite obvious that 'get businesses to use Azure over AWS' or 'get web developers to use Windows instead of Macs' is a much, much more likely motivation than 'Extinguish desktop Linux'. Why would they care about that? Desktop Linux is absolutely no threat to them, and there's no money to be made winning that fight more than they already have. Know what, I'll grant you that in their attempt to steal web devs over from MacOS, and getting a better user story for a web dev deploying Linux servers from Windows, they will probably also hurt desktop Linux - if nothing else, simply by creating another viable alternative for devs that isn't MacOS. But I can pretty much guarantee you that extinguishing desktop Linux is not their motivation - it simply makes no sense.

Re:DirectX is coming to the Windows Subsystem for Linux by scbrg on Wednesday May 20, 2020 @09:43AM (#23246678)
What you're saying is essentially: If we can't come up with a way in which Microsoft could proceed to the Extinguish phase, they can't. Because clearly, if we, after spending five minutes thinking about it, can't come up with something, then it is also impossible for this company that has spent three decades perfecting the concept, and literally has billions of dollars to throw at the problem.

Presumably because we smart and they dumb. Or something, I don't know?

Personally, I think that their thirty years of experience and billions of dollars might make it possible for them to come up with a plan I wouldn't have thought of.

Re:DirectX is coming to the Windows Subsystem for Linux by prirun on Thursday May 21, 2020 @02:27PM (#23262697)
I agree with you. Microsoft plays a long game. Through giving out promotional / free copies of Excel, with 1-2-3 compatiblity, they killed Lotus. The same with Word and Wordperfect. The same with Netscape. And those companies completely dominated their markets. As market leaders maybe they were lazy, taking profits, and not enhancing their product. That happens with most market leaders. But the fact is, it is impossible to charge $150 for WordPerfect when Microsoft is giving away a compatible word processor. As their only / primary source of revenue, WordPerfect and Lotus could not survive a free competitor.

They don't have to kill Linux, and in fact, would not want that IMO, because then someone might bring another pesky antitrust suit against them. But if they can dent it in any way, they will.

For those who say Microsoft has changed, is a different company, is embracing open-source, etc.: if that truly is the case, wouldn't they release DirectX for all Linux distributions, not just theirs?

Re:DirectX is coming to the Windows Subsystem for Linux by maelkum on Wednesday May 20, 2020 @01:07PM (#23249233)
I think the Shadowrun adage is applicable here: "Watch your back, shoot straight, and never, ever, cut a deal with a dragon."

Microsoft is the dragon here. Even if it appears friendly you still don't cut a deal with it, or you become a pawn in its game.

Re:DirectX is coming to the Windows Subsystem for Linux by lkap on Wednesday May 20, 2020 @09:27AM (#23246541)
The extinguish step is breaking the spirit of the FOSS developers.
Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:30AM (#23246565)
They already did that to themselves by throwing away GPL.
Re:DirectX is coming to the Windows Subsystem for Linux by xlqa on Wednesday May 20, 2020 @09:23AM (#23246510)
The modern form of EEE is buying OSS devlopers, who increasingly make excuses for Microsoft and proprietary extensions.

The modern form of EEE is being platinum sponsor of the Linux Foundation and insert a CoC into the source tree.

Corporations don't want the "angry young OSS men" of the 1990s and early 2000s, who could be an actual threat.

Corporations want submissive, neutered and obedient developers.

Re:DirectX is coming to the Windows Subsystem for Linux by dvfjsdhgfv on Wednesday May 20, 2020 @07:06AM (#23245463)
> you'll see 1/2-2/3rds of them with MacBook Pros in their laps, because it compiles iOS apps

Apple can be as hardheaded as Microsoft. I have several Apple machines and each of them was bought specifically for developing iOS apps, other uses appeared later. Apple can provide Swift for Windows and Linux, but they will never allow building iOS apps on non-Mac hardware.

Re:DirectX is coming to the Windows Subsystem for Linux by bad_user on Wednesday May 20, 2020 @06:34AM (#23245286)
The impression that "most of the action has moved to mobile" is just an impression.

First of all the market share of desktop versus mobile is roughly 43% for the desktop, 57% for mobiles and tablets. More importantly however is that the rise of mobiles has been sharp since 2009, but it's been stagnating since 2017 and this stagnation trend is clear. Mobile devices too are a commodity, their market isn't growing any bigger and people aren't replacing their phones as often. The market for the desktop did not shrink. It just reached saturation. And as it will become increasingly clear, mobiles have reached saturation too.

What devices do people use in companies to do their jobs? Laptops. Sometimes tablets, for drawing on them, although a piece of paper would do. Mobile devices have been and remain essential for communications, this meant phone calls in the past, nowadays it means WhatsApp, Slack, email, along with shitposting on Facebook/Instagram/Twitter, but that's about it.

> "webservers (where Linux is massively dominant)"

Sorry to disappoint you, but the market for web servers is actually small, unless you're Amazon and Microsoft realized at some point that selling Linux boxes on Azure is probably more lucrative than what they were doing. The web servers space was never Microsoft's so they had nothing to lose.

But the enterprise space is dominated by Microsoft, with their dominance only increasing. Exchange, Sharepoint, Office 365, Skype, Microsoft Teams, Azure DevOps, freaking Yammer, MS SQL, soon GitHub, their reach in the enterprise and their adoption, once you're familiar with the space, is actually quite scary.

I have to hand it to them, they became really good at marketing. Otherwise I can't explain this portrayal of them as being the underdog. Or the constant nagging messages I see about them having changed, due to them releasing VS Code or .NET Core.

No they haven't changed much. The tooling they make for developers has always been top notch and while .NET was proprietary, they standardized it and they never attacked Mono. Office has been available on Macs since 1989. And they no longer target Linux with patent threats of course, they target Android instead. Until they'll find some way to sell Android. They adopted Chromium, a master move since now they can cut some development costs and win back some users and sell them on Bing too. We'll probably see them windowfying Android too.

---

Note that I do enjoy several Microsoft products. But I'm always skeptical when hearing about their motivation. I don't understand what makes people cheer for these big companies, as if they are sports teams. Use their products for what they are and dump them as soon as you find something better.

Re:DirectX is coming to the Windows Subsystem for Linux by tdsamardzhiev on Wednesday May 20, 2020 @07:43AM (#23245702)
Yeah, most of the consumption has moved to mobile. But people who make stuff are still predominantly using desktop/notebook computers.
Re:DirectX is coming to the Windows Subsystem for Linux by m12k on Wednesday May 20, 2020 @09:11AM (#23246413)
Right, and most of the consumption is being served from linux servers. So Microsoft is trying to use their strength on desktop and in production to stay relevant in that ecosystem, even though it involves other platforms than Windows - hence the focus on cross-compilation and cross-platform tech.
Re:DirectX is coming to the Windows Subsystem for Linux by computerex on Wednesday May 20, 2020 @08:51AM (#23246256)
> The tooling they make for developers has always been top notch

I have to emphatically disagree there. Up until recently Windows didn't even have a decent terminal app. As a developer I tend to shy away from Windows precisely because the *Nix alternatives offer a better development experience, from cli to package management and more.

Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:36AM (#23246632)
Not every developer needs a terminal app to feel like one.

In fact Mac OS also didn't have any until OS X.

Re:DirectX is coming to the Windows Subsystem for Linux by CodeGlitch on Wednesday May 20, 2020 @10:01AM (#23246851)
Real developers automate. It's hard to automate without a terminal :)
Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @10:59AM (#23247614)
You can automate with scripting languages and REPL.
Re:DirectX is coming to the Windows Subsystem for Linux by freeone3000 on Wednesday May 20, 2020 @10:12AM (#23246966)
If you're using a terminal to automate on windows, you're going to have a bad time. You'll want something like AutoHotKey which has been around for a long while.
Re:DirectX is coming to the Windows Subsystem for Linux by HeWhoLurksLate on Wednesday May 20, 2020 @01:54PM (#23249777)
While you're not wrong, I think that you're referencing a different flavor of automation than GP is.
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @10:53AM (#23247538)
You can automate just fine in a console with PowerShell.
Re:DirectX is coming to the Windows Subsystem for Linux by tech-historian on Wednesday May 20, 2020 @09:48AM (#23246721)
OS X was released in 2001, which is a pretty long time ago.
Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:54AM (#23246773)
Yet classical Mac OS developers were able to do without one for 17 years, and I bet most developers actually targeting Apple devices still do without one, when I look around the office over here and see InteliJ, XCode and AppCode.
Re:DirectX is coming to the Windows Subsystem for Linux by mhd on Wednesday May 20, 2020 @10:44AM (#23247422)
Doesn't MPW count?
Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @10:59AM (#23247627)
Yeah, but most people were using the GUI tooling anyway and not everyone was a MPW user.
Re:DirectX is coming to the Windows Subsystem for Linux by gindely on Wednesday May 20, 2020 @10:00AM (#23246838)
Windows still doesn't have a decent terminal app! The new one just crashes when I resume from suspend. (I believe it's because when the computer suspends, it forgets about the external monitor. But it's still not evident to me why that should make it crash.)
Re:DirectX is coming to the Windows Subsystem for Linux by noisem4ker on Wednesday May 20, 2020 @12:40PM (#23248938)
If we consider third parties, ConEmu is well beyond decent.
Re:DirectX is coming to the Windows Subsystem for Linux by rapind on Wednesday May 20, 2020 @08:35AM (#23246137)
So what you're saying is "Developers, Developers, Developers!"?
Re:DirectX is coming to the Windows Subsystem for Linux by kevin_thibedeau on Wednesday May 20, 2020 @12:42PM (#23248961)
Watch out for flying penguins.
Re:DirectX is coming to the Windows Subsystem for Linux by TheKarateKid on Wednesday May 20, 2020 @08:50AM (#23246255)
Very well stated.

People should be much more concerned about EEE from Google, as we’ve been seeing more of all the time with Chrome.

Re:DirectX is coming to the Windows Subsystem for Linux by 29athrowaway on Wednesday May 20, 2020 @09:11AM (#23246420)
On businesses and government Microsoft Office continues to have a dominant market share. And that's a lot of money.

Not only US government, but almost every government around the globe is using it. And on macOS, that's still the case.

Re:DirectX is coming to the Windows Subsystem for Linux by pjmlp on Wednesday May 20, 2020 @09:32AM (#23246589)
Google is already one step ahead of Microsoft with ChromeOS and Android.
Re:DirectX is coming to the Windows Subsystem for Linux by lawik on Wednesday May 20, 2020 @04:00AM (#23244434)
I find this a cynical take as far as EEE goes. But even with Microsofts mostly solid efforts into open source I find myself a bit skeptical as well.

Most recently with the Live Share extension for VS Code. From skimming the licensing it is only to be used with the Visual Studio family of products. Which is an incredibly disappointing approach.

I think this is simply about ML and GPU compute for WSL. And I think Microsoft is genuine in that it sees business value in doing open source work, integrating well with Linux, etc. But at the end of the day the business interests are there and different parts of the company can be motivated quite differently.

Some skepticism remains warranted.

Re:DirectX is coming to the Windows Subsystem for Linux by 0-_-0 on Wednesday May 20, 2020 @05:39AM (#23244958)
The license of Live Share as appears among VScode plugins indeed says "You may use the software only with Microsoft Visual Studio or Visual Studio Code", but the license of the source code of the extension on Github is an MIT license:

https://github.com/MicrosoftDocs/live-share/blob/master/LICE...

Re:DirectX is coming to the Windows Subsystem for Linux by Voloskaya on Wednesday May 20, 2020 @08:27AM (#23246072)
This is not the code of the extension, it's just documentation.
Re:DirectX is coming to the Windows Subsystem for Linux by leeter on Wednesday May 20, 2020 @08:41AM (#23246180)
I think it is as well, honestly the DX12 part of this is DOA as far as I'm concerned because it's not open source. So that leaves the better support for other APIs as the key delivered feature. Could MS fix that by setting DX12 up as an open to implement API and open sourcing much of this? Yes. But until they do you're better of using the various translation layers from DX to vulkan when using linux even on WSL.
Re:DirectX is coming to the Windows Subsystem for Linux by dazzawazza on Wednesday May 20, 2020 @05:50AM (#23245018)
As a FreeBSD user I find this kind of comment hilarious given I see Linux specific code littering upstream open source projects with no thought for other platforms on a regular basis. I occasionally see resistance to fixing these issues as well.
Re:DirectX is coming to the Windows Subsystem for Linux by AlexMax on Wednesday May 20, 2020 @08:32AM (#23246112)
Frankly, I don't see what's so funny.

I don't presume to know if EEE is Microsoft's strategy here, but if it is, do you think a fleeting moment of amusement at Linux's comeuppance is worth the damage done to the larger open source ecosystem in its wake? Linux and FreeBSD are on the same team here.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @06:27AM (#23245244)
I think a lot of that is coming from redhat/IBM, which is currently doing their own take on EEE. Believe me I get pissy about that too.
Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @06:32AM (#23245272)
Honest question, is your opinion that we should have been stuck with something like SysVinit just so it's more convenient for the BSDs, while the likes of RedHat contribute the majority of the work?

And if yes, can you point to an example of *BSD doing something similar while pushing their platform forward?

Re:DirectX is coming to the Windows Subsystem for Linux by simias on Wednesday May 20, 2020 @07:18AM (#23245543)
This is a loaded way to frame the question, some of us were just fine being "stuck" with SysVinit. I try not to get dragged into systemd flamewars because life is too short but it's disingenuous to claim that before systemd init systems were some kind of inescapable hellscape.

I administrate multiple systemd-based linux distros, FreeBSD servers and buildroot-based embedded systems and I can tell you that systemd still gets in my way regularly while the sh-based init systems tend to Just Work and are very simple to understand and maintain.

Of course I know that a big reason is that I'm very familiar with un*x system administration and the gotchas of shell scripting while systemd is probably more approachable for somebody who doesn't want to learn arcane knowledge about chmod and file locking and setuid and symbolic links but I think that explains why there's still so much pushback against systemd all these years later: people who care about init systems know enough about them that systemd feels over-engineered and unnecessarily complex while not bringing a lot to the table.

Never once in the past years of running systemd have I thought "oh man, I sure am glad I'm using systemd and not an old SysV/BSD init system!". Not a single time. I did have multiple occurrences of systemd breaking stuff after an update though.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @07:49AM (#23245743)
> systemd still gets in my way regularly while the sh-based init systems tend to Just Work

For me systemd based systems allow me to have declarative, portable unit files where init scripts don't. They allow me to reliably monitor and restart services, they shut things down properly instead of just force killing as many init scripts end up doing.

I instantly know how to manage most major distros now that systemd's common among all of them, have no hesitation of writing a proper service file even for minor tasks and I get a ton of functionality 'for free' too.

Init scripts were always a poor-quality mess, non-portable among systems, non-consistent, non-deterministic. If your experience differs there's still plenty of non-systemd choices out there. They're not as prevalent as systemd ones, but that's because the people who sit down and actually write the code we all use find the services systemd provides valuable.

Re:DirectX is coming to the Windows Subsystem for Linux by simias on Wednesday May 20, 2020 @08:30AM (#23246091)
Arguing that the advantage of systemd is portability is rather bold!

And even if portability was the point I'm not sure I see the big deal. Writing an RC script from scratch if the software you use doesn't provide it is generally trivial. The vast majority of the time you wouldn't have to do that anyway as it ships with your OS's packages anyway. Sure, systemd might be "tidier" with its standard APIs and whatnot but it's also a lot more complicated and opaque than a bunch of shell scripts running one after an other. And if you're serious about sysadmin you'll have to learn shell scripting one day or the other anyway.

>Init scripts were always a poor-quality mess, non-portable among systems, non-consistent, non-deterministic.

They're non-portable, that much is true but so is systemd, that's a weak argument. If everybody had adopted FreeBSD-style init it would be equally as portable, it's a self-fulfilling prophecy. With that logic we should just all ditch un*x and start running Windows since most people already use that anyway.

The rest is nonsense. It's poor quality, non-consistent and non-deterministic if you write them that way. Sure, shell scripts being turing-complete opens the door to a lot of nonsense if people go wild and gives more latitude for very sloppy code but it doesn't have to be that way.

>the people who sit down and actually write the code we all use find the services systemd provides valuable

Systemd has been pushed down everybody's throat for a while now, saying retroactively that people use it because they find it valuable is a bit of a stretch. I'm sure many of them use it because that's what's available. I wrote a bunch of systemd unit files myself, I assure you that it wasn't meant as an endorsement.

Besides it's only one side of the equation. Maybe it's nicer for the people writing the unit files, doesn't mean that it's a good thing for people actually having to use them. I'm sure many software maintainers would prefer if everybody ran the same OS on the same hardware with the same use cases but that's not how the real world works.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @02:49PM (#23250343)
> Arguing that the advantage of systemd is portability is rather bold!

It's merely a statement of fact, systemd services accept the same set of commands across distros, which is rather unlike SysV.

> It's poor quality, non-consistent and non-deterministic if you write them that way.

That's a bullshit statement, because everything fits it. Of course everything is great if you make it great. And?

The point is that systemd's declarative nature makes it hard to screw up services and even badly written ones will get enough common functionality for free that they'd be usable.

> Systemd has been pushed down everybody's throat for a while now, saying retroactively that people use it because they find it valuable is a bit of a stretch.

Systemd got adopted because people generally found it valuable enough to adopt over what they had before.

> Maybe it's nicer for the people writing the unit files, doesn't mean that it's a good thing for people actually having to use them

Matter of opinion, but I happen to think that having a uniform set of commands working at work and at home is nicer for users too, over the patchwork of scripts that SysV was across the various distros.

Re:DirectX is coming to the Windows Subsystem for Linux by ori_b on Wednesday May 20, 2020 @08:47AM (#23246227)
> For me systemd based systems allow me to have declarative, portable unit files where init scripts don't.

Portable to what?

Re:DirectX is coming to the Windows Subsystem for Linux by Valmar on Wednesday May 20, 2020 @09:08AM (#23246393)
Portable to other systemd-using Linux distros.

sysv init scripts simply weren't portable between distros, leading to tons of non-standard, incompatible fragmentation.

Users simply couldn't simply take their own scripts over to another distro and expect them to just work, given said differences.

With systemd, unit files will simply just work between all systemd distros, given the standardized format.

Re:DirectX is coming to the Windows Subsystem for Linux by ori_b on Wednesday May 20, 2020 @09:17AM (#23246464)
Oh. That hasn't been my experience. Where did they standardize the names and set of the services you can depend on?
Re:DirectX is coming to the Windows Subsystem for Linux by majewsky on Wednesday May 20, 2020 @03:01PM (#23250468)
If the names of dependencies are the only unportable thing, we have indeed come a long way.
Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @09:51AM (#23246749)
> Where did they standardize the names and set of the services you can depend on?

You're ignoring what the parent said and talking past.

It's not the 'sets' that are standardized, it's the set of commands that are applicable to a systemd service and to any systemd Linux distro that is.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @06:48AM (#23245361)
I don't think we should have stuck with something like SysVinit, there's definitely room for improvement, but saying "it's either SysVinit or systemd" is a false dichotomy.

If I was approaching building an init system I'd make a better language for writing init scripts than bash, some kind of interpreter that processes mostly declarative init files, sets things up, and then exits. An incremental improvement that works with existing systems instead of putting a whole bunch of new (generally un-audited) code into PID 1, with all the security implications that implies.

Redhat may contribute the majority of the work but they're also very good at positioning themselves so that outsiders can't really contribute any work, or get any independently developed standards implemented.

Re:DirectX is coming to the Windows Subsystem for Linux by soraminazuki on Wednesday May 20, 2020 @08:01AM (#23245819)
How can people replace SysVinit without "doing their own take on EEE"? Your alternative approach is still not going to be compatible with SysVinit either, not to mention it being strikingly similar to systemd.
Re:DirectX is coming to the Windows Subsystem for Linux by welterde on Wednesday May 20, 2020 @08:14AM (#23245927)
Archlinux had their own non-sysvinit system (which went away in favor of systemd) as does voidlinux (runit based) and alpine (OpenRC) today.

The problem is less the init system itself, but applications that depend on a specific init system [1] (gnome used to be a major source of contention in that regard).

[1] https://wiki.gentoo.org/wiki/Hard_dependencies_on_systemd

Re:DirectX is coming to the Windows Subsystem for Linux by Valmar on Wednesday May 20, 2020 @09:11AM (#23246415)
What apps depend on a specific init system?

Gnome does not depend on systemd, but rather logind.

KDE used to be the same, until someone started maintaining ConsoleKit2 again, proper, at which point they were happy to support it.

ConsoleKit was dropped because it just wasn't being maintained, and had various limitations.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @09:56AM (#23246800)
Why does logind depend on systemd?
Re:DirectX is coming to the Windows Subsystem for Linux by Valmar on Wednesday May 20, 2020 @10:11AM (#23246961)
It's part of the systemd project umbrella? It's part of the systemd monorepo? It uses libsystemd?

Maybe it's simply easier to maintain this way?

elogind exists, if you care. It exposes the DBus interfaces that logind supports for applications to call.

Thus, environments like Gnome can be supported on non-systemd systems if they emulate and/or expose and implement the required DBus interfaces.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @10:40AM (#23247367)
That's sort of the complaint, why I accused them of "doing their own weird version of EEE". When faced with a choice of "make everybody else do a whole bunch of work so that they're not forced to use your entire project-umbrella" or "make some minor changes to our architecture so things aren't as tightly coupled" they almost always choose the one that forces you to use systemd.
Re:DirectX is coming to the Windows Subsystem for Linux by the_why_of_y on Wednesday May 20, 2020 @04:26PM (#23251359)
To the extent that you believe that free software development should work such that random people on internet forums dictate the architecture to the people who are doing the work, and instead of writing their software to solve problems that actual users have, they should comply with these whims, you better prepare to be disappointed.
Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @11:56AM (#23248391)
logind has a stable API, it is possible to build alternative implementations not coupled to systemd, yet so far I don't see much on that front.

See also https://lwn.net/Articles/586141

Re:DirectX is coming to the Windows Subsystem for Linux by soraminazuki on Wednesday May 20, 2020 @08:25AM (#23246053)
Is applications depending on systemd particularly a bad thing? If we don't want applications to use non-SysVinit features, we might as well keep using SysVinit.
Re:DirectX is coming to the Windows Subsystem for Linux by na85 on Wednesday May 20, 2020 @09:02AM (#23246342)
Why should my window manager dictate what programs are allowed to start it?
Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @09:58AM (#23246820)
For the same reason every piece of software 'dictates' its dependencies.
Re:DirectX is coming to the Windows Subsystem for Linux by welterde on Wednesday May 20, 2020 @09:04AM (#23246364)
If you don't care about portability at all.. (regardless if it's just within linux or to *BSD).

And like I already mentioned in my previous post.. there are other alternatives around than just SysV-init..

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @09:47AM (#23246708)
>How can people replace SysVinit without "doing their own take on EEE"?

By not tightly bundling their init with other OS components, by not having GNOME desktop somehow depend on what init system you're using (as opposed to services running under that init system).

Also you know how shell scripts have `#!/usr/bin/env bash` at the top of them? Well the reason why my hypothetical init system would be compatible with SysVinit is because instead of `#!/usr/bin/env bash` it would have `#!/usr/bin/env new_init_language` at the top of it. 'new_init_language" could implement almost all the same features that systemd unit files do.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @07:05AM (#23245458)
> If I was approaching building an init system I'd make a better language for writing init scripts than bash, some kind of interpreter that processes mostly declarative init file

Guess what systemd does?

> sets things up, and then exits

And that's the crux of the issue isn't it? Because on modern systems, things need setting up and tearing down all the time.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @07:29AM (#23245607)
> things need setting up and tearing down all the time.

Well not really, that's an artifact of systemd's over-engineered design. There's nothing stopping you from tearing something down from an init script or doing more complicated dependency management using the CLI as your RPC mechanism (but red hat needed a reason to use their in-house RPC mechanism).

Honestly something like systemd could be pretty reasonable if it wasn't created with the express intent of "combating fragmentation". Not that there aren't a whole bunch of technical and architectural issues with it, but still.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @07:42AM (#23245693)
> There's nothing stopping you from tearing something down from an init script

Except most init scripts I've seen are rather brittle and only "work" if the PID dance is exactly as the author predicted, are not declarative and hard to debug.

I don't want to go back to init scripts, for all systemd's faults, the past was worse.

Using the CLI as my RPC mechanism etc. just sounds like I should spend a bunch of time doing work that systemd can do a better job of managing for me.

Re:DirectX is coming to the Windows Subsystem for Linux by ori_b on Wednesday May 20, 2020 @08:46AM (#23246223)
> Honest question, is your opinion that we should have been stuck with something like SysVinit just so it's more convenient for the BSDs,

BSD init is far better than Sysv. Adopting it would have been a step forward.

There are also other init systems that are better designed, like openrc or runit.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @10:10AM (#23246947)
> There are also other init systems that are better designed, like openrc or runit.

OpenRC is practically speaking a thin wrapper around SysVinit, not much of an upgrade if you ask me.

Re:DirectX is coming to the Windows Subsystem for Linux by soraminazuki on Wednesday May 20, 2020 @08:12AM (#23245908)
Linux getting first-class support from applications isn't a valid basis for criticism. It's not like Linux is actively doing harm to FreeBSD or anything.
Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @06:04AM (#23245098)
As a Linux user I find this kind of comment hilarious given I see FreeBSD specific code littering upstream open source projects with no thought for other platforms on a regular basis.

Why for example are Jails not compatible with Linux? Is that not considered upstream because FreeBSD's "integrated"? How convenient.

I think what you see is happening because these "upstream" projects are actually primarily for Linux and by Linux devs. They just happen to work on BSD as well, but weren't you guys saying this whole time how the BSD approach of having everything integrated into one system is better and the whole GNU/Linux ecosystem of several upstream components is strictly worse?

So what exactly are you complaining about? Us trying to use Linux-specific features to make the Linux ecosystem the best, rather than target the lowest common denominator while you guys take full advantage of FreeBSD's specifics?

Seems less than fair to me.

Re:DirectX is coming to the Windows Subsystem for Linux by adamrt on Wednesday May 20, 2020 @09:18AM (#23246473)
> I see FreeBSD specific code littering upstream open source projects

Any examples?

> Why for example are Jails not compatible with Linux?

What? Jails originated in FreeBSD over 20 years ago? This question doesn't make sense.

The OP was referring to systemd affecting upstream by requiring systemd for things (ie Gnome). Are you saying there are pieces of software you have always used, but no longer can because they directly rely on jails?

I don't even use FreeBSD, but this was a weird argument.

Re:DirectX is coming to the Windows Subsystem for Linux by AsyncAwait on Wednesday May 20, 2020 @02:33PM (#23250172)
I am saying GNOME is primarily a Linux desktop environment, developed practically exclusively by Linux users and thus it makes sense for it to make use of Linux specific features, just as it makes sense for FreeBSD technologies to take full advantage of FreeBSD-exclusive features.

Just because GNOME wasn't using systemd in the 90s when systemd didn't even exist does not mean it should not use it ever, even if it makes sense for GNOME devs to do so now.

Re:DirectX is coming to the Windows Subsystem for Linux by Rusky on Wednesday May 20, 2020 @10:50AM (#23247509)
> The key is that the proprietary Microsoft specific API added by this patch is only usable in a WSL environment

The other key, which everyone crying "Extend" seems so eager to ignore, is that they don't actually want anyone to use this API: https://lkml.org/lkml/2020/5/19/1139

"I'll explain below why we had to pipe DX12 all the way into the Linux guest, but this is not to introduce DX12 into the Linux world as competition. There is no intent for anyone in the Linux world to start coding for the DX12 API."

They want people to continue to use OpenGL/Vulkan/OpenCL/etc., and this is just their mechanism for getting those APIs GPU access when running under WSL: https://www.collabora.com/news-and-blog/news-and-events/intr...

"We have recently announced work on mapping layers that will bring hardware acceleration for OpenCL and OpenGL on top of DX12. We will be using these layers to provide hardware accelerated OpenGL and OpenCL to WSL through the Mesa library."

Re:DirectX is coming to the Windows Subsystem for Linux by colejohnson66 on Wednesday May 20, 2020 @02:00PM (#23249848)
> There is no intent for anyone in the Linux world to start coding for the DX12 API.

I took that to mean that the developers on Linux are the people who won’t switch to DX even if it was ported.

Re:DirectX is coming to the Windows Subsystem for Linux by quietbritishjim on Wednesday May 20, 2020 @03:03AM (#23244092)
According to the comment by christoph-heiss, this is just a paravirtualisation technique and will appear like a normal Limux GPU driver to applications running on WSL, rather than a special DirectX for Linux API that won't work on Linux itself.
Re:DirectX is coming to the Windows Subsystem for Linux by lalaland1125 on Wednesday May 20, 2020 @03:14AM (#23244150)
I'm not sure where you are getting the idea that this would expose a normal Linux GPU API. The blog post and the thread on the kernel mailing list seem quite clear in that this is explicitly designed with the goal of exposing the Windows driver API and associated client APIs like DirectX.

From the email introducing the set of patches:

> The projection is accomplished by exposing the WDDM (Windows Display Driver Model) interface as a set of IOCTL. This allows APIs and user mode driver written against the WDDM GPU abstraction on Windows to be ported to run within a Linux environment. This enables the port of the D3D12 and DirectML APIs as well as their associated user mode driver to Linux.

Re:DirectX is coming to the Windows Subsystem for Linux by monocasa on Wednesday May 20, 2020 @09:12AM (#23246430)
> I'm not sure where you are getting the idea that this would expose a normal Linux GPU API.

The fact that they went through the effort of porting Mesa to get OpenGL and Open CL support, and are working on Vulkan support.

Re:DirectX is coming to the Windows Subsystem for Linux by codys on Wednesday May 20, 2020 @11:28AM (#23248042)
The standard for Linux gpu access is the dri/drm kernel interface, not the new wsl specific api they've added.

Their porting Mesa to use a proprietary library that interacts with the wsl only kernel interface isn't that same as behaving like a standard Linux gpu

Re:DirectX is coming to the Windows Subsystem for Linux by monocasa on Wednesday May 20, 2020 @11:58AM (#23248419)
It's not really a standard though, each GPU has a totally different set of ioctls and device files to the point that you can't write against a generic kernel interface either way. AFAIK, the only DRI/DRM interface with two used clients is amdgpu (of which one of the clients is proprietary).

And part of the discussion on the mailing list is how to integrate this with DRI/DRM and dma-buf so it can be used by more Linux clients with less work (although still non zero like you'd have on a DRI scheme as well).

Re:DirectX is coming to the Windows Subsystem for Linux by zamalek on Wednesday May 20, 2020 @01:42PM (#23249634)
> The blog post and the thread on the kernel mailing list seem quite clear in that this is explicitly designed with the goal of exposing the Windows driver API and associated client APIs like DirectX.

Are we reading the same blog post?[1]

[1]: https://devblogs.microsoft.com/directx/wp-content/uploads/si...

Re:DirectX is coming to the Windows Subsystem for Linux by cs702 on Wednesday May 20, 2020 @11:43AM (#23248221)
Keep in mind, a ton of people and companies are asking for this, because they genuinely want to use hardware-accelerated PyTorch and TensorFlow "through a Linux-thingy" on Windows.

BUT I MUST AGREE WITH YOU that, over time, this is likely to fragment the Linux ecosystem and encourage people to develop software that works only in Windows "with the Linux-thingy installed" environments.

That's because sooner or later, people using Windows will publish important AI papers or release must-have software or do something else with code that runs only on Windows "with the Linux-thingy installed." The "Linux-thingy" becomes a dependency that gets installed in the background. It becomes a near-invisible component of Windows, abstracted away by layers of Microsoft APIs, code, standards, etc.

The "Linux-thingy" on Windows, in other words, becomes like an init system on Linux, which can eventually be replaced in whole or in part without most people caring or noticing. Most Linux users don't care if their Linux machine uses Systemd, a Sys V Init, or even the dead-ended Upstart. That's the "Extinguish" part.

Re:DirectX is coming to the Windows Subsystem for Linux by smaudet on Friday May 22, 2020 @12:26PM (#23273804)
I do think that's a real concern...however in some ways this is an admission of failure - users like what's in the WSL enough that they want more linux, versus just some subsystem which is consumed by other apps.

Also, I think linux users (desktop/servers) who actually write code and provide updates for programs, aren't likely to pause the world for WSL. Its not exactly 'linux' nor the destination for their code, WSL stands a risk of becoming obsolete, if not properly maintained etc.

Its also good in some sense, it exposes users to linux capabilities and the like, who might not have had the guts to run a live cd or deal with modern hardware foibles.

Re:DirectX is coming to the Windows Subsystem for Linux by 2OEH8eoCRo0 on Wednesday May 20, 2020 @10:00AM (#23246836)
I hate how this is constantly brought up. Yes- that was a Microsoft strategy and might still be. With that said, Microsoft has no power to make people switch. If people switch off of desktop Linux in favor of Windows it's because Windows is either a better product or Linux was too much of an issue. Why shouldn't consumers choose the better product for themselves? Why shouldn't Microsoft or Linux compete for business? Why do you care so much if someone wants to use Linux or Windows?

>With the "benefit" of forcing the Linux kernel developers to pay the maintenance costs of course.

No. Nobody is forced to maintain this. If Microsoft stops maintaining it then Linux is free to kick this to the curb.

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @09:32AM (#23246590)
> This patch does nothing but fragment the Linux ecosystem

Proof that Microsoft really has embraced Open Source development.

Re:DirectX is coming to the Windows Subsystem for Linux by foxhill on Wednesday May 20, 2020 @05:58AM (#23245065)
i (and others) called this 3 years ago[1].

people need to stop using windows, entirely. i recently built a gaming machine, pretty high spec, and i've resolved to never install windows on it. there are plenty of games i can't play, a few that i would like to. but i wont give money to developers that wont release linux versions of their games - even when they are utilising engines that have linux ports (PUBG being the most recent example i can think of, but any unreal/unity engine based game). there's no reason to use windows any more (for people like us, at least).

[1]: https://news.ycombinator.com/item?id=14320200

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @09:45AM (#23246690)
I'd love to be using an open source desktop, but sadly Linux Desktop is still a goddamn garbage fire as far as I'm concerned. Not that long ago (months) I would say that 4 out of 5 of my desktop and laptop computers ran Linux, but now that number is 1/5 because I just got sick of dealing with Linux Desktop bullshit on them. My main gaming rig runs nVidia because it is frankly best in class, and nVidia has shit Linux support so that's a no-go. I also have a used Oculus Rift, which again rules out Linux.

There's a reason Windows is still dominant in the Desktop space despite all its problems.

Re:DirectX is coming to the Windows Subsystem for Linux by foxhill on Wednesday May 20, 2020 @01:47PM (#23249702)
> Not that long ago (months) I would say that 4 out of 5 of my desktop and laptop computers ran Linux, but now that number is 1/5 because I just got sick of dealing with Linux Desktop bullshit on them.

interesting. i put ubuntu 20.04 on this and it's been plain sailing. now usually i'd say i've got a high tolerance for bullshit when it comes to linux, but i'm not exadurating when i say i did not have to touch the terminal to:

1. install it without any extra crap

2. switch from nouveau to the nvidia driver - version 440.64, a very recent driver (which isn't very fair to nouveau, i didn't even give it a try, really)

3. install steam and games and have them work flawlessly from the get-go. games i've played:

* counter-strike global offensive (a lot..)

* the binding of isaac (would be bad if this didn't run!)

* deus ex mankind divided (was _very_ surprised to see this available and working perfectly, to be honest)

* black mesa

a short list, but i've only had the machine for a week.

i know it's stupid to say "hey i didn't have to use the terminal", but really, ubuntu has come a long way. i couldn't have said that last year, i don't think.

> nVidia has shit Linux support so that's a no-go.

eh, i'm gonna respectfully disagree there. linux support from nvidia has been a bit patchy (and the nvidia driver windows isn't exactly a dream at times, too), but i've been using nvidia driver on linux on various installs on various architectures on various hardware for _years_ and i've never had a significant problem. AMD, on the other hand.. i don't miss fglrx.

> I also have a used Oculus Rift, which again rules out Linux.

well i also wont support facebook, so that's not an option for me :)

honestly, it's _really_ disheartening to see the replies to this comment and see how far the normalisation of deviance has come. the _only_ tool we have as end users to stop companies from being shit is to vote with our wallets. and yet the majority of responses is to just give up and accept that that's how it is.

i think we're doomed as a species :)

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @10:01AM (#23246852)
What kind of linux desktop bullshit? Has it been getting worse?
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @10:22AM (#23247108)
No, it just isn't getting better. Any time you want to do something even remotely interesting, like install software that is actually up to date and therefore not in the repo, you have to jump through a bunch of hoops. One of my other usecases involved a device with only a 16GB internal disk, so naturally I would like to install applications to an external disk so they actually fit. This is usually trivial on Windows but not possible with any package manager on Linux [0]. I still constantly run into issues with hardware, especially sound and video, that require hours of googling and manually tweaking config files to fix. Oh yeah, and half the time the results from google for any issue applied to the way things were done 5 years ago, which in typical Linux fashion means that there's an entirely new way to do it now that bears no resemblance.

[0] Flatpak can do it if you setup an entirely new installation on that disk, but flatpak has its own issues. Snaps can't do it at all, and while AppImage is really great relatively few projects distribute that way.

Re:DirectX is coming to the Windows Subsystem for Linux by confusedreeder on Wednesday May 20, 2020 @12:33PM (#23248863)
what do you mean you wanted to install applications to an external disk?

if you have a separate OS on the external drive, you could chroot in and install it. If you just want that one application to be on the other disk, you could mount it to wherever on the filesystem the program would be installed. However you probably don't wanna do that on an application by application basis. you could mount /usr/bin/ on the external drive for example. or use LVM to share disk space between the disks

Flatpak, Snap, Appimage and other portable format aren't really preferable. they lead to a software ecosystem that amounts to just downloading and running executable binaries off the internet, each with their own overhead.

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @12:54PM (#23249094)
> what do you mean you wanted to install applications to an external disk?

Kinda illustrates my point about this being a foreign concept to Linux Desktop people. It's pretty simple: I want to put an application on an external disk and run it from there.

> if you have a separate OS on the external drive, you could chroot in and install it.

No thanks. I'd just like to have the application stored on an external disk, and execute it on the OS I have installed.

> If you just want that one application to be on the other disk, you could mount it to wherever on the filesystem the program would be installed.

Not really, because Linux likes to have an application spread its files all over the hierarchy, so in reality I need to either use some form of union-mounting, and/or simlinks. Of course that is only sufficient if there are no library conflicts between what the application wants and what the system uses, in that case I need to use LD_LIBRARY_PATH and other tricks. In some cases I'll need to use a launch script that calls a different ld.so.

That's a lot of hoops compared to how sane operating systems do it.

> LVM to share disk space between the disks

System breaks when disk is removed. No good.

> Flatpak, Snap, Appimage and other portable format aren't really preferable. they lead to a software ecosystem that amounts to just downloading and running executable binaries off the internet, each with their own overhead.

Which is pretty much what I want, because the alternative is dealing with the bullshit I mentioned above whenever you step outside the package manager's sandbox.

Re:DirectX is coming to the Windows Subsystem for Linux by monocasa on Wednesday May 20, 2020 @02:18PM (#23250026)
NixOS gets you there I think. They deviate from the standard hierarchy to keep each application in its own directory that could be installed on it's own drive if need be, then with symlinks back to the main tree for legacy purposes. Like /bin/sh would be a symlink to /nix/store/s/5rnfzla9kcx4mj5zdc7nlnv8na1najvg-bash-4.3.43/bash but only because there's enough legacy out there that expects /bin/sh to be runnable verbatim.
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @03:45PM (#23250922)
Now if only I didn't need to learn a new language in addition to all the OS tooling to use NixOS.

This is what AppImage gets that the rest of Linux doesn't seem to: if an application is a single file/folder, you don't need anything more complicated than a file manager to manage it.

P.S.: after a quick glance at some documentation, I don't see any mechanism that would allow me to install nix packages to arbitrary locations anyway.

Re:DirectX is coming to the Windows Subsystem for Linux by smaudet on Wednesday May 27, 2020 @06:33PM (#23330937)
I'd like to point out that having random programs scatted across external HDDs is an anti-feature to me. I never remember which files are where as it is. And too easy to screw things up by unplugging the drive...

Nevertheless it can be done - if you are dedicated, recompile the program with the prefix changed to the mounted root of your separate drive. Presto, automated installs to your external drive. Now, linking up all the bits can still be a right headache, but this is just a bigger nightmare on Windows (what will you DO if your drive letter changes?? You mean I don't have any system to automatically link up random programs on random drives which may or may not be present. Gosh darn, that package manager sounds like a good idea now...)

If you're using a laptop, you're probably due for an upgrade in HDD capacity, or if you're lucky enough to be on Desktop I'd recommend a board with hotplug capability and using LVM. I think no matter your platform you're going to have a hell of a lot of problems doing things your way. If you can patch the package manager to be able to do this, amazing! I don't think any system exists like this, period.

Re:DirectX is coming to the Windows Subsystem for Linux by drran on Wednesday May 20, 2020 @03:54PM (#23251023)
You mean you want an actual installer, like in DOS or Windows? IMHO, it's crazy.

I had similar problem. I joined two physical disks into one logical using LVM and forgot about problem. :-/

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @04:02PM (#23251107)
> You mean you want an actual installer, like in DOS or Windows? IMHO, it's crazy.

Well that's still better, in my opinion, than package managers and all their various restrictions. But ideally I want something like AppImage, where an application is a singular entity that can just be moved at will and run from wherever [0]. Most DOS programs and many Windows programs (if you extract them from the installer) will still work like that.

> I had similar problem. I joined two physical disks into one logical using LVM and forgot about problem. :-/

If you unplug the external disk, your system stops working. This is not what I want, as I mentioned already in the post you're replying to.

[0] classic MacOS, RiscOS, and NeXT all had programs that worked like this too. Linux has yet to achieve the flexibility in application management afforded by the OSs of the 1980s.

Re:DirectX is coming to the Windows Subsystem for Linux by traverseda on Wednesday May 20, 2020 @10:35AM (#23247301)
Hmm, that's fair. I'd encourage you to try something outside of the standard redhat/ubuntu distros. Manjaro is nice and is pretty much always up to date. Also has access to the AUR, so there are packages for pretty much everything. It's a lot easier to do interesting stuff.

LVM can make two disks appear like they're one, but of course if you remove any of them they both fail. Doesn't really solve the underlying "I want to install apps outside of the root partition" problem though.

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @10:46AM (#23247460)
> I'd encourage you to try something outside of the standard redhat/ubuntu distros.

Generally speaking they have the same problems as the mainstream distros, but with the additional caveat of even less chance of googling solutions and worse or no support at all from non-oss software.

> LVM can make two disks appear like they're one, but of course if you remove any of them they both fail. Doesn't really solve the underlying "I want to install apps outside of the root partition" problem though.

Precisely. The very concept is just so foreign to most of the Linux community that even talking about it gets you strange looks. It is actually possible to do with some significant AUFS-fu, but its a hell of a hoop to jump through for functionality that is pretty natural in every other desktop OS that ever existed.

Re:DirectX is coming to the Windows Subsystem for Linux by sergeykish on Wednesday May 20, 2020 @04:21PM (#23251305)
I've heard GoboLinux [0] does not follow Filesystem Hierarchy Standard.

[0] https://en.wikipedia.org/wiki/GoboLinux

----

What you describe is like installing in $HOME. It's not unusual - python virtualenv, ruby rbenv, node_modules. This comes with trade off - either system knows where to search or one has to define per project. By FHS entire Linux tree is a project. In Windows... configuration is pain.

Flatpak someday.

Re:DirectX is coming to the Windows Subsystem for Linux by sergeykish on Wednesday May 20, 2020 @06:58PM (#23252994)
Now, as I think about it, ruby is not like FHS

    └── gems
        ├── irb-1.2.3
        │   ├── exe
        │   │   └── irb
        │   └── lib
        │       ├── irb
        │       └── irb.rb
        └── rack-2.2.2
            ├── bin
            │   └── rackup
            └── lib
                ├── rack
                └── rack.rb
    
vs

    ├── bin
    │   ├── irb
    │   └── rackup
    └── ruby
        ├── irb
        ├── irb.rb
        ├── rack
        └── rack.rb
    
FHS approach does not support multiple versions, gems approach requires declaring version in code or Gemfile, playing with PATH, considerable slowdown https://github.com/Shopify/bootsnap
Re:DirectX is coming to the Windows Subsystem for Linux by munchbunny on Wednesday May 20, 2020 @11:47AM (#23248272)
I think that sums up my issues with desktop Linux: any user has at least some niche requirements. For mine they are fairly doable on MacOS/Windows, but they require hours of staring at documentation and downloading/compiling source code in Linux.

I still write code in a Linux environment because that's where the ecosystem is, but for my daily driver I've given up on desktop Linux. And I've found that WSL gets me a Linux based development environment side by side with Windows with less pain than dual booting. I've found that when it comes to using Linux smoothly, it's a lot easier to shoehorn myself into the happy paths than to bend my setup into my way of doing things.

Re:DirectX is coming to the Windows Subsystem for Linux by golergka on Wednesday May 20, 2020 @06:07AM (#23245118)
As a game developer, for most mid-tier inside titles releasing Linux version costs more than it makes, so, no.

And regarding using Windows: company's behavior is important, but product quality, especially when it's a tool you use every day for work, is more important. Linux is ok for certain types of developers, it's still awful for normal users, abysmal for office work and obviously not a choice if you develop Windows software.

Re:DirectX is coming to the Windows Subsystem for Linux by franga2000 on Wednesday May 20, 2020 @07:21AM (#23245556)
> As a game developer, for most mid-tier inside titles releasing Linux version costs more than it makes, so, no.

What are the main costs of releasing a Linux version of a game when using Unity or Unreal? My limited experience with Unity has been "check the Linux box, click the build button". It even cross-compiles no problem. People I know tell me Unreal is similar.

It's not like they have to do a full run of play-testing for Linux. Just check if it starts, play for 10 minutes and release that. We know we're a minority so we're willing to put up with bugs. Even if there's only 100 people who'd buy it only if it ran on Linux, that should pretty much cover the couple hours of dev time.

Re:DirectX is coming to the Windows Subsystem for Linux by coldpie on Wednesday May 20, 2020 @08:31AM (#23246104)
I can tell you've never released a popular product on Linux. It's a lottttt more effort than you're implying. To do it well, you need to have Linux as a target from the start of your development, it's not something you can tack on to the end. Linux graphics drivers are very different from Windows (the AMD stack isn't even the same codebase). Linux window managers are... wild. You need to build to an ABI that will be supported across distros, which mostly means the Steam Runtime, which means you need to go learn about and understand that. You can't introduce any platform assumptions ("ehh, I'll just hardcode this path with a backslash... oops"). Once you release, you're talking support for dozens of different distros, different versions of distros, different package managers, different filesystems. I know what you're going to say: "Just support Ubuntu LTS and ignore everyone else". Well, now you've just cut your customer base by at least 75%[1], and your customers on other distros are going to demand support anyway. Do you tell a paying customer to F-off because they're not using a distro with only ~20% of the market?

Supporting Linux is hard. So is supporting Windows, but if Windows makes up 98% of your customer base, it's justified. 2%? Ehhhhh.

(P.S. I love Linux. See my profile. This is the kind of stuff I deal with every single day.)

[1] https://boilingsteam.com/we-dont-game-on-the-same-distros-no...

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @09:43AM (#23246677)
Open source your games. Open source is the only practical way that existing distros are able to test and support the majority of packages that they ship. If you do that, the cost of supporting all those other things will fall on the distros, not on you, but you need to actually play ball with them and give them something workable that isn't an opaque binary blob that is illegal to redistribute, modify or reverse-engineer. The feelings you're describing (that you need to shelter 100% of those costs and you have no other options) are a side effect of the game industry's cargo-culting of closed-source business models and refusal to even consider that there are ways to make money from open source.
Re:DirectX is coming to the Windows Subsystem for Linux by jaywalk on Wednesday May 20, 2020 @10:03AM (#23246869)
Yeah, the solution to a platform not making enough money to justify supporting it is... giving away your game for free! The self-centered attitude of your comment is astounding, but all too common in open source communities.
Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @10:21AM (#23247096)
You don't have to give your game away for free. I urge you to look into how prominent open source companies are actually making money and think about how it can be applied to games. It's not an impossible reality.

You claim I am being "self-centered" but the fact is if you don't provide something that the distros can work with and instead try to route around everybody and ship an untestable blob then that's your fault. The reason everyone tells you to just support Ubuntu LTS is because they are the only ones who have the resources to support all these random binary blobs for X amount of years, and that comes with all the pains associated with it, as you are well aware of.

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @10:40AM (#23247372)
> You claim I am being "self-centered" but the fact is if you don't provide something that the distros can work with

Alternative view: distros don't provide a stable platform that developers can target.

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @11:06AM (#23247735)
Some do provide that, such as Ubuntu LTS and RHEL. Others don't.

Expecting every distro to have the exact same release & support cycle is nonsensical.

Re:DirectX is coming to the Windows Subsystem for Linux by majewsky on Wednesday May 20, 2020 @03:11PM (#23250572)
Linux LTS releases are not particularly stable from the perspective of someone who wants to distribute applications as binaries. Its API can change with every release, i.e. every two years. It's incredibly unlikely that a binary compiled for Ubuntu 18.04 will be able to run on Ubuntu 20.04 (as in Python etc.).

To contrast, if you take a Win32 game from 2003 that targets DirectX 9, it probably runs fine on the latest Windows releases. (You might have to enable some compatibility mode.)

"BUT BUT BUT if it's packaged with the distro it's no problem." Remember we're talking about proprietary applications (mostly games) here. Having these packaged with distros for years after the devs moved on to the next project is just a pipe dream.

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @04:41PM (#23251526)
My original statement was that if this is really a problem for you then you need to stop writing and distributing proprietary binaries and open source your game. I know this is a hard pill for game developers to swallow but there is no other way. Open source communities move fast, they are not going to slow down just to support some opaque binary blob that is illegal to redistribute or fix bugs in, and that the original developer doesn't even care about anyway. It is nonsensical to expect these communities to work exactly like Windows. These are not fortune 500 companies with billions in the bank like Microsoft that can afford to keep innovating while also supporting every single legacy program in existence forever. The only way open source communities can provide the same level of support is if you provide source code that other interested parties can keep up-to-date without worry of being sued.
Re:DirectX is coming to the Windows Subsystem for Linux by golergka on Wednesday May 20, 2020 @02:12PM (#23249967)
These prominent open source companies that you're taking about make money from consulting or cloud services. There's no well understood and well rested way to do that as a game company.

It doesn't mean that there's no such way, but it does mean that attempting to find it is very risky. Making games is already a very high-risk, high-reward industry, do adding this amount of risk to the equation is advice that's insane for all but most successful companies.

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @03:16PM (#23250626)
A multiplayer game is just like any other cloud service in terms of economics. And a game that allows a certain degree of customization is analogous to a consultancy. Find the pain points your business customers/partners are having and then charge for solutions. If you don't have any business customers/partners then get some, not having them is a much bigger risk than choosing any specific development model.

One of the ways these companies can reduce risk is actually by using other proven open source components. If they won't even make an effort to try to expand this, then there will never be a well-understood way.

Re:DirectX is coming to the Windows Subsystem for Linux by golergka on Thursday May 21, 2020 @02:09PM (#23262390)
> A multiplayer game is just like any other cloud service in terms of economics.

No, it's not - this is an absurd statement. Cloud services get most of their income from big and medium companies, billing tens and thousands of dollars in privately negotiated agreements. Digital Ocean and AWS don't live on single developers paying them $5. All their real money is on B2B.

Multiplayer games either get a flat subscription from all their playerbase, or rely on micropayments. Either way, they spend much less on account management where they interact with customers as individuals, and much more on analytics, where they measure and work with their customers in aggregate. These are completely different business models, that completely shape companies that operate on them.

> Find the pain points your business customers/partners are having and then charge for solutions.

Games are not solving any problems - they are entiertainment product. I've seen people who have tried to reason about games in the terms you're using, and it always yelded hillarious (but also sad) results.

Re:DirectX is coming to the Windows Subsystem for Linux by ric2b on Wednesday May 20, 2020 @03:58PM (#23251067)
Open sourcing doesn't mean you need to provide all the souds/music/3d models/assets/etc. Those can all be copyrighted separately.
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @09:54AM (#23246782)
> Open source your games. Open source is the only practical way that existing distros are able to test and support the majority of packages that they ship

Which might be one of the reasons Linux Desktop is so awful to develop for.

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @10:34AM (#23247285)
The "Linux Desktop" is not and has never been a thing beyond a vague marketing term. What you're thinking of is a loose collection of unrelated projects. Pick a single stack and go with it and things get better.
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @10:39AM (#23247349)
....Which might be one of the reasons Linux Desktop is so awful to develop for.

You wonder why people ignore your platform? Saying it isn't actually a single platform and instead is dozens of different platforms just means each of those platforms is even less relevant. Saying you're not just one platform with 10% market share but actually 20 with 0.5% each doesn't make the case for shipping on Linux Desktop any better.

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @11:07AM (#23247749)
I'm not making a case for shipping on the "Linux desktop" because that doesn't exist and has never been a real platform. Most smaller distros are not trying to be "relevant" to whatever the gaming community's fad of the day is. They're perfectly fine filling what niche they do. If you want to target those smaller distros as a platform, you can give them some source code to work with, or you can pay all the cost of maintaining things yourself, or you can just ignore those. They will do fine without your game.
Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @11:22AM (#23247960)
So what are you saying? Developers should just choose a major distro and target that, then get all the flack for issues their product has on every distro that isn't supported? Because that's basically what's already happening and developers hate it, which is why they often don't ship on Linux at all.

And many proprietary pieces of software license components from other proprietary pieces of software, so that even if they did want to open their code they'd have to strip pieces out of it anyway which doesn't really help the cause of distros integrating it. And even if it did, then the developers are reliant on the maintainers for their relationship to their customers. Have an issue with the product? Oh, it turns out that's because of this patch made by the maintainer of the package for that distro, who now has to be contacted and convinced to fix it, which they may decide not to for arbitrary reasons. Even open source developers have problems with this!

Re:DirectX is coming to the Windows Subsystem for Linux by cycloptic on Wednesday May 20, 2020 @11:57AM (#23248405)
In general, distro maintaners can't help you with legal conundrums you created for yourself (you signed restrictive NDAs and proprietary license agreements and didn't consider the fine print until it was too late) or with other unrelated market problems (lack of popularity, lack of developer interest in supporting your game).

If you need to strip out some parts and there is enough will in the community to replace those pieces that you stripped out, then it will happen. If you have a product that is anywhere near being popular among the FOSS developer communities then I don't think it makes sense for you to claim that this will doesn't exist, or that distro maintainers will lose interest.

Re:DirectX is coming to the Windows Subsystem for Linux by Chouhada on Wednesday May 20, 2020 @09:03AM (#23246351)
> What are the main costs of releasing a Linux version of a game when using Unity or Unreal? My limited experience with Unity has been "check the Linux box, click the build button". It even cross-compiles no problem. People I know tell me Unreal is similar.

For a simple game that uses the entire UE4 stack, you might be able to get away with that if none of your code is Windows-specific and works exactly the same on the Linux distribution you are targeting. Once you start using your own middleware and libraries from outside of the default engine, you need to make sure every single one works across all the platforms you're targeting. Many won't have a Linux compatible version, and those that do may only work against specific distributions and hardware. Even then: Have they changed the window manager? What have else they customised?

There have been many issues with anti-cheat solutions over the years on Linux.

> It's not like they have to do a full run of play-testing for Linux. Just check if it starts, play for 10 minutes and release that.

For a simple game, you may get away with this. Anything larger will require significantly more testing. I've been a producer on large games, and the QA process starts very early on. You don't 'finish' a game and then QA starts - It's an ongoing process that consists of significantly more than just launching a game.

>We know we're a minority so we're willing to put up with bugs

Some people don't see it that way though. People who have paid for a product have the right for it to work properly. Tickets for Linux support are often higher [1], so the time investment against payback can be problematic.

GPU driver support on Linux can also still be problematic. From feature differences against Windows, to crashes. These all take additional development time. Linux developers are often more difficult to acquire in the game dev world. QA even more so.

Game dev is really hard. Some of it is hidden by engines like UE4 on the surface, but as soon as you start digging down into serious development, it's difficult.

[1] https://twitter.com/bgolus/status/1080213166116597760

Re:DirectX is coming to the Windows Subsystem for Linux by smaudet on Friday May 22, 2020 @12:43PM (#23274028)
Probably the most relevant issue here is the DirectX stack or using some windows specific API (why? DirectX I maybe got at one point, the others speak to some absurd Microsoft-Is-Best-Cause-I-Paid-Money-ism).

> Many won't have a Linux compatible version, and those that do may only work against specific distributions and hardware. Even then: Have they changed the window manager? What have else they customised?

Outside of truly exotic window managers, the biggest issue I've ever seen with ports has to do with dependencies. Flatpack/Snaps solve most if not all of those problems.

> There have been many issues with anti-cheat solutions over the years on Linux.

That's assuming anti-cheat systems are ethical, even. Most games I play I want to be multiplayer, and moddable. Most games I play can do both of those things and work in a cross platform modding language. Not hard. I don't want any anti-cheat systems for a complex game with tons of modding.

The only place anti-cheat systems make sense is with e-sports style games. Of which, the best anti-cheat systems work server side. Anything else is invasive and tantamount to illegal spying. Shame on you, go burn in peeping Tom hell you perverse game dev.

> For a simple game, you may get away with this. Anything larger will require significantly more testing.

I find this incredibly hard to believe. If you are working within the engine the majority of the time, the majority of the game will play wherever the engine works. Which brings us back to one of your first comments:

> For a simple game that uses the entire UE4 stack, you might be able to get away with that

For which games are you not just using the UE4 stack? I.e. what specific problems are game devs normally experiencing causing their code to be non-portable? A bunch of low level assembly code and non standard C++?

> but as soon as you start digging down into serious development

I challenge you to define 'serious' development. That sounds suspiciously like you're wasting your time fighting infrastructure, or just doing things in a non-portable manner. Solving problems is cross platform, so you can't be doing much serious game coding, its probably problem solving for your particular platform (e.g., as I already mentioned, doing a bunch of work in DirectX shaders or something).

Re:DirectX is coming to the Windows Subsystem for Linux by golergka on Wednesday May 20, 2020 @01:54PM (#23249775)
Well, I've been working with Unity for 11 years now, but my experience with building for Linux is limited, so I'll go with experience from mobile and console development, and say that with shaders (which never ceases to surprise with platform-specific glitches), filesystem (although Unity is supposed to abstract it out, once you get serious about resource management, this abstraction starts to leak), input (because you want to support gamepad with minimum hassle for the player), and million of unknown unknowns that hopefully will be found by QA, but realistically, by very angry players, I'd budget at least a couple of man-months for this. With sales in hundreds or even tens of thousands, we can expect to get about 2% of audience from Linux, which will account for single-digit thousands, or hundreds of copies sold. With a price tag of $10-20, after Steam cut, taxes, regional prices, sales and refunds, it's about $5-10 of revenue per unit, so in total, about $10k.

If that would just be the money a single developer got for 2-3 months of work, it could still be fine for some regions (not everyone on HN is from US). But with a studio, you also have to spend money on marketing, payroll taxes, rent, and development of future projects, which most likely sell even worse.

So, no, I really don't see how porting to Linux would pay. Most of developers that I talked to who did it admitted that supporting OSX and Linus turned out to be a giant waste.

Re:DirectX is coming to the Windows Subsystem for Linux by smaudet on Monday May 25, 2020 @04:42PM (#23304758)
I think there's merit to the argument of 'big corporations can't get things done efficiently' here. I think as you mentioned, for a small scale dev it can be done. I agree, shading could be better across platforms, graphics card manufacturers, even, but that all pales in comparison to a large inefficient corp making grossly over-complex games with staggeringly little added value per hired developer (oh yay another 1mil triangles added to the 100th remake of the same garbage FPS or NFL game, extreme sarcasm).

But outside EA Games e.g., some of the best games I've ever played were written by solo devs in a cross platform engine you may have heard of called Flash. Yeah, not always smooth sailing on Linux, but it worked, pretty well even.

Re:DirectX is coming to the Windows Subsystem for Linux by computerex on Wednesday May 20, 2020 @09:04AM (#23246361)
> Linux is ok for certain types of developers, it's still awful for normal users, abysmal for office work and obviously not a choice if you develop Windows software.

Don't want to get into an OS war here but merely stating your opinion as fact without supportive evidence is not in the spirit of HackerNews.

> it's still awful for normal users, abysmal for office work

For office work a lot of workload has moved to the web browser. Creating documents and working on spreadsheets for instance can now all be done online with Microsoft's Office offering and other competing products like Google Docs.

And why is it awful for normal users? ChromeOS for example is just linux, and that whole platform is targeted towards 'normal users'. I use linux on all of my personal devices and I use these devices to do very 'normal user' activities like watching YT, social media, blogging, etc. There are many communities that consist of 'normal users' like /r/Thinkpads or /r/LinuxOnThinkpad that are currently enjoying linux.

Precisely why do you think it's awful for normal users and office work?

Re:DirectX is coming to the Windows Subsystem for Linux by AnIdiotOnTheNet on Wednesday May 20, 2020 @09:53AM (#23246764)
> Don't want to get into an OS war here but merely stating your opinion as fact without supportive evidence is not in the spirit of HackerNews.

These things are pretty much self evident.

> Linux is ok for certain types of developers

Web developers and HP computing. Game developers? Haha, no. Embedded? Too many proprietary toolchains that don't run on Linux. Productivity and business applications? See below section on office work. ML? nVidia [apparently I'm incorrect on this one].

> it's still awful for normal users

Alright, this is a bit subjective, but is supported by the stats that show Linux Desktop still in a distant and well deserved third place. You list a few tasks that you seem to believe are "normal user" tasks, I submit to you that you drastically underestimate the things a normal desktop computer user does with their computer, since most of the tasks you listed are now things that people do on phones and tablets.

> abysmal for office work

In most offices, Microsoft Office is an indispensable productivity tool (which many HNers, having little experience with real office work, will underestimate severely) and it is only supported on Windows (No, the web version is not the same).

Re:DirectX is coming to the Windows Subsystem for Linux by computerex on Wednesday May 20, 2020 @11:49AM (#23248300)
> Embedded? Too many proprietary toolchains that don't run on Linux.

It's funny/surprising that you'd say that, given that Linux is the single most dominant OS in the embedded device space. What toolchains are you referring to? Here are some well known ones.

https://www.yoctoproject.org/ https://www.ptxdist.org/ https://openwrt.org/

> ML? nVidia [apparently I'm incorrect on this one].

Not only are you wrong about CUDA, but Google's custom built chip designed for ML runs soley on Linux: https://en.wikipedia.org/wiki/Tensor_processing_unit

ML almost exclusively runs on Linux.

> and it is only supported on Windows

Office also runs on macOS. You can also run Office in Linux using WINE.

> Alright, this is a bit subjective, but is supported by the stats that show Linux Desktop still in a distant and well deserved third place. You list a few tasks that you seem to believe are "normal user" tasks, I submit to you that you drastically underestimate the things a normal desktop computer user does with their computer, since most of the tasks you listed are now things that people do on phones and tablets.

It's really easy to say anything without providing any supportive evidence to substantiate your claims. Pray tell what tasks you are referring to that "normal users" partake that supposedly can't be done in desktop linux.

Re:DirectX is coming to the Windows Subsystem for Linux by cartoonfoxes on Wednesday May 20, 2020 @01:40PM (#23249608)
>It's funny/surprising that you'd say that, given that Linux is the single most dominant OS in the embedded device space. What toolchains are you referring to? Here are some well known ones.

No, and no.

The parent was referring to embedded development toolchains - compilers, IDEs, endless small utilities, debuggers, analyzers, etc. etc. Commercial tooling is almost all Windows-exclusive, even if it's using a smattering of open-source bits underneath.

Also no. The "embedded device space" is v a s t. New projects for phones and similar hardware profiles might choose an Android or other flavor of embedded linux, for sure. Even within sexytech consumer products you're more likely targeting something like VxWorks or QNX as not. The physical world, the domain of embedded devices, is not smartphones and SaaS. Unless you're talking about a very specific product category it's laughable to call Linux dominant here.

Re:DirectX is coming to the Windows Subsystem for Linux by computerex on Wednesday May 20, 2020 @04:25PM (#23251347)
> The parent was referring to embedded development toolchains - compilers, IDEs, endless small utilities, debuggers, analyzers, etc. etc.

I know what the parent was referring to.

> Commercial tooling is almost all Windows-exclusive, even if it's using a smattering of open-source bits underneath.

No it's not. Literally both of the embedded OS' you mentioned (VxWorks/QNX) support Linux as first class hosts.

https://blackberry.qnx.com/en/software-solutions/embedded-so...

https://www.windriver.com/support/site_configuration/docs/wr...

What Windows exclusive tooling are you talking about?

And you are understimating the prevalence of Linux as the embedded OS for embedded devices.

Re:DirectX is coming to the Windows Subsystem for Linux by freeone3000 on Wednesday May 20, 2020 @10:18AM (#23247053)
ML is actually mostly done on linux. CUDA works absolutely great with nvidia binary drivers. Display performance is irrelevant.
Re:DirectX is coming to the Windows Subsystem for Linux by golergka on Wednesday May 20, 2020 @02:06PM (#23249897)
Because when I open a 300-page, media-heavy game design document in Google docs on my i7, 32gb computer it still lags when I scroll it. And the last time I tried to use OpenOffice (or whatever was the fork called, I mix them up), I couldn't shake the feeling that UX was created by developers who just wanted to check the boxes in the list of features, without any field testing whatsoever.
Re:DirectX is coming to the Windows Subsystem for Linux by soraminazuki on Wednesday May 20, 2020 @08:18AM (#23245976)
> not a choice if you develop Windows software

A minor nitpick, but cross platform development is usually a painful work regardless of which platform you use.

Re:DirectX is coming to the Windows Subsystem for Linux by 2OEH8eoCRo0 on Wednesday May 20, 2020 @12:07PM (#23248528)
I, for one, like to use my computer. I do not have time for my computer to be some battleground of political OSS zealotry.
Re:DirectX is coming to the Windows Subsystem for Linux by fock on Wednesday May 20, 2020 @10:11AM (#23246955)
seriously, the problem is apps wanting unfettered, opaque access to your system and data. If the default Steam install can r/w everywhere, anti-cheat needs kernel modules and a game can install a Trojan (like recently exploited with Source) - I say: no thanks to that, have a VM for gaming and all proprietary stuff and say a big fucking NO to the shshow the "games" ecosystem as a whole is...
Re:DirectX is coming to the Windows Subsystem for Linux by jillesvangurp on Wednesday May 20, 2020 @04:43AM (#23244692)
This feels more like a reverse takeover to me. MS actually has a legacy problem in the form of the windows ecosystem. Under Ballmer this was a problem that required defensive moves and rhetoric to not lose people to Linux and OS X and it didn't work. Under Nadella, a bait and switch was initiated where the problem (windows legacy) is slowly switched out for Linux. This is not the embrace and extend policy of last century. They don't care about software licenses; they care about SAAS revenue these days.

In the process, they are rapidly regaining developer trust by building productive relations with the same developers they were alienating under Ballmer.

It's smart. They own Github now. Most stuff that happens there is not windows centric. But increasingly the MS developer ecosystem is being untangled from windows in any case. That's necessary to future proof it.

While the windows kernel is nice and the driver ecosystem around it serves MS well, it's actually been a problem for them as well. They've failed in the phone market (repeatedly) because linux was a better fit for OEMs. Also they've had Google and Apple compete with them effectively with the ipad and chrome os in a market where MS was peddling crippled laptops. These are all examples where windows legacy was part of the problem for MS. They weren't able to compete there. Their crippled laptops were too expensive and uncrippling them would kill their high end market. So people bought ipads and chrome os laptops instead.

Increasingly desktop software that is not web based is getting more and more of a niche. Even office at this point runs well in a broswer and MS actively supports native applications on platforms of all their competitors (android, IOS, OSX, etc.). At this point that's not optional from a revenue point of view. A windows only office would be a problem at this stage. They support it and they actually do a decent job too. This too is something that happened very quickly under Nadella. A lot of the Azure revenue is in fact office revenue.

IMHO this move to support GPU virtualization and ultimately running linux desktop apps, gets them access to a lot of niche OSS applications for Linux, the entirety of the machine learning ecosystem, and the community of professionals using that. Not all of them will switch to a windows laptop of course. But some will and they tend to be the type that spends money on their tools.

Additionally, they are doing a clever play with APIs, github, cloud native stuff in Azure, development tooling etc. where they are not blocking using non MS things but merely make the choice to buy into their premium SAAS subscriptions more attractive. All of this stuff is usable without doing that but if you are using VS Code already, have your code on Github, and are doing some AI stuff in the cloud, etc; it's a small step to buy into a well integrated ecosystem provided by MS where you are using a windows laptop with their oss tools, while deploying to Azure, and maybe doing your office stuff using office 365. The value is no longer in selling the OS but up-selling SAAS and making sure the choice to buy into that is logical, easy, and natural no matter what you use.

Github codespaces is a great example of that. I bet it will be really easy to setup and come with some nice SAAS subscription. It's all OSS and you are welcome to run it on AWS or your own cloud. But I bet it will be easier to run in Azure. MS tools, MS cloud, MS as the easiest place to run linux developer tools (!!!), etc. They won't force anyone to switch. They don't care about individual developers but they do care about what their bosses sign up for in terms of SAAS services. That's where the money is.

Re:DirectX is coming to the Windows Subsystem for Linux by majewsky on Wednesday May 20, 2020 @03:21PM (#23250667)
> Under Nadella, a bait and switch was initiated where the problem (windows legacy) is slowly switched out for Linux.

If that is what's happening, then what's the endgame? Switching WSL around so that "Windows host + Linux guest" becomes "Linux host + Windows guest", i.e. Windows becomes a Linux distribution running native Windows apps in a VM with seamless integration? I'm somewhat intrigued by the possibility, but I don't see how it could work given the ubiquity of vendor-supplied device drivers targeting Windows kernel API/ABIs.

Re:DirectX is coming to the Windows Subsystem for Linux by jillesvangurp on Friday May 22, 2020 @04:27AM (#23269831)
A large part of their business is already running on or compatible with Linux. The endgame is that they get your money regardless of what OS you are on.

I'd expect the importance of the windows kernel for revenue growth to be increasingly less important over time. Of course they won't drop it outright; at least not right away and it's likely to stay relevant for e.g. pcs/laptops and gaming. As for games and vr content, a lot of game studios already use cross platform sdks and Linux support for games with and without emulation is pretty decent these days. Also, Android and IOS are big targets for games.

Most hardware vendors don't target windows exclusively. Some do of course but a lot of hardware works fine on other platforms even if vendors don't actively support that. Anything intended for data centers runs linux primarily. Most laptop vendors have a few linux friendly laptops at least to not lose out on the pro developer market that tends to actually buy their more expensive laptops. Likewise, most graphics card vendors want to support e.g. machine learning and that requires linux driver support.

But I get what your saying. My observation is that MS is very friendly lately with Ubuntu. I don't think Mark Shuttleworth is interesting in selling that outright but an MS distribution might be a logical next step given their increased dependency on Linux on the Desktop and in the cloud.

Re:DirectX is coming to the Windows Subsystem for Linux by wicket on Wednesday May 20, 2020 @09:46AM (#23246700)
It looks like they are already at the "Extinguish" phase for email. Try reading this:

https://lkml.org/lkml/2020/5/19/1527

:(

Re:DirectX is coming to the Windows Subsystem for Linux by mwcampbell on Wednesday May 20, 2020 @10:06AM (#23246898)
I think that's a bit hyperbolic. The Outlook team's choice to not do word wrapping in the plain-text version of an email is unfortunate, but defensible IMO, considering that most people use an email client that can display HTML email. And before the defenders of plain-text-only email chime in, HTML email has features that most people actually want. The world has moved on from the time when emails were displayed in fixed-width terminals. So Microsoft has as well.

Disclosure: I work at Microsoft (on the Windows accessibility team). At work, I use Outlook. Outside of work, I use Mozilla Thunderbird, but even there I send HTML emails sometimes.

Re:DirectX is coming to the Windows Subsystem for Linux by wicket on Wednesday May 20, 2020 @10:45AM (#23247438)
I don't think it's hyperbolic. If someone has sent you an email in plain text with wrapped lines, your mail client will know this and it would be reasonable to assume that perhaps the sender may be using a mail client not capable of rendering HTML emails nor autowrapping long lines. It would be a sensible choice to format the reply in the same format as that of the email received.

By stating "HTML email has features that most people actually want. The world has moved on...", you seem to be implying that the primary method of communication of Linux kernel developers is irrelevant and their use-case for email is not important. In fact, the more I think about this, this is a classic example of Embrace, Extend, Extinguish.

Re:DirectX is coming to the Windows Subsystem for Linux by mwcampbell on Wednesday May 20, 2020 @11:00AM (#23247631)
I think what we have here isn't a deliberate effort to extinguish a standard, but a clash between two different cultures. LKML follows traditional hacker norms, from the days of actual terminals and slow connections, whereas Outlook is built for the world of GUIs, WYSIWYG, and more or less high-speed connections. The latter is what the vast majority of people have chosen, so it's a sensible business decision for Microsoft to not pay much attention to the old ways. It's just unfortunate when those two worlds collide.
Re:DirectX is coming to the Windows Subsystem for Linux by wicket on Wednesday May 20, 2020 @11:16AM (#23247869)
I appreciate your sentiment, but I don't know, I'm not convinced. You can have all the GUIs and WYSIWYGs you want, but as I said, email replies should default to the same format as that of those received. Thunderbird (a modern email client) does this, if I recall correctly. It's very easy to avoid this mess.
Re:DirectX is coming to the Windows Subsystem for Linux by billars on Wednesday May 20, 2020 @08:11AM (#23245899)
I even doubt the patch will be accepted upstream. That patch adds nothing for other distros and is not convenient to maintain upstream.
Re:DirectX is coming to the Windows Subsystem for Linux by modmans2nd on Wednesday May 20, 2020 @05:41PM (#23252175)
No. They are not that company anymore and it’s been clear they have not been that way for over a decade.

This is a step towards moving their API over to Linux so they can dump Windows as an OS and provide it as a docker container service service for enterprise.

Re:DirectX is coming to the Windows Subsystem for Linux by app4soft on Wednesday May 20, 2020 @09:39AM (#23246645)
> It appears that Microsoft has now initiated the "Extend" phase of their classic Embrace, Extend, Extinguish playbook.

Or, much worse, M$ now trying to kill Linux as desktop OS, same way as Elop killed Symbian as smartphone OS.

Re:DirectX is coming to the Windows Subsystem for Linux by gigatexal on Wednesday May 20, 2020 @08:09AM (#23245878)
How exactly will they extinguish Linux and open source?
Re:DirectX is coming to the Windows Subsystem for Linux by iforgotpassword on Wednesday May 20, 2020 @04:20AM (#23244554)
While this was my initial thought as well, on a second thought that doesn't make too much sense. Well depending on whether you're wearing your tinfoil hat properly, you could say this is for testing the waters, but who the fsck would target their game at this? Write against naive Linux but use DirectX for the graphics? Just why? Sounds like the most stupid thing ever.

The CUDA support thing from other comments below seems the only sane use case so far, and in that case I don't really see the EEE either, but just good old "make shit work".

Re:DirectX is coming to the Windows Subsystem for Linux by skohan on Wednesday May 20, 2020 @04:27AM (#23244602)
EEE is incremental by nature. This represents a lever they could use to create an ecosystem of Linux software which only works on WSL.

> but who the fsck would target their game at this?

It doesn't have to be games. Maybe MS releases an ML visualization library for Linux which requires D3D. It's not so far fetched.

Given the cumulative pain developers have had to deal with supporting IE6 over the years, I think it's warranted to be wary of this kind of thing.

Re:DirectX is coming to the Windows Subsystem for Linux by iforgotpassword on Friday May 22, 2020 @03:38AM (#23269577)
Eh, still not convinced. Porting that to OpenGL is half a day of work. Like I said, you might say they're testing the waters, but I'm just not paranoid enough to scream EEE yet.