Linux is not a target for the code I'm working on. But, I like to keep my code as cross-platform as possible. Between this setup and prototyping code on several compilers via goldbolt.org, staying standard-compliant and compiler-agnostic is much easier than ever before.
They don't say anything about FUSE, I wonder if this work is at all related?
If FUSE would be useful to you, please vote for it at https://wpdev.uservoice.com/forums/266908-command-prompt-con...
[1] https://github.com/Foreveryone-cz/win-sshfs I think is the currently maintained version but you're welcome to confirm that independently.
Edit: What would be the nearest thing to WSL on a Mac? VirtualBox is a bit heavy-weight. Maybe something based on Hyperkit and Docker?
But now - It's best of both worlds - solid User Environment + Solid Unix CLI. Even better, it's a linux CLI, which means I get all the apt-get goodness that I've been missing on OS X (which admittedly has a pretty good brew install infrastructure).
Edit: while I understand downvotes I would be much happier if you'd educate me where I am wrong.
- https://cygwin.com/cygwin-ug-net/using-specialnames.html
- https://cygwin.com/cygwin-ug-net/using.html#pathnames-symlin...
Executing Windows apps from the bash shell can be surprising:
$ notepad The program 'notepad' is currently not installed. You can install it by typing: sudo apt install wine1.6
$ notepad.exe (Note Pad is launched)
$ /mnt/c/Windows/System32/notepad.exe (Note Pad is launched)
In the latest builds symlinks no longer require administrator permissions.
Don't know what you're referring to in regards to permissions mappings, but know that the Windows' permissions always trump whatever your see from chmod/ls -al
File permissions and security descriptors proved to be quite a hassle when removing Cygwin requiring multiple takeown and cacls hacks to remove some of the files.
On the flip side I saved some disk space too.
(Bugs: https://www.google.co.uk/search?q=lock+screen+windows+10+ima...)
I don't need or want the Linux graphical interface of my VM, it's pretty much redundant, but I do need to make devices available to the Linux software. Otherwise it's a bit like emulating a microcontroller - sure, Turing says the thing can compute everything, but in a very practical sense it can do absolutely nothing without it's outside inputs and periphery. I need the damn side-effects!
The use case for WSL right now is someone like a web developer. They can develop and debug node apps locally in their native environment.
No longer have to modify Powershell to make it more Unix-like. Jupyter notebook works fine, so I'm happy. No more bother with dual booting either; Ubuntu is gone as well.
[1] https://blogs.msdn.microsoft.com/wsl/2017/04/14/serial-suppo...
So we have the USB driver pretending to be a serial port to Windows pretending to be a TTY to the Linux subsystem.
It's a bit silly, but then I imagine TTY is a whole lot easier to emulate (even with all the cruft on that) than a USB chipset.
I turned on Insider on my brand new laptop last summer and it immediately overwrote some vendor-supplied drivers by newer-but-broken ones. Result: no sound. I didn't manage to fix it except through a full reinstall. Now that's exactly the sort of problem you need to prepared for when doing the Insider thing, but it sortof ruins the point. I want to beta test lxss, not Paint 3D or some fancy new device driver release schedule.
These names are confusing...
The terminology is "Windows subsystem for [target environment]" so "Windows subsystem for OS/2" lets you run OS/2 application on NT, "Windows subsystem for Win32" lets you run Win32 applications on NT, and "Windows subsystem for Linux" lets you run Linux applications on NT.
[0] "The interface between user mode applications and operating system kernel functions […] There are four main environment subsystems: the Win32 subsystem, an OS/2 subsystem, the Windows Subsystem for Linux and a POSIX subsystem."
I wish they had promoted the name lxss more, though. It's short, very googlable, and it's the internal name.
The git repo name is even more ridiculous: https://github.com/Microsoft/BashOnWindows
(after all, I had bash on windows for years already)
Naming something as "X for Y", where "Y" is a trademark owned by someone else is often done, but I haven't seen "Y for X".
Just speculating.
Android is Apache 2.0 with the Linux / GNU parts retaining their respective GPL licence. Microsoft are distributing the OS for free, which is allowed within the terms of Android's licencing and something that is done by many other organisations including Google themselves.
Just export $DISPLAY to :0 (AFAIK) and you're all set.
I'm not being flip, I'm actually curious as well and will try figuring out when I have a spare few moments.
I recall using exodus in the past (at uni), but it's commercial (pricey). Not to mention these days it seems to be Mac only.
From similar threads I've seen recently, and quick searching, it seems Xming is the preferred Windows-option these days:
MobaXterm is another free version, It's a term emulator with an X11 server, but you can just turn it on and ignore the term. It runs all the applications Ive found that the free Xming cant.
Or would it be treated more like a VM that you simply deploy to?
We currently run one or more Ubuntu server VM's per machine as needed for local testing. If needs go beyond that, we have physical (virtualized) servers on our network (for example, web and database servers).
I can see WSL possibly being good for local development if it can somehow integrate seamlessly with the Windows file system and various tools (PyCharm) can be setup to run on Windows yet talk to WSL. I guess this might be equivalent to running a remote interpreter.
Need to think about this a bit. Running a server or two on VMs is pretty clean and painless. On machines with 64 GB of memory you don't even know they are running (from a performance/resource perspective).
I've not done that last bit, but I definitely have moved all my ruby/Jekyll work into WSL and use VSCode to edit.
I wonder if that will fix the issue where I was unable to mv folders around the c:\ drive within the /mnt/c FS. (It more or less locked up to the point that I had to restart to clear the issue.)
You can do the traditional Ubuntu do-release-upgrade to upgrade your install, or the suggestion is to replace and reinstall (from PowerShell or cmd):
lxrun /uninstall /full /y
lxrun /install
I copied my few dotfiles to a safe place and did that.However I do recall that trying to ctrl+c kill it didn't work. I don't recall what else I had/hadn't tried; I was rather busy at the time and couldn't stop to make a proper bug report.
All that mattered to me was that it completely stalled for no transparent reason and my best option was to just not even try to do real file management from the WSL environment.
Now it looks like I can freely exchange my files between the WSL and Windows. Is it true?
Do I finally have a linux inside a windows machine where I can install things using apt-get (instead of cygwin setup.exe)?
When will it goes into the official Windows 10 version?
You can easily read/write Windows files from Linux, but I don't think you can do the opposite. I've used git within WSL to drive a repo on my Windows drive.
WSL gives you full-blown Ubuntu 16.04 where you manage packages with apt-get. You have to look close to the bare metal to see differences. Until the creator's update, for example, ifconfig didn't work.
Earlier today, I compiled and ran some OpenMP-based code in WSL and it happily detected all the cores on my dev machine and kept them busy with worker threads. Pretty cool!
The bug report I filed suggested that this was being fixed soon.
Cygwin is still useful.
I know that apt-get works since earlier instead of the terrible Cygwin distribution model, but yes, IIRC there are NTFS streams being used for the Linux file system metadata IIRC and if these get overwritten or somehow modified things go bad. And NTFS streams being a somewhat uncommon NTFS feature, some applications don't handle them well?
On the other hand, wasn't a new Windows 10 Creators Update feature that you could now indeed edit the files from Windows, and not just from the Linux subsystem? And that the Linux tools such as web servers are now even notified when the files change so they can reload them automatically? I'm not sure how they solve the metadata borking issue though, in that case.
Cygwin and using shared VM directories has too many glitches with things like npm, links, file system endings, etc. As Docker becomes more important, this gets even worse.
Really, developing on a Mac is just so much better than both Windows and Linux, even for Java.
In particular, they run Nginx 1.4.6 with 100% test coverage and postgresql-9.5.3 with 100% test coverage.
Oddly (very), they have a few projects, Cassandra, Coffescript that show better test pass rates with WSL than Native Ubuntu.
Unbelievable how much M$ changed for better in the last years!
https://msdn.microsoft.com/zh-tw/commandline/wsl/install_gui...