In my experience, it is far, far away from substituting the UNIX experience you get from macOS/Linux/*BSD
In my experience, it is far, far away from substituting the UNIX experience you get from macOS/Linux/*BSD
1) the terminal sucks.
2) WSL should be a service. Or at least we should be able to choose to have it always-on regardless of a terminal being open. We need to be able to have WSL start at boot.
(Now wondering if anyone has made some sort of WSL System Tray app)
For #1, this is a tremendous help: https://conemu.github.io It's the first thing I install on Windows. Comes with build-in profiles for bash/WSL, powershell, cmd, and Admin sessions of the latter two. Still not as good as iTerm or stock Terminal, but a massive improvement over cmd.exe.
#2: Totally agree, but I think things are moving this direction.
MacOS leaks unix through its pores: by separating cmd and ctrl is able to have emacs movements (^A, ^E, ^K, ^W, ^Y) in every Cocoa input field. Composability is also very possible from the get go thanks to tools like Automator and Services. Its terminal is top-tier†. This is the kind of little things that makes MacOS feel unix-y throughout. There are also lots of command line tools and documentation as man pages for purely darwin/MacOS stuff: it's not always perfect but the platform reaches out to plain being unix.
If you can make it so that running bash deeply feels like you're interacting with the currently running OS and that I can do everything from there using unix conventions (no calling an exe, no slash switch args, man pages... see this talk[0]) and not some segregated image below which there is an underlying OS, then you've won.
I mean, this needs to deeply feel native, embedded, not translating, layered. Hard to explain, but currently it feels like I'm talking through some Babelfish.
PS: crazy thought, but if MS can roll - no scratch that - if Windows can be its own "distro", kind of like FreeBSD base system, which changes with each major version and naturally updates, instead of (or in addition to) providing images of third party userlands that happen to run on a sort of segregated loopback mounted image, then you've won.
PPS: Oh, and ngrep doesn't work :D
PPPS: And please have a decent terminal from the get go.
† Damn, I love jumping back to those auto-marked prompt lines, being able to toggle mouse reporting, hiding/viewing the alternate screen, or showing the currently opened pwd or vim buffer in the titlebar through those escape sequences.
[0]: dotRB '13 - "It's a UNIX system, I know this!" https://www.youtube.com/watch?v=Qucn0QuXFhc&index=13&list=PL...
Sadly she didn't expand that much on her actual pain points but Bodil Stokke was not impressed a few weeks back: https://twitter.com/bodil/status/868925787038208001
> I guess if you're happy using plain bash and think Windows is already pretty performant, it must seem acceptable.
> But, seriously, even running lunix in a VM on a Windows host is a million times better than this. Back to my VirtualBox…
> I didn't even get as far as X this time, just trying to get my fish/tmux running in WSL on ConEmu had me feeling like I was being pranked.
[responding to a commenter]
> It runs just fine, but gl finding a terminal emulator that can keep up with my fish config... (well, tbf maybe Putty can, but I hate Putty.)
So the main limitation seems to be that the available terminal emulators are essentially unusable. Unixers live most of their life in or around term, not having a good one is a straight killer.
greg@gregcomp:~$ sbcl
WARNING:
Couldn't re-execute SBCL with proper personality flags (/proc isn't mounted? setuid?)
Trying to continue anyway.
This is SBCL 1.1.14.debian, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
Edit: In case it's not clear, that's the entire output of launching an SBCL REPL. There is no actual REPL.Given that I use it for both commit signing and SSH auth, the lack of GPG smartcard support would make WSL a pain to use at best compared to the Linux systems I typically use.
There are some minor annoyances, but that is true with OSX too. In some ways, WSL is a more native unix experience, or at least a more native Linux experience.
I made the jump in November and never pick up my MBP anymore.
In what way is WSL a more native unix experience than a literal unix system?
> or at least a more native Linux experience.
Well that's rather obvious given OSX is not any more a linux system than Illumos or DragonflyBSD.
Pretty much no one hosts web applications on OSX, and you still run into the odd library that you have to fiddle with to get running right on OSX. Brew always felt a little hacky to me, or at least not fully part of the OSX ecosystem.
So, in that way, WSL has a leg up.
Just curious. I'm a Mac user, so I haven't gotten the chance to try it yet. But I've got some coworkers on Windows, so I'm hopeful the subsystem will help relieve some frustration setting up developer environments.
How is running a package install evil?