2016-04-09 18:03:40

By now you may have learned about Microsoft's Ubuntu user space port to Windows 10. It's emulation of the Linux system calls so development tools run from a containerised Ubuntu root file system with a bash shell, running using the native Windows console environment. There is no virtualisation and no requirement that binaries be recompiled to work in the target; it's a dedicated Linux subsystem that runs ELF binaries.

As somebody who has for a long time now resented the move back to Windows because of the serious lack of a decent command line environment and tooling, in spite of the accessibility perks of Windows, this makes me very excited. As somebody who has already decided that Windows 10 isn't for them, ,this makes me very sad. Of course, the latter holds over my need for a decent CLI on Windows, so I'm stuck with virtualisation there. On OS X, I've always had Unix, but since I often prefer to use Linux, there's no doubt it would be particularly wonderful to have a containerised Ubuntu rather than either BSD with no package manager (or one that's not as comprehensive as Ubuntu's). It also means not having to compile software from source, with all the attendant porting issues. The only real downside is that Windows won't run many of the more demanding packages you'd actually want, like servers, at least in its current state. But let's be honest, the worst part of Windows is not having such essential text processing tools and scripting languages as this environment is actually providing.

We'll see how this develops as time goes on. It's wonderful to see Microsoft finally waking up and doing something. I just wish they'd listen to their customers and make Windows 10 less of a privacy-invading, subscription-based OS. For too long now, Windows has been entirely and pathetically subservient to its GUI, and if you weren't a user, you were a hardcore developer--no in-between. Sure, that model has a certain beauty to it, and I'm not complaining that it gave me something to do that I could be happy about. But you couldn't throw together hacks or write one-line incantations to make shit happen, or bring anything you'd written to a more civilised platform. Now that looks to change and it's awesome.

Just myself, as usual.

2016-04-12 03:13:44

The only problem I see with this is the fact that Ubuntu is horribly out of date. At least, it's packages are. PHP, for instance, is currently on version 7.0.5-1, and Ubuntu is still on 5.6.11+dfsg-1ubuntu3.1. It's ridiculous.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2016-04-12 19:43:44

There will be a new Ubuntu LTS release soon, so this should be remedied when this subsystem moves on to that new release.

Just myself, as usual.

2016-04-12 23:10:42

Yes, but Ubuntu's versions should be in sync with the actual version of the package--like Arch Linux's packages are. Arch seems to always bee in sync with newly released versions of software. Ubuntu isn't. So if a program has a serious bug that makes it difficult to use it on the users end and it is not noticed by the package maintainer, it takes weeks, months, if not years before it gets updated.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2016-04-12 23:14:56

I think the primary focus here is stability. Personally I'd take Debian over Ubuntu anyway, but hopefully we'll get to find out how to put any root file system we like on there. Then you really could have Arch, or even Gentoo.

Not that this matters a jot if you aren't going to use Win10, anyway, of course.

Just myself, as usual.

2016-04-13 21:26:21

Well, I'd prefer Linux is a prime OS. The only reason I don't use it as a primary is because I have many applications on here that I could not replace with similar ones on Linux.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2016-04-14 11:24:08

Yeah I'm not using Linux as primary for the same reason. But I prefer Arch as well. I'm using Linux subsystem on my Windows 10 machine, and it isn't bad. However, for some reason I cannot install Open JDK, even after typing in apt-get update and apt-get install -f, I'm still getting a bunch of errors.

2016-04-14 16:11:06

Would you mind posting the entire install log, including all commands typed since you launched the WLS when you try to install the OpenJDK? I may be able to help you.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github

2016-04-15 09:35:37

So when I type:
apt-get install openjdk-7-jdk
I'm getting the following output with errors after answering Yes to install.
root@localhost:/mnt/c/Users/Hrvoje# apt-get install openjdk-7-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
openjdk-7-jdk is already the newest version.
The following package was automatically installed and is no longer required:
  os-prober
