Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Speaking of things running in places where they were not necessarily meant to run, I have pretty much ported all of Unix to run as an HTML5 app in a browser tab. The whole thing is just a steaming pile of javascripty goodness.

It currently just copies OSX for the GUI, but I just wanted to do that to get people interested in helping me develop it, rather than trying to confuse end users. I've been hacking on it pretty constantly, all alone, for the past ~2.5 years, so if anyone wants to start working with me, let's talk! You can find my email on the site by clicking on the Pac Man icon and then "About".

First mission: work on a new GUI look and feel so big bad Apple doesn't come with their lawyer armies...

Try it at http://urdesk.net



care to share the unminified source? From what I can see in my inspector it looks like you've just made some HTML UIs that look like a couple specific Mac apps, which alone would be a far cry from "porting Unix" and not that original of an endeavor


You probably don't want to see the unminified source. He has reimplemented CSS as well as ASCII conversion in JavaScript. Oh, and he's mutilating prototypes left and right with extremely necessary functions like

  HTMLElement.prototype.add = function (a) {
    this.appendChild(a)
  };
There's code for asymmetric encryption and some sort of mail client buried in there... As well as a very faithful almost-Bash parser... and I can't for the life of me find where `ls`, `ln`, and `pwd` are executing from. Because this terminal has them apparently.

A lot of work was put into this, a lot of very interesting work. But I feel like a lot of this could be done a little more easily now with the invention of Emscripten... and even then, why would we have native apps ported to JS when we could just have JS apps?

If you have some free time, pop open the Chrome Devtools and click the Sources tab, paste that JS right into http://jsbeautifier.org/. It is truly interesting. Just don't know if I'd have written it myself.

I feel like UNIX works well enough right where it is. And if you really need a true UNIX in-browser, http://bellard.org/jslinux/ can help you out.


Nice work although I'd expect at least "cd home; mkdir test" to work in the terminal before claiming to have ported "all of unix" :)

Edit: just noticed it does work in /tmp though! Difficult to know as "ls -l" doesn't print any perms... a little more porting work may be required I think ;)


You have "ported all of Unix"?


Yeah, what does that mean? You've hacked together a POSIX-ish layer in Javascript? Or you've actually ported one of the many open source Unixen?


nice :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: