Ubuntu's Unity desktop environment can run in Windows (wordpress.com)
An anonymous Slashdot reader writes:
"This is one of the coolest tickets I've seen on GitHub," writes Ubuntu developer Adolfo Jayme Barrientos, adding "this kind of surreal compatibility between platforms is now enabled...the fact that you can execute and use Linux window managers there, without virtual machines, is simply mind-blowing."
"The Windows 10 Anniversary Update coming in August includes an unusual feature aimed at developers: an Ubuntu sub-system that lets you run Linux software using a command-line interface," explains Liliputing.com "Preview versions have been available since April, and while Microsoft and Canonical worked together to bring support for the Bash terminal to Windows 10, it didn't take long for some users to figure out that they could get some desktop Linux apps to run in Windows. Now it looks like you can even load Ubuntu's Unity desktop environment, making windows 10 look like Ubuntu.
"The Windows 10 Anniversary Update coming in August includes an unusual feature aimed at developers: an Ubuntu sub-system that lets you run Linux software using a command-line interface," explains Liliputing.com "Preview versions have been available since April, and while Microsoft and Canonical worked together to bring support for the Bash terminal to Windows 10, it didn't take long for some users to figure out that they could get some desktop Linux apps to run in Windows. Now it looks like you can even load Ubuntu's Unity desktop environment, making windows 10 look like Ubuntu.
I used/supported Windows for close to 20 years before I retired in 2010. At that time I decided I was done with using MS products, and moved all of my home machines over to single-boot Ubuntu. After seeing what a "turd_in_the_punchbowl" Windows 10 is, privacy-wise, I couldn't be happier with my decision.. I suppose for those who are *forced* to use Windows, either by their job or perhaps they just *think* they *have* to use Windows, this might be useful, but not for those of us who don't care to be MS's "product" and use Linux natively...
THANK YOU, Edward Snowden!! Americans owe you a debt of gratitude (whether they know it or not..)
After all those decades of various Linux distributions unsuccessfully trying to look like Windows, now you can make Windows actually look like one such distributions - Ubuntu.
Oh, the irony. It seems that the Year of Linux on the Desktop has finally arrived, but not in a way anyone could have anticipated :)
None of the linked article explain how this is done. Can anyone chime in and explain? Are the binaries in ELF or in PE? Did they finally complete a POSIX-compatible libc or did they implement the Linux kernel syscall API? Is there some kind of host process that intercepts the syscalls and implements them in user space?
If they can get a build environment going, then NetBSD's pkgsrc collection ported over, we are in good shape.
GREAT!
Now you can run Unity, the sluggish alternative to Gnome, on top of Microsoft's latest offering - famous for continuous 100% disk I/O utilization for system services!
"Flyin' in just a sweet place,
Never been known to fail..."
If small developers with limited time budgets can just target their game at Linux, and have it automagically run on Windows, this might be quite the attractive option. No porting, just write for one "lowest common denominator" and let the OSes themselves sort it out. I would assume things intended to be cross-platform, like Vulkan, would also fit into this "it just works, everywhere" paradigm.
How is the Riemann zeta function like Trump rallies? Both have an endless number of trivial zeros.
Embrace, Extend, Extinguish...
So you can run Unity in Windows.
"Now it looks like you can even load Ubuntu's Unity desktop environment, making windows 10 look like Ubuntu."
First off, isn't that kind of like buying a Ferrari rag top and driving it around with reins and a buggy whip?
Second off, why on Earth would anyone want to inflict Unity on Windows. I don't much care for Windows, but have a heart!
Don't take life too seriously; it isn't permanent.
i just put Debian Jessie on an older laptop to fart around with some LinuxCNC after several years of using *buntu near exclusively. I like it, there's something reassuring in having a definite root user account again. Xfce is crisp on this old celeron with 500MB memory...
I'm old-school and was getting into computers before Microsoft was much of anything. They have epitomized all that is wrong with corporate power from the beginning. I don't trust them. I don't want anything to do with them. I don't want to be tied to anything that's tied to them at all, if at all possible.
"The love of money is the root of all evil." When you see evil in something, it is wise to separate yourself from it...
When the king heard the words of the Book of the Law he tore his robes.2Kings22:11
It's really not particularly different from the old, OpneNT/Interix/SUA subsystem that MS supported for more than 10 years on NT and XP/Win7.
They finally admitted to having been handed their asses, and submitted meekly to the idea that the world of Linux kernel development had done a better POSIX implementation than a handful of paid engineers who used to work for Softway.
"Flyin' in just a sweet place,
Never been known to fail..."
It is not Linux underneath. It's Windows. It is only Linux in userspace. This allows Linux developer tooling - which was the actual point of Subsystem for Linux.
Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
Now, the POSIX system calls are not run completely in user space.
The SFU/SUA crap did this for Windows since NT 4.
You will NEED the speed - because Win 10 abuses use of hardware to the point of teary-eyed frustration.
"Flyin' in just a sweet place,
Never been known to fail..."
Not to completely dis Softway, the OpenNT guys. Walli and team were a big part of getting POSIX and ISO reconciled in the 90's.
Here's a recent recounting, from the man who made it happen:
Now, six years later, what if you could properly port all of your business-critical UNIX applications to Windows NT and have them behave with absolute fidelity? And by port, I mean type “make” at the command line and fiddle a bit in an afternoon, not rewrite the application over months of time to Win32. What if you no longer had to buy and maintain outrageously priced hardware from the UNIX system vendors, but could buy PC-class hardware? Microsoft was on an explosive growth curve and Windows NT was a proper operating system. Linux was still very much in its infancy and a long way from being proven. The UNIX Systems Labs v. Berkeley Software Design lawsuit had put a chill over the BSD community.
https://medium.com/@stephenrwalli/running-linux-apps-on-windows-and-other-stupid-human-tricks-part-i-acbf5a474532#.o7vb5eph9
"Flyin' in just a sweet place,
Never been known to fail..."
Boy, that's got to be something a whole two masochists would want to do. Take the worst part of Linux and run it in Windows! Wow! I think I'd rather put toothpicks under my fingernails.
I don't respond to AC's.
You could have already done this in a VM in Windows. The idea of actually running Linux applications in Windows without a VM seems nice, but actually, it integrates so poorly with normal Windows apps that you might as well be running a VM. Trying to access the same files from Windows and Ubuntu within the root file system leads to problems. You can only do that within the drives, such as /mnt/c. You cannot run Windows applications from the Linux command line or Linux applications from the Windows command line. If you want to run a desktop environment you've got two separate desktops, similar to a VM.
So now I can overlay one dreadful GUI with another equally dreadful GUI.
Why would I want to do this?
If game developers were to move away from Direct X, and on to something cross-platform, then the bar is much lower to supporting Linux and friends.
Speaking as a game developer... I'd suggest its not any technical hurdles that keep games away from Linux. Most game engines, whether commercial or custum, are written in portable C++, and use abstraction layers to hide any platform-specific code. In my own game engine, I'd estimate that platform-specific code only amounts to less than 5% of the total code.
Rather, I think it's simply the market-share of Linux... or rather, the lack thereof. Many games have Mac ports, meaning they obviously have an OpenGL renderer and POSIX compliant backend, but still no Linux support. It's pretty hard to get motivated to support an entirely new platform that only has 1% market-share, and it doesn't help matters when that 1% is further fragmented into a bunch of different distros, further complicating support and compatibility testing.
It's the same problem Windows phones have. By all accounts, Windows phones are pretty nice, but no one makes apps for them because of the abysmal market-share, which in turn drives more users away. It's sort of a catch-22 for platforms with a small market-share, making it extremely difficult to break in.
Irony: Agile development has too much intertia to be abandoned now.
If the Game Engines are already abstracting this away, why /not/ provide builds for smaller OS's. I know there are extensions to Visual Studio to build binaries for Linux.
I think what a lot of game developers are missing is that gaming is the /only/ reason many users are keeping Windows. I'm 100% positive I know at least a dozen people personally (and I'm not a very social person) that would ditch Windows completely if they could game easier on Linux. Is that extra 1% effort not worth it to you to provide a choice to your users?
I understand that =<1% is minuscule in many developers minds, but if you remember there are roughly 5.6 Billion people in the developed world with access to a computer and the internet. That 1% equates to 56 Million people. Then you must keep in mind those using Linux are (typically) more technically minded and willing to exert more effort to play something natively in their Distro. There are various fans of specific software that literally make it their duty to build wrappers/packages for specific distributions (Package Maintainers) so things work easier for the distribution as a whole. If you provide an accurate dependency list (which would usually be included in the engine you're using), then the distro package maintainers can handle the rest for you.
If your game is well made, and becomes popular, linux users tend to promote companies that work with the open source community. That's free promotion for simply making an effort to appeal to approx 56,000,000 more users.
That's worth the effort in my books... But as you can probably tell, I'm a Linux user.
Ok - I fail to see how this is news. Cygwin has provided Gnu tools in windows forever. Cygwin-X has provided X11 in Windows forever.
SFL and Cygwin have drastically different performance profiles.
SFL is syscall translation in kernel space running on pico processes; Cygwin is syscall emulation in userspace running Windows processes and Windows threads.
Windows is built around an object oriented philosophy (handles) where, for instance, access rights are established upon handle creation. Handles covers many more types of resources in Windows compared to e.g. file descriptors or inodes in Linux. But the key difference is in lifetime. Under Linux access rights are checked on each access. Under Windows you request access rights on handle creation, a jump table is established with an entry for each operation - some of them pointing to "access denied" - and hence Windows does *not need* to check rights on each access. Now, if you want to emulate Linux inodes/fds, you would need to create/dispose the handle on each access, or design some system with cache/sweep. Either way you are going to sacrifice some performance. And this is just one example.
SFL uses pico processes which do not own Windows handles the way Windows processes do. It is Linux like processes running on top of pico processes. I believe the real work for MS has been in the areas where those processes touch the same interfaces (such as file system) which must allow for the Linux way of accessing resources.
Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*