Use 'apt-get autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
11 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
E: Can not write log (Is /dev/pts mounted?) - openpty (2: No such file or directory)
Setting up openjdk-7-jre-headless:amd64 (7u95-2.6.4-0ubuntu0.14.04.2) ...
the java command requires a mounted proc fs (/proc).
dpkg: error processing package openjdk-7-jre-headless:amd64 (--configure):
subprocess installed post-installation script returned error exit status 1
Setting up openjdk-6-jre-headless:amd64 (6b38-1.13.10-0ubuntu0.14.04.1) ...
the java command requires a mounted proc fs (/proc).
dpkg: error processing package openjdk-6-jre-headless:amd64 (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of openjdk-7-jre:amd64:
openjdk-7-jre:amd64 depends on openjdk-7-jre-headless (= 7u95-2.6.4-0ubuntu0.14.04.2); however:
  Package openjdk-7-jre-headless:amd64 is not configured yet.
dpkg: error processing package openjdk-7-jre:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of openjdk-7-jdk:amd64:
openjdk-7-jdk:amd64 depends on openjdk-7-jre (= 7u95-2.6.4-0ubuntu0.14.04.2); however:
  Package openjdk-7-jre:amd64 is not configured yet.

dpkg: error processing package openjdk-7-jdk:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of icedtea-6-jre-cacao:amd64:
icedtea-6-jre-cacao:amd64 depends on openjdk-6-jre-headless (= 6b38-1.13.10-0ubuntu0.14.04.1); however:
  Package openjdk-6-jre-headless:amd64 is not configured yet.

dpkg: error processing package icedtea-6-jre-cacao:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of icedtea-6-jre-jamvm:amd64:
icedtea-6-jre-jamvm:amd64 depends on openjdk-6-jre-headless (= 6b38-1.13.10-0ubuntu0.14.04.1); however:
  Package openjdk-6-jre-headless:amd64 is not configured yet.

dpkg: error processing package icedtea-6-jre-jamvm:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of openjdk-6-jre:amd64:
openjdk-6-jre:amd64 depends on openjdk-6-jre-headless (= 6b38-1.13.10-0ubuntu0.14.04.1); however:
  Package openjdk-6-jre-headless:amd64 is not configured yet.

dpkg: error processing package openjdk-6-jre:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of icedtea-netx:amd64:
icedtea-netx:amd64 depends on openjdk-7-jre | openjdk-6-jre (>= 6b23~pre10~); however:
  Package openjdk-7-jre:amd64 is not configured yet.
  Package openjdk-6-jre:amd64 is not configured yet.

dpkg: error processing package icedtea-netx:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of icedtea-6-plugin:amd64:
icedtea-6-plugin:amd64 depends on openjdk-6-jre; however:
  Package openjdk-6-jre:amd64 is not configured yet.
icedtea-6-plugin:amd64 depends on icedtea-netx (= 1.5.3-0ubuntu0.14.04.1); however:
  Package icedtea-netx:amd64 is not configured yet.

dpkg: error processing package icedtea-6-plugin:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of openjdk-6-jdk:amd64:
openjdk-6-jdk:amd64 depends on openjdk-6-jre (= 6b38-1.13.10-0ubuntu0.14.04.1); however:
  Package openjdk-6-jre:amd64 is not configured yet.

dpkg: error processing package openjdk-6-jdk:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of ca-certificates-java:
ca-certificates-java depends on openjdk-7-jre-headless (>= 7~u3-2.1.1~pre1-1) | java6-runtime-headless; however:
  Package openjdk-7-jre-headless:amd64 is not configured yet.
  Package java6-runtime-headless is not installed.
  Package openjdk-6-jre-headless:amd64 which provides java6-runtime-headless is not configured yet.
  Package openjdk-7-jre-headless:amd64 which provides java6-runtime-headless is not configured yet.

dpkg: error processing package ca-certificates-java (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
No apport report written because MaxReports is reached already
Errors were encountered while processing:
openjdk-7-jre-headless:amd64
openjdk-6-jre-headless:amd64
openjdk-7-jre:amd64
openjdk-7-jdk:amd64
icedtea-6-jre-cacao:amd64
icedtea-6-jre-jamvm:amd64
openjdk-6-jre:amd64
icedtea-netx:amd64
icedtea-6-plugin:amd64
openjdk-6-jdk:amd64
ca-certificates-java
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@localhost:/mnt/c/Users/Hrvoje#

2016-04-17 04:55:58

Hi,
I think you may have a corrupted WLS installation. I'd certainly like to know, exactly, why /proc is not mounted and why /dev/pts is having issues. This is exactly why Linux should not be on Windows. Nearly everything fails to work properly because everything relies on /dev and /proc.

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.
My Github