After starting with Ubuntu, Microsoft has added a number of Linux distributions to its Windows Subsystem for Linux (WSL) Linux runtime environment. A Windows machine can simultaneously offer an Ubuntu, SUSE, Debian, and Kali “personality,” providing users with a choice of the different distributions’ preferences and package management.
But if your distribution isn’t yet available or if you want a Linux installation that’s customized just the way you like it, there’s now an answer: Microsoft has an open source tool for building your own Linux package. The tool is aimed at two groups: distribution owners (so they can produce a bundle to ship through the Microsoft Store) and developers (so they can create custom distributions and sideload them onto their development systems).
Neat.
It’s still not really Linux though, is it? It’s the GNU userland and various tools, the Linux kernel is not involved. It would be more fitting to call it GNU/NT or GNU/Windows (depending on how pedantic you want to get).
That’s not meant to take away from how useful a tool it could be; I suppose for some it’s easier and faster than dual-booting between Windows and a *nix of choice for dev work.
I wound say of as much Linux as Linux in VMware/Virtualbox.
Not really. Linux under VMWare is running a linux kernel on top of an emulation layer.
WSL is closer to WINE– syscalls are translated to Windows.
Not true. Under VMWare or VirtualBox you have an entire Linux distribution running, kernel and all. You typically install from an unmodified distribution ISO.
Incompatibilities notwithstanding, I never hear people making this argument about Wine… ‘but it’s not really Windows is it?’ As long as the shit they’re trying to run on top of it works, does it really matter?
Especially since it is meant to allow the use of user land tool chains on windows to make it easier for developers who might need to use some Linux based workflows but prefer some windows tools.
But Wine actually emulates Windows, while WSL does not even emulate Linux.
Technically, the WSL emulates the Linux (kernel) API/ABI, so I would say it is partially similar to Wine.
Edited 2018-03-29 07:23 UTC
Wine is not an emulator. It provides a mechanism for executing windows API’s under linux.
WSL provides a mechanism for executing Linux syscalls under Windows.
Not that different.
I did not say Wine was an emulator. It does not have to be an emulator in order to emulate parts of Windows.
That’s because you never hear people saying Wine is Windows in the first place.
Hi,
I’d be willing to bet that if someone said Wine is “Windows NT kernel by itself running on top of a Linux based OS” they’d be corrected very quickly.
Both Wine and WSL implement the user-space environment from a different OS, without using emulation and without using the other operating system’s kernel.
The problem is that neither of these user-space environments have a good name (e.g. “win32 API” is just part of the Windows user-space environment, and POSIX is just part of the Ubuntu/Redhat/Fedora/…. user-space environment); and because there’s no convenient good names everyone uses “technically incorrect but convenient” bad names.
“Windows” is only a slightly bad name for the Windows user-space environment (because it’s the name of a series of operating systems that all provide a similar user-space environment). “Linux” is worse in comparison because it’s the name of a kernel (a relatively insignificant ~5 MiB piece buried within several gigabytes of operating system).
– Brendan
I run Windows under VMWare, because I don’t trust Windows with unfettered access to my hard drive and all of the files on it. So to me, yes, it matters.
Funny that you trusted macOS with its, until last year, exclusively an ancient cruft of a filesystem…
Beyond ideology, does it really matter?
I mean, as of right now, on production versions it does because they’re missing some really core stuff like UNIX domain sockets (which means there’s a whole slew of things you can’t use under WSL), but once they’ve got it on par with the regular Linux ABI, it really doesn’t matter, just like it really doesn’t matter whether you’re running a given DOS game under MS-DOS directly, or FreeDOS, or dosemu, or Dosbox, provided the game actually runs.
They are coming …
http://blogs.msdn.microsoft.com/commandline/tag/af_unix/
There’s some serious IO performance issues as well under WSL.
Yes, but that’s a realistic expectation given that POSIX I/O semantics are different from regular Windows I/O semantics and they’re having to translate syscalls (there’s probably at least 4 context switches minimum for syscalls under WSL, compared to at most 2 minimum for native API’s).
IOW, that’s like saying that there’s serious I/O performance issues inside a virtual machine or with a networked storage device, there’s a lot more indirection involved that you have to account for, and indirection is not free.
No, the IO handicap under WSL is far, far worse than it is under VMWare or VirtualBox (which frankly, is pretty small these days).
Phoronix has some good benchmarks on various Linux distros under WSL.
Virtual machines might take a 3-5% hit in performance– this is closer to 50% (or worse).
I never said it wasn’t worse than a VM. In fact. just looking at what’s involved, it logically should be worse than a VM (given that VM’s largely bypass most of the host I/O stack if they’re operating sensibly).
My point was that there’s going to be overhead, period, because you’re adding another layer of indirection, and there’s some point past which performance won’t be able to be improved.
It would be more fitting to call it GNU/NT or GNU/Windows
Um, Nice Try Stallman
https://en.wikipedia.org/wiki/GNU/Linux_naming_controversy
Edited 2018-03-30 20:27 UTC
From your link (emphasis mine):
In other words, “let’s call it Linux if it is an OS based on the Linux kernel and other software”, and I’m cool with that. With WSL though, the Linux kernel doesn’t enter the picture, so calling it Linux is a stretch at best.
Oh, and nice attempt at an ad hominem attack, but instead I’ll take being compared to Stallman as a compliment. 🙂
There was a time when FreeBSD had more of the GNU toolchain in it’s operating system than Linux did. For some reason, Stallman wasn’t in favor of calling it GNU/FreeBSD though.
And in other news, GNU/Hurd… still not 1.0.
Weren’t you a Windows Phone ~fan? What kind of “I’ll take being compared to Stallman as a compliment” are you?
So I’m not allowed to like something and also admire the spirit and work of a person who is against it? What’s with the gatekeeping?
I meant it in a teasing / almost ~loving way…
It seems to me like if you would have such a dirty cup and you pour there a clean water with hope it stays clean.
Yeah, we can’t have Windows polluting the Linux master race. What an abomination! The fuhrer would be rolling in his grave!
Yes but Windows used to be like pouring dirty water in a sirty cup and now it is like pooring clean water in a dirty cup so it is still better.
But of course while Windows users are drinking their once clean water from their dirty cups I will be here in GNU/Linux land drinking the best mineral water from the cleanest spring out of my golden cup that has diamonds in it.
Diamonds are technically just big chunks of dirt
Edited 2018-03-29 08:52 UTC
That makes my analogy so good.
Just like dirt and diamonds are the same materials but differ in structure, a computer running Windows and one running GNU/Linux contain the same materials but differ in structure. Using your apparent definition of “technically”, a computer running Windows is technically the same as one running GNU/Linux (Since they are made of the same materials).
Installing Windows is like making your carbon into dirt, while installing GNU/Linux is like making it into diamonds.
One is a nourishing environment for growth, the other is hard, inflexible, and difficult to work with.
I’m not sure about your analogy here.
My analogy is good because x KG diamonds can buy you a lot of stuff, including Y*X KG of dirt where Y is a positive real significantly larger than 1. So even if you value dirt more you will end up with more of it if you take the diamonds initially.
So my analogy is saved again.
Edited 2018-03-30 08:50 UTC
Yes, diamonds have large imaginary value… (and funny how, when it suits you, you’re suddenly OK with their value beeing based mostly on marketing; seems your principles ( http://www.osnews.com/permalink?654605 ) are just for show)
You’re sad; seem quite insecure about your software choices; realise how offputting you are, if there would be enough people like you, it could make me prefer to avoid GNU/Linux just to not be associated with you; don’t you know that mineral water / gold / diamonds are a ~scam?…
Edited 2018-04-03 05:35 UTC
Heh, for a long time the idea of running a Linux VM under Windows makes me feel dirty / like a slut…
Having a Gentoo ‘personality’ would be neater
I have Arch on mine.
While I do think this would be nice, it’s never going to happen officially for the same reason that it’s such a pain to run Gentoo on a lot of VPS providers. The system is out of date within a week of being published, and it’s a pain to update.
Personally, I’m probably going to throw something together with Buildroot, as 95% of what I care about is stuff like grep, diff, and patch, so I don’t need to waste the hundreds of MB of extra space that the official options take up.
It’s the right direction but still they have work to be done ..
Still puzzles me why their own Code tool does not support git under WSL.
Also snaps comes installed by default but it doesn’t work yet (still long way to go until they sort out all the remaining dependencies).
At least they did get tmux running ok a couple of months back and integrated it nicely with Code.
Successful platforms do not typically need to provide an extra kernel personality to emulate their competition. This is the “OS/2 can run Windows binaries” moment for Windows Server.
I’m waiting for your ~”desktop Linux is a failure” post under future Wine news or some such… Or ~”Sailfish is a failure”.