

Run Linux in your Browser JSLinux (Update) - js4all

Have you noticed the update?<p><pre><code>  - There is clipboard support (bi-directional)
  - It runs on Chromium 13
  - It runs on iPad!! 
    (If it does not take your input, set the focus to the
     clipboard edit box)
</code></pre>
http://bellard.org/jslinux/<p>And as a side-note, Tom has ported JSLinux to node.js<p>https://groups.google.com/d/topic/nodejs/B0OUf_Bd15E/discussion
======
cstross
I am a demanding luser. My javascript coding skills are non-existent, and I
recognize that I'm asking for the moon on a stick here, and HN isn't the right
place to make feature requests anyway.

But I'd love to see some extra features ...

What I'd like to see?

1\. Support for loading and mounting additional read-only filesystem images
embedded within the web page (presumably serialized and encoded in Base64 or
something).

2\. Support for a translucent FS, to allow writes to a ramdisk to show up on
top of the aforementioned read-only FS images.

3\. Support for writing out an updated copy of the JSLinux HTML file, with a
saved copy of the read-only filesystem, including changes merged in from a
translucent mount.

(In other words: you can edit files on a designated filesystem, then "save"
the VM webpage and get a new copy of JSLinux with your edits added to the
external filesystem so they're there next time you fire it up..)

4\. For added fun (but arguably this is an entirely different requirement),
I'd like to see a version of JSLinux merged with TiddlyWiki, so you'd have a
combined TiddlyWiki (for documentation) with a virtual Linux environment
(terminal only) embedded in it, and the ability to save changes.

You'd then have a single file containing (a) a hypertext documentation system
and (b) a command line Linux environment.

I would ... well, "killing" is too strong a word; but I'd probably move into
it for good, using vi and MultiMarkDown for book production and small-scale
programming projects and TiddlyWiki to keep track of ideas and notes.

------
tzury
A complete list:

    
    
        added support for more browsers including Opera 11.11 and __Internet Explorer 9__
        reduced VM RAM size from 32 MB to 16 MB.
        Source code release of the Linux starter utility.
        added a clipboard to exchange data between the VM and the host
        added FAQ and News pages
        fixed monospace font for some browsers.
        fixed binary XHR for Firefox nightly builds
        fixed terminal height for the less command
        fixed ampersand output in the terminal.

------
antirez
This running on the iPad is the win of the hacking, curiosity and intelligence
over the closeness. As without any good reason (IMHO) such a project would
never be approved as an app by Apple.

~~~
js4all
I felt the same seeing this running on the iPad. Fantastic.

~~~
arzvi
I have a feeling the 'Fruit's hands are going to stretch and block this app by
some idiotic reasoning. If they can claim 'app store' they can do anything.
urgh..

------
chmike
Clickable link: <http://bellard.org/jslinux/>

------
NSMeta
It still doesn't work on my Chrome v13.0.767.1 dev on OSX. Nevertheless, I'm
glad to see the project is moving fast forward.

~~~
beaumartinez
Neither does it on Chrome 13.0.767.1 (Official Build 85531) dev Linux (much
like the previous version; it gets stuck on "Freeing unused kernel memory").

~~~
darklajid
Check this message:

[https://groups.google.com/d/msg/nodejs/B0OUf_Bd15E/vq7D0i0k4...](https://groups.google.com/d/msg/nodejs/B0OUf_Bd15E/vq7D0i0k4IUJ)

------
Typhon
It still doesn't make coffee, but I expect it won't be long now. My mind is
still blown.

------
argy
It works on Android stock browser (Nexus One with Gingerbread), but it's very
slow, especially on boot.

------
rimantas
I've tried to compile <http://bellard.org/mersenne.html>, alas not enough
memory. Pity, that would be full win.

------
martinrame
Amazing, this guy is impressive.

BTW. It would be really nice to include an SSH client to JSLinux.

~~~
NatW
I agree with you, however.. you'll notice that it currently only has a
loopback device (try "ifconfig"). It would help if there were network
adapters, first :).

------
balakk
In Opera 11.11, I seem to get a max of 8 instances going, but not more. Is
there a technical limitation, or a deliberate restriction?

Memory seems to be OK, the browser is just past a Gig. Although this is a
32-bit OS, I don't see a memory issue.

~~~
sp332
Virtual memory usage might be at 2 gigs?

------
cstrouse
Works great on Chrome 11.0.696.68 running on OS X 10.6.7. I'll be keeping an
eye on this project. Great work.

------
sebastianavina
Damn, that page (bellard.org) is full of awesomeness... Pardon for my
ignorance, but who is this guy?

------
mahrain
In addition to running on iPad, it also runs on Safari (5.0.5, snow leopard)
now.

------
eslaught
Where's gcc? ;-)

~~~
glimpse_c
no gcc but you can use tcc which is developed by Fabrice Bellard too :)
<http://en.wikipedia.org/wiki/Tiny_C_Compiler>

------
DrCatbox
Whats the point of this? Is it useful?

~~~
sp332
Why don't you try doing something cool with it and let us know?

------
KonradKlause
I'm wondering when he releases the clipboard source code. On the kernel side
it's a custom character device. Currently he is violating the GPL. :-(

~~~
steevdave
Actually he isn't violating the GPL. The GPL states that you have to make it
available when requested, and as a mechanism of your choosing. It doesn't say
you have to put the source code on the web so that others can access it
easily.

I'm tired of people screaming GPL violation because the source code isn't
posted online for their perusal.

Edit to add:

Also of note, in the tarball that he provides is the patch to the Linux 2.6.20
sources that he uses. Which... is the sources for the clipboard. Did you even
look to see if the sources were available?

Deleting the comment that this was in (the new iPhone app doesn't let me edit
my comment unless I missed something)

~~~
KonradKlause
Ick, you’re right. I've looked at the tarball one or two days ago, and there
was no source for the clipboard.

