7 ms·
This entire concept of having directx in WSL sounds like Embrace Extend Extinghish, all over the place. This means we will have some linux programs only running
by ognarb 4y ago
This entire concept of having directx in WSL sounds like Embrace Extend Extinghish, all over the place. This means we will have some linux programs only running in WSL. This is fucked.
> libd3d12.so and libdxcore.so are closed source, pre-compiled user mode binaries that ship as part of Windows. These binaries are compatible with glibc based distros and are automatically mounted under /usr/lib/wsl/lib and made visible to the loader.
Mesa is a freedesktop project and this is not the freedesktop I was imaginating.
- Laaas 4y agoThis will never happen. Linux is way too big for this. The percentage of developers using Linux is so large that making your tool only work under WSL makes very little sense, especially when the native approach is usually easier/simpler.
- jameshilliard 4y agoMaking non-WSL Linux unusable for at least some applications is clearly the goal here. Microsoft isn't even hiding that at all as they even list it as a specific goal of the directx related changes being pushed to mesa: https://devblogs.microsoft.com/directx/in-the-works-opencl-and-opengl-mapping-layers-to-directx/ https://devblogs.microsoft.com/directx/in-the-works-opencl-a... > Make it easier for developers to port their apps to D3D12. For developers looking to move from older OpenCL and OpenGL API versions to D3D12
- jameshilliard 4y agoYeah, I pointed this out on the mailing list when when microsoft was trying to upstream their dxgkrnl driver: https://lore.kernel.org/all/CADvTj4q_-A9p2UkH975SPPYmSzVAv38VJxLDBQjEnHoCSERzOw@mail.gmail.com/ https://lore.kernel.org/all/CADvTj4q_-A9p2UkH975SPPYmSzVAv38... As have others: https://lore.kernel.org/all/Yh8wEj5wKMRtxaBB@infradead.org/ https://lore.kernel.org/all/Yh8wEj5wKMRtxaBB@infradead.org/ Looks like the up-streaming has been abandoned as Microsoft has not made a real effort to fix the issues pointed out: https://lore.kernel.org/all/YinPR66ekfKWHR0R@kroah.com/ https://lore.kernel.org/all/YinPR66ekfKWHR0R@kroah.com/
- ognarb 4y agoIt was their second attempt, the first one was in 2020 https://lkml.org/lkml/2020/5/19/742 https://lkml.org/lkml/2020/5/19/742 and was also turned away.
- jameshilliard 4y agoThey abandoned it after submitting a v3 series looks like: https://lore.kernel.org/all/cover.1646161341.git.iourit@linux.microsoft.com/ https://lore.kernel.org/all/cover.1646161341.git.iourit@linu...
- rvz 4y ago> This entire concept of having directx in WSL sounds like Embrace Extend Extinghish, all over the place. That's because it is. The Linux Desktop has been 'embraced' and 'extended' on Windows via WSL + NVIDIA GPU drivers all supported on it. Making Windows 11 the best Linux desktop distro and there is no need to 'Partition and Install Linux' when it is all running on Windows itself. 'Extinguish' in this case is all the other Linux Desktop distros that will wither away into obscurity since little to no-one would directly install a distro or go through the steps of dual booting other than the techies. Microsoft's new strategy of targeting and selling to developers seems to be a great bet that is clearly working.
- flatiron 4y agoI run windows as my dev laptop since my job only supports Linux and Mac. It’s a way better platform than Mac now.
- DiabloD3 4y agoThats a weird way of putting it. Windows is effectively dead outside of desktops. Nobody that isn't mired in 90s/00s processes (ex: the banking and energy sectors are minor players in the enterprise universe, but are still stuck in process hell in many cases); Microsoft's biggest customers on Azure are all Linux; using Azure for Window is almost unheard of (their biggest client on Windows is the Office 365 exchange cluster itself, a decidedly legacy application that would be nearly impossible to port or replace). Microsoft is admitting that Linux won, and the only way to exist is to have Windows be able to transparently be Linux too, by running a captive Linux VM. Linux embraced and extinguished Windows, and did it so subtly that most people didn't even see it until it was too late. Microsoft's creation of WSL2 is their admission of this truth. Side note: Half of the software developers and systems engineers that work at Microsoft are not qualified to work on Windows, Windows software, or even really know how to use Windows beyond the obvious metaphors that all modern desktops share. They use Linux desktops, and work on Linux software, on Linux systems. At Microsoft, home of Windows. Linux won.
- jameshilliard 4y agoThis is Microsoft's new EEE strategy, except that the new "Extinguish" target isn't all Linux systems but rather just any non-WSL based Linux systems. Microsoft offers WSL based Linux on Azure and they want developers to write software that's locked into WSL based Linux. Microsoft isn't even hiding this at all as they even list it as a specific goal of the directx related changes being pushed to mesa: https://devblogs.microsoft.com/directx/in-the-works-opencl-and-opengl-mapping-layers-to-directx/ https://devblogs.microsoft.com/directx/in-the-works-opencl-a... > Make it easier for developers to port their apps to D3D12. For developers looking to move from older OpenCL and OpenGL API versions to D3D12
- glitchc 4y agoDoesn't this also mean that DirectX drivers can now be ported to standalone Linux distros? Or am I missing something here?
- jameshilliard 4y agoNope, and it's pretty clear this is being designed in a way to ultimately prevent users from running applications on non-WSL Linux systems, Microsoft isn't even hiding that at all as they even list it as a specific goal of the directx related changes being pushed to mesa: https://devblogs.microsoft.com/directx/in-the-works-opencl-and-opengl-mapping-layers-to-directx/ https://devblogs.microsoft.com/directx/in-the-works-opencl-a... > Make it easier for developers to port their apps to D3D12. For developers looking to move from older OpenCL and OpenGL API versions to D3D12,
- yazzku 4y agoIt is the exact opposite. Microsoft has always tried to kill gaming on non-Microsoft platforms. Labelling the blog "DirectX Loves Linux" is the ultimate brainwash attempt on those who are too ignorant of computer history. Fuck Microsoft with a pitchfork.
- mastax 4y agoWine exists, so we already have an open source DirectX implementation for Linux. It's not currently exactly compatible with libd3d12.so, because wine provides a Windows PE .dll, not a Unix ELF .so. Though I think Winelib may already allow you to access the Windows APIs via en ELF toolchain. > Mesa is a freedesktop project and this is not the freedesktop I was imaginating. Taking OpenGL and converting to a closed source device driver interface doesn't seem that different, morally, from converting to a closed source graphics driver device API.
- charcircuit 4y agoDXVK supports Direct3D 9/10/11 natively on Linux, without wine.
- aseipp 4y agoIt's closer to the way vendors like Qualcomm shipped GPU drivers for ARM Linux until relatively recently, where they would ship a patched kernel with a DRM driver, and then a closed source userspace .so blob that you had to rely on, on top of that, which implemented the shader compiler, pipeline, etc. This is basically that. Except it's a virtual machine, so it's also kind of like how VMware Workstation does graphics acceleration. The main difference here from the ARM world is that Microsoft seems to have invested dev work in upstream Mesa so that Mesa actually implements the nitty gritty parts of the spec on the Linux side, and then translates it all to underlying D3D12 host calls for you. This is conceptually similar to VirGL, which is basically the same thing but for OpenGL inside QEMU. If anything Microsoft seems to have taken a less arduous approach to this by going to upstream first to Mesa. The other thing here is that Microsoft is using a patched kernel that hasn't been merged upstream; but then again Asahi Linux is in the same boat, and they work upstream in Mesa now, too. And Mesa isn't just limited to Linux, of course, and can be used in userspace in theory a lot of places. If you have some weird desire to use DirectX APIs on Linux, you can already do that in many ways with subprojects of Wine and Proton such as d3dvk. It's a well known API with a well known ABI so it's not like this is impossible. You can already run many Windows programs through Wine, so unless this hypothetical Windows/Linux monstrosity thing is going wildly out of its way to be WSL only through active hostility, it's not like there's some magical API that can't be emulated in most of these cases.
- ignoramous 4y ago> If anything Microsoft seems to have taken a less arduous approach to this by going to upstream first to Mesa... If you have some weird desire to use DirectX APIs on Linux, you can already do that in many ways with subprojects of Wine and Proton such as d3dvk. Interesting where Google's efforts to commodotize d3d12 with SwiftShader (as opposed to Mesa) and Angle fits in to this.
- naikrovek 4y agowhat do you mean? raw GPU compute from the host GPU has been available in WSL for a while now, and this is just a layer on top which allows access to the encoding and decoding hardware on the card. They had to pick an API to expose, so they picked theirs. I guess I don't see the big deal, here. Nothing MS does for WSL will change anything that exists outside of WSL. There is no shortage of people who hate Microsoft on this site, or on the Internet in general, and I would be very surprised if any application of substance chose to both run on Linux and be Microsoft-only (WSL only). That seems so unlikely that it's almost not feasible for a logical human person to come to a decision like that. And if that happens, don't use that software, and protest their decision, just as you're doing here with WSL. Linux is far bigger than Microsoft, no matter what anyone thinks. And the percentage of Linux users and developers who hate Microsoft is very high. I just do not see the situation you're describing where there are Linux apps which only work in WSL. This hasn't even extended what Linux can do, it's just another way to do it.
- yazzku 4y agoAnd they even have the balls to label the blog "DirectX Loves Linux", heart symbol included. What a god-forsaken aberration. The people writing for this blog must be incredibly oblivious or incredibly drowned in kool-aid. Like they know nothing of computing history and how Microsoft has always tried to make Windows the gaming platform at the expense of other graphics APIs and ecosystems. PS: Fuck Microsoft. Fuck them with a spiked club.
- Zetobal 4y ago...someone needs to read a bit about graphic api history.
- alar44 4y ago[dead]
- deleted 4y ago[deleted]
- thomastjeffery 4y agoExcept in order to succeed, they have to do the embrace part. The primary factors for me using Linux right now, in order of importance: 1. Tiling Window Manager 2. Functional Declarative System-wide package manager (NixOS) 3. Cleanliness/simplicity (This is vague, but I have exactly the software I asked for and nothing else). 4. Configurability (I can adjust quirky in-the-middle software like my file manager, taskbar/clock, etc. No immutable one-size-fits-all UI/UX) 5. Repairability (Given time and patience, I can fix Linux problems. Fixing Windows is black magic, and I'm very often reminded, simultaneously, how much of an expert and how much of a novice I am on the CR/LF hand path.) 6. Auditability (Open source is more trustworthy, since source code can be freely audited by anyone at any time. Active free software projects accept security patches quickly and cleanly.) --- Windows' design is diametrically opposed to all of these, and I can scarcely imagine a version that would allow a true tiling window manager (as opposed to the contemporary explorer.exe hacks). Give me these features, and I will be truly impressed. Do all that, then do the extinguish step, and you will really blow my mind.
- philistine 4y agoWell of course you're inoculated from the embrace but a ton of people aren't. If enough of the Linux people around you are embraced by WSL, there might come unforeseen consequences. You should be scared.
- thomastjeffery 4y agoMost of the casual windows users I've talked to have complained to me, unprovoked, about how bad windows is for them. Microsoft has a long way to go, even for the average user, and they are still moving clearly in the opposite direction. The casual Linux users I know feel the same, but more stubbornly. Windows getting better is, for me, a fantasy, not a fear. At least then I would have fewer people begging me for the kinds of tech support needs that should have been factored out in 2008 (or much sooner), that Windows has instead kept alive into 2023.
- intelVISA 4y agoMS can't grok functional software (in every sense of the word) so something like Nix is off the table.
- speed_spread 4y agoThere is no reason to keep Windows installed on a new computer. Wipe everything, install Linux, any distro. WSL will always be worse than a native setup. The only thing I see that Microsoft could do is use their weight with AMD and NVidia to somehow sabotage Linux hardware driver support for GPUs, artificially making WSL the superior solution, but that's a long shot; I'm not sure what hardware mfg would gain from that.
- h4x0rr 4y ago" There is no reason to keep Windows installed on a new computer. " Gaming would be a reason
- christoph-heiss 4y agoNot really anymore. Wine, Proton, VK3D, .. have improved so much that the native gaming experience on Linux is more than viable. The Steam Deck might be the best example of that. I'm very happy that the last few years I didn't have to keep a horrid Windows install around, just to play a game every now and then.
- h4x0rr 4y agoI'm pretty excited for linux gaming, and it really does seem to work well for singleplayer games. But online games (with anticheat, Valorant for example) often times don't run at all.
- ghishadow 4y agothey are already working on console and mobile support, so Valorant can come to Linux, if they port for Steam Deck(less possibility though)
- intelVISA 4y ago> There is no reason to keep Windows installed on a new computer. You could keep it around as a reminder of how bad things could've been as you ponder your Candy Crush start menu.
- elif 4y agoHow dare they extend the functionality of an open source project beyond it's existing capabilities /s
- vouwfietsman 4y agoI'm not sure I follow what level the EEE plays on. I think if anything, Windows has a serious issue of long-term viability because of the dominance of the browser in modern desktop applications. The browser has succeeded in opening the walled gardens of OS makers, and there is really no reason for most apps to be running on a specific OS, or even for most apps to have an installation. (I know, HN is probably averse to this, but for most users this is really the truth). Your OS is basically a gateway into the internet, the days of win32 are gone, and now Windows leans into that bundling Webview2 into win11, so that your electron-like apps won't have to be so bloated, and so slow. I think this move is in the same direction: Windows admitting defeat in the developer space and trying to become the gateway to linux to avoid being obsolete. WSL is kind of the inverse of EEE from the perspective of Windows. So what about directX specifically? Maybe I'm missing something but I doubt there will be a future where Linux loses much from this: If you start building an app now, would you build it on Linux but then link to DX12 WITHOUT also having vulkan support for native linux? Not really, you would just build it on windows completely. If you have a Linux app now, and you include DX12 support, would you transition to windows? Not really, your entire app depends on the linux standard libs, and you can now have windows support through wsl anyway. If you're doing some scientific computing or ML would you now do it on windows against DX12 from Linux? Ultimately you won't deploy on WSL in the cloud, I hope. Why make your dev/prod so different? I think what Windows could be doing here is moving to become the best linux distro in 20 years. I think ultimately thats a good thing. Imagine Windows is just Linux with a proprietary desktop shell around it, and everyone uses it for their daily use. That just means that Linux adoption is much greater, and porting apps to linux from windows is already 90% done because they share a backend. I think Microsoft may realise the best way to make money is to not have to maintain an entire OS in the first place. Basically that would mean OSes become like the car market: no matter what you buy, it looks a bit different, but you get kind of the same thing under the hood. And that thing would be linux. It may mean that Desktop Linux will never make it, but I'm not so sure. Those 2.5% marketshare are not people who are easily sold to Windows, and will see it as an inferior Linux anyway.