More Unix Tools Coming To Windows 10 (neowin.net)
Long-time Slashdot reader Billly Gates brings news about beta 4 of Redstone (the Spring version of Windows 10's Creators Update for 2018):
- Beta 4 of Redstone aka Build 17063 includes BSD utilities bsdtar and curl from the command prompt and Unix sockets (AF_Unix). These are also rumored to be part of a future version of Windows Server.
- WSL will now run background tasks and will continue to run them even after the command prompt window is closed...
- A previous story mentioned a discovered OpenSSH for Windows... OpenSSH and VPN can now be accessed via PowerShell in remote connections via the PSRemote commandlet. With the extra background support added you can for example keep a Secure Shell session open on a server/client and reconnect later.
- Also a tool is available called WSLPath to convert Linux to Windows path options
There will also be some graphical Windows Shell improvements with Microsoft's design language, and "Timeline," a new way to resume past activities...
- WSL will now run background tasks and will continue to run them even after the command prompt window is closed...
- A previous story mentioned a discovered OpenSSH for Windows... OpenSSH and VPN can now be accessed via PowerShell in remote connections via the PSRemote commandlet. With the extra background support added you can for example keep a Secure Shell session open on a server/client and reconnect later.
- Also a tool is available called WSLPath to convert Linux to Windows path options
There will also be some graphical Windows Shell improvements with Microsoft's design language, and "Timeline," a new way to resume past activities...
Qubes Hardware Compatibility List (HCL)
https://www.qubes-os.org/hcl/
Everyone hates me because I'm paranoid.
https://www.cygwin.com/
Give them a few more decades and they might finally support remote displays.
Hah. The new generation of Linux programmers do their utmost to destroy that in Linux, with "hot corners", no lbx or X fontserver. In fact, I think you'll have a hard time with many of the "modern" Linux flavors of running anything except a video streaming application like a VNC client. At which point you might as well use Windows.
They even took way the little [v] and [^] buttons in the scroll bars. When a web browser was jammed up with downloading content, I could still scroll up and down with those little buttons. Now the scrollbars just look broken.
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
Nobody is being forced to install the Linux subsystem for Windows. Only people who want it. For me it makes Windows a lot more tolerable, and it means I don't have to give up my familiar tools when I boot into that environment.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
Will 2018 be the year of Windows on the command line?
Nitpick/Pedantry:
It's not "beta 4 of Redstone"; version 1803 is codenamed Redstone 4 (RS4). 1709/Fall Creators is Redstone 3 (RS3), 1703 was RS2 and so on.
Windows 10 Preview builds don't have beta designations, only a build number, and eventually release candidates which have the final release build number but aren't necessarily individually numbered themselves.
Why stop there in your indictment? Remember the bastards took away the Meta key too.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
In particular for cloud computing, and acknowledges the long matured superiority of Unix(es) in that regard.
I notice this in the relative ease to use and automatically install stuff on newer Windows running on virtualization environments, at least compared with the older versions, which were cranky and prone to failures when trying to automate software deployments, just because the OS wasn't designed to be fully usable with shells/terminals.
Of course, Linux and the Unix(es) still are much more stable and usable than Windows in automation environments, but the Windows family is improving.
Have had unix tools for 40 years already, no need for a newcomer.
When I was using Windows I always had Cygwin installed, and when I switched to using a Mac one of my favorite aspects (seriously) was having a real shell and all of the unix utilities again.
I went from Windows to Linux, but then (circa 2003) switched to Mac because it gave me all the Unix tools I relied on, along with easier access to mainstream programs I needed - like Photoshop.
Now, Microsoft is moving towards the command line for power users, while Apple appears to be dropping hints they want to lock down computers the same way they lock down iOS. When I'm ready for a new computer in two or three years, I'm not sure it'll be a Mac. I still have a lot of history-driven distrust of Microsoft, though... but Linux is still there.
And perhaps, by that point in time, systemd will include its own 64-bit Windows emulation layer. At which point I might opt for early retirement and no computers at all.
#DeleteChrome
So enlighten me on the advantages of X compared with VNC? Thank god Wayland is dumping all the legacy bullshit for people who want responsive graphics and not close to four decades of kludges.
Only the State obtains its revenue by coercion. - Murray Rothbard
"Those who do not understand Unix are condemned to reinvent it, poorly."
If you're a zombie and you know it, bite your friend!
The first advantage is that you can ssh into a machine on the opposite side of the building (or the country, or the world) and run a graphical program on your own machine. If that program is written using proper X techniques (essentially vector graphics), then the bandwidth requirements and latency are lower and the quality is higher than if you are using VNC that has to render the window completely on the server end, compress it, send it over, and decompress it to display on your end.
./foobar and have the program display on the other machine without any intervention on that other machine. This is more of a niche use, but it is very useful for remote information displays and control rooms. It's a good alternative to the Windows paradigm of adding another graphics card and manually starting a full screen display program and hoping it ends up on the correct remote display.
./graphical_program, the same way as you would redirect it to any other display. This works because the X protocol is shared by both.
The second advantage is that you don't need to remote in. On a high-speed network that you might have in the office, you can say DISPLAY=otherbox:0
The third advantage is that programs written thirty years ago will display correctly and do not need to be recompiled or rewritten to play with the latest and greatest fad. Wayland, Unity, what else is there? SystemD is bound to have a display server pop up at some point.
The fourth advantage is that it works out of the box without requiring (or inviting) a bunch of third-party garbage that's only compatible with itself, costs money, and is fragile by virtue of existing to establish vendor lock-in rather than accomplishing a task.
The fifth advantage is that you can turn graphical applications into background processes by using Xvfb, which you can start as a user process and use via DISPLAY=localhost:NN
The sixth advantage is the big one: it works. It isn't broken. What do you gain by replacing it?
Unless Microsoft starts pumping out MS Unix with a Windows front end, none of the reasons for using Linux, BSD, or another Unix go away. This just seems like it would be cosmetic stuff for geeks who are used to being able to awk grep and sed their way out of most problems.
Is slow really a problem anymore unless you are creating and destroying 10k processes?
That's the extend part.
I see the other direction more likely: once Windows admins get used to Linux programs, the move away from Windows to Linux becomes much easier.
I don't care how much they embrace and extend I'll never spend a penny on Microsoft, or use it for free. I'm old enough to remember how they got their monopoly position. An evil corporation run by evil humans.
When the king heard the words of the Book of the Law he tore his robes.2Kings22:11
It never made sense to me why Microsoft didn't just toss in Unix tools at some point, like around Server 2003r2 - 2008r2.
The CLI tools wouldn't have meant less Windows server or server programs sold on its own, it actually would have meant some marginal number of free Unixes not installed because the existing Exchange, IIS or SQL box had the tools to do the job.
I see a lot of Unix installed because native Windows tools are totally brain damaged and while a Unix instance raises support questions, it's also free and solves the crisis. Later more seems to get installed and less Windows instances as admins and bosses get more confident.
If MS just had bash and tools installed natively, the door wouldn't be left open to a whole other operating system.
Linux programs, scripts, solutions, will now be able to interact with Windows and services that are unique to Windows, creating Linux solutions which will depend on Windows to work properly.
That's the extend part.
FYI I am the author of the story. Lately, hosting daemons on SystemD scares me more than running them via services on Windows :-D~ ... ducks.
http://saveie6.com/
When I was using Windows I always had Cygwin installed, and when I switched to using a Mac one of my favorite aspects (seriously) was having a real shell and all of the unix utilities again.
I went from Windows to Linux, but then (circa 2003) switched to Mac because it gave me all the Unix tools I relied on, along with easier access to mainstream programs I needed - like Photoshop.
Now, Microsoft is moving towards the command line for power users, while Apple appears to be dropping hints they want to lock down computers the same way they lock down iOS. When I'm ready for a new computer in two or three years, I'm not sure it'll be a Mac. I still have a lot of history-driven distrust of Microsoft, though... but Linux is still there.
And perhaps, by that point in time, systemd will include its own 64-bit Windows emulation layer. At which point I might opt for early retirement and no computers at all.
I am the original author. I believe since WSL uses Ubuntu that is runs SystemD by default so you won't escape that easily. If you really want to be purist I suppose you could launch a VM of FreeBSD in either platform if your future PC has enough horsepower to take the hit in performance. SuSE is the other one that is on the Windows appstore which also switched to SystemD if I am not mistaken.
http://saveie6.com/
There is FreeBSD for the real Unix folks who like the old style documentation and FreeBSD handbook and hate gui things. ArchLinux I heard has the same elitist thing that you can custom configure but a disclaimer I never used that one.
http://saveie6.com/
Another few:
- Remote X works with your window manager. You can choose which windows overlap others, not entire displays. You can minimize them as other window. You can move individual windows between different screens. Dock them.
- Remote X works with your X clipboard. I can mark and paste into or from a remote X window.
- Moving windows around isn't laggy. The graphics primitives are cached (especially with lbx) and do not have to be re-sent as you move a window.
- You don't get blurry text when the subpixel rendering differs between different machines. Because the text is rendered in your own display.
- You don't get flyspeck when the remote side is a much higher DPI than the local side. Or obnoxiously large text when it's the other way around. Because the X server is on your local machine, you are in control.
But I don't hate GUI things. I like it so much that I want my GUI thing when I display remote windows. X11 provides that.
Also a tool is available called WSLPath to convert Linux to Windows path options
Thank the lord!
"Old man yells at systemd"
FYI I am the author of the story. Lately, hosting daemons on SystemD scares me more than running them via services on Windows :-D~ ... ducks.
In either case it's hand-editing obsolete MSDOS .INI files and trusting in kitchen sink daemons that run with way too high privilege and can take your entire system down. Not much difference, but then again, the systemd creators grew up with Windows, and did what they were comfortable with.
X11 is a vector protocol unlike VNC. If you use GLX over the X11 protocol, an app can send 3D OpenGL commands over the X connection over a network, this allows you to run apps on a different computer and display them to another computer and do it with a faster speed than a raster protocol. So X protocol isnt just for 2D, and its not outdated therefore, it has been able to do full 3D graphics for a very long time.
Once upon a time the fonts were rendered on the X server, the X client could just send the text and the server would render it. For whatever reason, they decided to change this. This was around the time the Render extension happened. This caused clients to switch to sending font bitmaps to the server and then composite the bitmaps together on the server for alpha transparency support. Alpha transparency could have been implemented on the server side font model, but they chose not to do this. There are some applications for the Render extension for fonts which are used inside a web page and for sending images to the X server and being able to reuse fonts and images on composite operations on the server without having to upload rasterized images everytime the applications window content layout changes, this could actually save resources for network transparency.
One thing that could have been done is to allow uploading of PNGs, JPGs and TTFs to the X server and have the X server rasterize them, this would make things work better over network connections, and allow the client to choose to use server side font rasteration with alpha transparency if the server has the font it needs. As others have mentioned, there was an X Font Server as well which the X server could download remote fonts from.
One of the things we hear from Wayland proponents is X11 hasnt been network transparent. This is not true, even Render should be useable over a network connection since you can upload your images to the server and composite them together on the server, GLX is certainly network transparent. Clients are supposed to be written so they fall back to sending any image data over the socket if shared memory is used. So shared memory while not useable for network transparency does not conflict with it since the client just falls back to sending image data over the wire.
X11 is more flexible than VNC since you can export single applications between different desktop sessions. There are even tools to move an X program from one X server to another so you can switch which computer or display an X program is displayed too. There are X based remote desktop tools. There were even programs like XMX that allowed you to multiplex an X application to multiple X servers simultaneously.
The legacy support in X does not consume a significant amount of resources, its very insignificant, so thats a false canard that should be soundly refuted. The core X protocol graphics primitives are simple and few in number so it takes little code to implement them. Increasingly, as well, there is a move to transition the X servers backend to use OpenGL mesa drivers so the X server will use the same drivers as the DRI programs, so these X 2D primatives will be rendered by the OpenGL driver code, which will avoid driver duplication and means the X 2D primatives and the 3D be rendered by the same code and drivers anyway, so the legacy X protocol support really does not use a significant amount of resources.
Ok AC, I'll bite: what do you mean? And are you implying that CygWin was superfluous (before the Linux subsystem came).
There was a brief Linux system for Windows that came out some years--maybe a decade?--ago. My recollection was that it was experimental, buggy, and was removed soon thereafter.
1. Right-Click C:\Cygwin64
2. Select "Delete"
3. Empty trash
All done!
My Other Computer Is A Data General Nova III.
Microsoft needs to get rid of the shitty powershell and go full bash.
Yes. This.
"Those who do not understand UNIX are condemned to reinvent it, poorly."
-- Henry Spencer, programmer
(Excuse my ignorance) Does that include programs written using GTK? Qt? SDL? Tkinter? wxWidgets?
then the bandwidth requirements and latency are lower and the quality is higher than if you are using VNC that has to render the window completely on the server end
That is now true for a small subset of programs written with a subset of tools in Linux. You'll find a lot of what you do in X is now not identical to the way VNC does it, only due to the fact VNC uses compression to speed it up.
Tiny nitpick: if you're using "ssh -CX", you're also having the compression benefit. For a lot of applications, it actually speeds up X11 forwarding quite a bit (possibly because of what you just said; bitmaps images of desktop applications are often very compressible).
QT before version 4 (or 5) was a wrapper around X11 commanfs. After, it started doing its own rendering and sending a bitmap to X11. This was claimed to be a performance boost (though QT3 worked just fine for me) and so it could play with X and Wayland and Unity without recompiling. Now there's a kludge for ya.
X protocol is absurdly inefficient (which is why NX is at least 10 times faster)
Depends on usage and use case. As others point out, if you're tunnelling over SSH, you get a level of compression for free. If not and you're using it locally, you get the benefit of 100Mb/sec or 1Gb/sec links.
insecure
Who cares? Tunnel it securely and there's no problem. You know what else is insecure? Just about everything. Yet we manage to mitigate it just fine.
difficult to manage
You say that, and what pops into my head is the image of a kid fresh out of school who not only thinks he's invented sex, drugs, and rock-and-roll, but the entire computing industry as well.
while most app developers don't program correctly for a network environment (very few programs use Xcb to avoid sync latency, or even just use group operations like XInternAtoms).
Most software is crap. If you're acquiring software for use in remote sessions, that's one of the parameters to check for.
Exactly what programs are you running over an X session? Don't even fucking tell me you use it to open a terminal window.
Only the State obtains its revenue by coercion. - Murray Rothbard
Tell that so the systemd crowd, not me. A separate fucking toolchain for dealing with log files. So you recreated grep, sed, and awk but this time they work on the binary log files. Totally worth it.
Only the State obtains its revenue by coercion. - Murray Rothbard
The machine I'm typing on right now has two Emacs windows on it served over from a headless machine sitting right next to it. That's the majority of my uses. The transparent clipboard really does wonders for usability there since I can drop text right into and out of those windows from local programs.
Another use case that comes to mind is openning up an email client on another machine so that I don't have to copy over and install SMIME certificates on my own box and can read encrypted emails that way. Don't go after me for compromising security on that...it's done over an encrypted tunnel.
Other than that, mostly programs I wrote myself that were intended to be used that way, hence they were written using QT 3, rather than 4, though both work, the former is faster.
Performance. Bandwidth efficiency. Better integrated. Better for doing things like remote displays from embedded devices.
QT is a hideous viral mess.
Which is far more fundamentally efficient: sending a few specific drawing commands only when something changes? or transmitting multiple bitmaps of the whole screen (even just compressed deltas) every second?
Also,X isupports the resolution of the remote display, and only sends the application's wndow. VNC can only give you the server's whole desktop at whatever resolution the sending side supports. Lets not even get into the associated security issues of showing a whole desktop.
The former.
Except that hasn't been how most Linux apps draw on X for a good 20 years now.
if they're remotely displayed, yes it is.