Hacker News new | past | comments | ask | show | jobs | submit login
Icebergs.io Brings Linux Desktop to the Browser (icebergs.io)
146 points by isotope1 on Sept 28, 2015 | hide | past | favorite | 92 comments



Terminal.com has an XFCE snap that's cheaper and upgradeable too. You can pause them, which keeps the RAM state, so it's much cheaper and more useable: https://www.terminal.com/snapshot/56ae96b9c4d0b6c088a66e6a46...

http://yourname1-8080.terminal.com/guacamole/#/client/c/Desk...


Guacamole also has a Docker image that you can use to mount on a free AWS instance. Additionally, you can have a second docker container that runs GUI apps: http://stackoverflow.com/questions/16296753/can-you-run-gui-...


Yea but this takes 30 seconds to setup.


Really can't see a use case for myself and really looking for someone else's.

I have my own personal server where I just ssh into for my needs and it is cheaper than $9.99 a month.


The pricing isn't quite ideal, but this may be useful in certain classroom situations - like a MeetUp or something like that.


Can you suggest a better pricing structure? I'm trying to make it cheaper (it's just AWS is expensive that's all!)


I feel like you should have your own datacenter if you want to run a business like this. AWS is very expensive (but appropriate for many) and not intended for VDI.


Yes, I agree, I'm hoping that I can move the architecture to an LXC based setup to make it more efficient, and to allow instances to have unlimited hours (that's the destination).


Compared to a digital oceans' account? Just asking not making a statement.


All that I meant was that group pricing would be needed for a classroom setting. I'm not sure what I can contribute beyond that suggestion.


I think it's more targeted at interactive use, plus each instance is a lot more powerful than normal VPS (AWS t2.medium).


I see a bunch of comments asking about the use case, so I'll share one...

The Defense Department agency I work for employs between 50 and 100 developers, many of whom, like me, are contractors. The security folks have things locked down to such a degree that developers don't have root access to their own machines and the process for getting new software approved for use on a developer machine takes months. We just got permission to have git installed, for example. Getting Nodejs installed probably isn't going to happen unless they could figure out a way to disable npm. All ports to the outside are shut down except for 80 and 443 and everything runs through IronPort, so anything running https has to allow you to not verify SSL.

If the latency/general performance is good enough, I think developers would love to use something like this for their primary development environment. From the agency's perspective, $50-100 per developer per month would be cheap enough to be a no-brainer. As far as the security folks are concerned, this is just web traffic, so they would have no problem with it.

My only issue is that this pricing doesn't seem to be very friendly to the use case of wanting just one instance, but with unlimited hours.


This seems like a pretty bad idea. All you do is work around the security rules of the agency. If your "easy to install" software has some kind of security exploit in it you just gave someone access to all the work you were doing on your "virtual workstation", which might be pretty bad.

Its probably less bad than an exploit of some locally installed software, but if you do most of your work in the vm it can still be pretty bad.

I understand that you're pissed of at the security rules making your job hard, but the correct fix is to fix policy, not work around it.


Yeah, he can get right on fixing the policy. All he has to do is go talk to Obama and right after that he can get lunch with the Secretary of Defense and show him a powerpoint about why everything the government does with IT security is stupid.

Then, 3 years later, he can get started doing work.


To me, it comes down to whether the deliverable is the source code itself or the process by which the source code is created.

If the deliverable is static html, for example (it often is), then it shouldn't matter if that static html is authored in Eclipse or Sublime Text. By all means, the dependencies used in java projects should be scrutinized. The problem is, when it is too cumbersome to even experiment with something new from the open-source community, you end up trying to create your own in-house solution, which is way more expensive and usually less secure.

Fortunately, even top levels of management have recognized this problem. Virtual workstations are just one of a couple proposed solutions, but it's a serious option.


If they allow this they don't care about the security regarding any code or IP you generate or any data you use, in which case it is strange they don't just put you on a separate, less restricted part of the network, or give you a box there.

Also, a DO droplet would be cheaper (and with unlimited hours); you can have a droplet running a vnc server in a couple of minutes (and clone it afterwards), with any DE you like. Don't know about how the (cpu) speed compares though.


Fortunately, the source code and test data we're working with are not considered sensitive. As a matter of fact, the separate, less restricted part of the network approach has also been proposed. I don't know what's been holding up that proposal, but assigning responsibility for that separate part of the network can be tricky.

I had always figured DO was the wrong approach because ssh isn't an option, but I suppose if you create a droplet with the VNC over https stuff already set up, then it could just be cloned by everyone else. Thanks for the idea!


I don't think that this solution will have any general appeal. First it's probably only a niche of developers that will consider using this product. Secondly, why would someone use a computer in the cloud that will probably perform as well as a low end pc. Your case may be valid but for someone that wants serious security, is an cloud based OS really that secure?


I don't think that this solution has any general appeal. Why would you use a computer in the cloud that will probably perform as well as a low end pc. Your case may be valid but for someone that wants serious security, is an cloud based OS that secure?


> Getting Nodejs installed probably isn't going to happen unless they could figure out a way to disable npm.

Entirely possible! Just ask the folks at the last company I worked for (a bank). What a nightmare.


Good to know - thanks!

Although I would say that would cripple the entire point of having node, since now things like grunt, gulp, browsersync, etc. would all need to go through that same approval process. Better to have development happen on a network so far removed from sensitive data and mission-critical hosting that the admins aren't scared of it.

What were you trying to do at the bank that used node, but didn't need npm?


Just tried it out .. very nice, quite usable, and fairly decent, performance-wise. Single CPU, 2.5ghz, decent enough for most Linux desktop tasks.

The only issue I have is that it booted the instance and needed immediately to do a software update .. that's a bit of a drag, I'd be happier if the base instances were already up to date before they get configured/cloned .. but no big deal, really. ( * -)

I'll use it for some ports and see how things go .. kudos to the icebergs.io team for making it pretty smooth to get a new Linux developer workstation set up easily enough ..

EDIT: (- * ) Actually .. this is a big deal for anyone trying it out - the update occurs and then the machine reboots, and then of course .. you lose your instance on the free-tier account. So if you want to use this for free, don't bother doing an update and definitely don't reboot the instance thinking you'll get back an upgraded machine. Apparently thats only for paid users.

EDIT2: Well, 5 minutes after finishing the software upgrade and accidentally hitting the "Restart" button without thinking, I'm left with a hung instance and seemingly no way to get the machine back to life. In case anyone from icebergs.io needs to know, the instance name is late-firefly-372, and all I did was log in, do the required software update, hit restart .. and wait .. and wait. The instance still seems to be responsive, but just not rebooting - some of the windows I left on the screen prior to the reboot appear to still be reacting to mouse events (the VNC config window checkboxes work), but the DE is dead and gone, and the machine doesn't seem to be letting me do anything .. thought I'd report it in case others run into this issue. Don't do the update and don't reboot! :)


Yep, founder here. Trying to work out how to reduce the cost of both the free plan & paid plans, in order to give more for less.

For performance comparison, they are AWS t2.medium instances.


Can you share who your target audience is? It looks pretty cool but I'm not sure who'd pay for this.


I do 90% of my work on a Chromebook/ChromeOS desktop, but I can't program on it, and yet I don't want to suffer trying to put Linux on it, so basically anyone who doesn't want to install Linux on their computer :)


Actually, Crouton is easy to install, and you run it from inside a ChromeOS window. I program on mine all the time. Most Chromebooks come with limited RAM and hard drive (mine is 2 GB/16 GB) so I could see using something like this if that's a constraint. Unfortunately the pricing is a bit steep (I see you've addressed that above).


I obviously dont know your stack so this might be useless if you're heavily invested in AWS - but you might want to try scaleway, you'll definitely get more bang for your buck in terms of performance


I'm actually up for that, if you can suggest an alternative way of doing this (ideally using LXC rather the instances), that would be great. Target is 'always on' instances and reduced cost.


We've been having good success running desktops as docker containers, scheduled on Mesos using cheaper GCE machines. We use TurboVNC as it has a built in Javascript VNC client too.


Yea plus lxc will make it easier to hack :-)


Oh no! I'll look into it! Thank you for pointing this out. The best bet is to delete the instance and create a new one.


I didn't want to delete the instance until you had a chance to check it out - so I left it up. But I've just been informed that its deleted now, so .. hopefully you had a chance to see what was up before it went down. Either way, all I did was log in, do the software update, then hit restart .. nothing major, but thought I should let you know anyway.


With WebAssembly and related efforts (e.g. JS threading), I'm hoping it won't be long before we have services similar to this, but actually running in the browser rather than the cloud. A bit like that i386-in-browser demo, but with performance a decent fraction of native, OpenGL access, etc.


You can run Windows 95 in the browser: http://win95.ajf.me

(But you probably already knew this, since you follow me on Twitter.)


Ohhh! The original Windows Solitaire for free! :)


what's your twitter? I'd follow the shit out of this kind of stuff.


I can't work out what this is for


Would be good for developers who need to port something to Linux but don't want to go through the hassle of setting up a dedicated instance themselves .. build-servers that need a full Linux setup, etc.

Might be good for folks who have very slow computers, or non-usable machines (iPads/tablets/phones/etc.) who nevertheless still need access to a Linux environment for school or work, or even just for the fun of learning Linux for the first time without much hassle.

Its certainly easier to use/setup an instance than some of the other options out there, although things seem to be pretty competitive in this space .. so who knows how long icebergs.io is going to be around.

I've bought a basic plan, anyway .. good for me to have my co-developers using this to build our project code without requiring a big fuss with setting up a PC/VM-instance/whatever...

In short: it can be used to do whatever you might like to do with a Linux workstation. So: quite powerful, then ..


If you are porting something to linux surely you will want to test it on a real VM at least? Those are pretty trivial to set up and are free...


This is a real VM. The likelihood that if it runs on here, it'll run on a 'real Ubuntu instance' is quite high.


But why one would pay for a VM as a SAS when you can install one for free in a just a few minutes on your own machine?


Maybe your machine isn't good enough for the VM? Lots of folks have low-budget, slow laptops that could still nevertheless benefit from having access to a decent Linux workstation environment.


So you suggest this is a good use-case because you can run Linux in a recent Firefox on an old machine better than you can run it natively?!

Have you run a recent Firefox on an old machine for that matter?


Interesting offering. I assume it runs on the server, with some kind of remote desktop (VNC or similar)?

Back in 2000 I was involved in a start-up company doing that [1]. It failed because it was ahead of its time -- very few people had broadband, and the numbers didn't really add up, when you think about the cost of hosting the servers. (That's what we like to tell ourselves -- maybe it was also a terrible idea!)

[1] https://rwmj.wordpress.com/2014/03/26/officemaster/#content


That's right! Cool!


2015 is the Year of the Linux Desktop in the Browser.

I ... really didn't see this coming.


I have been looking for a solution to do web development in the cloud, so that if lose my computer I can continue right away from another terminal, or I can also code from my iPad or check all my stuff from my smartphone or whatever. However your product is not suitable for my use case because I do not need a lot of computing power, for that I ssh to my AWS instances. What I would need from a remote OS is to be cheap and of course without time usage limits. The closest thing that I have seen to what I need is this Multiplex project: https://www.reddit.com/r/SideProject/comments/3jvwj6/multipl... . Just my 2 cents!


I agree with your 2 cents, so I guess that makes 4 cents if we combine our cents.

Most tasks I would do remote require minimal power. It would be great to have a cheap plan with unlimited usage but reduced access to resources (slower cpu, less RAM, etc.).

I haven't tried it myself, but I think it would make more sense (at least for me) to get a 5-dolla droplet from Digital Ocean, install ubuntu + xfce + vnc and remote into that through an app (such as, VNC Viewer for iPad or similar).


The problem is that every remote desktop solution I have tried works quite slow and laggy. It does not feel as if you are sitting in front of your computer at all. Has anybody experienced the opposite? (I haven't tried this iceberg.io, so maybe theirs works ok) And it seems it does not really make sense to render all the graphics in the backend machine and got them sent over the Internet.


I can't speak to the second part of your post, but I definitely agree with the first part. That is, in my experience, I have found remote desktops to be somewhat sluggish/poor quality gfx. I assume these are trade-offs for connecting to a machine via a network/internet.


Did you try this one? I'd be keen to get your feedback.


I had the same initial reaction, however I did sign up for the free plan with a great deal of skepticism. The performance was actually quite impressive, all things considered. Since I already have a significant amount of virtual and dedicated infrastructure at my disposal, and I live most of my life on the command line, I don't have much of a use for it. That said, it does seem like a very neat concept, and if I had more options for distributions and desktop environments, I'd consider renting one if only as a test machine for the rare graphical software I do run.


I agree. This is the main feedback I've been getting today- make it cheaper- so I will be. It needs to move to a cheaper platform; that way I'm hoping I can make it $10 a month for unlimited hours. Would that be good value?


I use to do something similar from late-'95 to early '98 using DOS, ANSI BBS dialer, 56k modem (EDIT: 386DX, 4mb RAM). Would dial in directly into a Linux terminal (it might've been Unix) - pure, whopping fast, text-base experience. The server did the heavy lifting, including access over a T1 - I only received the formatted text results.

Lynx was my main browser (effective at the time, simple html). Pine for email. Don't recall what I used for Usenet, editors, file managers and some other stuff. Copy/paste and some automation using DOS tools & TSRs.

I did this out of necessity at the time but later moved over to Win98. Finally embraced Linux this year as my full-time OS so this site has a stronger appeal.


Every minute you use it is one minute of compute time? So you actually get only 25/h of usage for 9.99 per month? Spread across two instances.

I am quite interested in such a solution but the price point seems high. With at least 8*25 per month included it would be great.


Does anyone know what is used to offer the remote desktop functionality in HTML5?


They appear to be using noVNC https://kanaka.github.io/noVNC/


I don't know if this is what they use, but ThinLinc[0] from Cendio supports an HTML5 interface.

[0] https://www.cendio.com/thinlinc/features/html5


I do recall encountering a similar X-server--HTML-bridge in the early 2000's. It also was a remote server with store for working files type of service, but free as I recall.


I assume a benefit is that, using icebergs.io, you could run/access linux on a lower spec machine?

So for instance I've heard it would be difficult to install linux on a macbook 2015, but using icebergs through your browser you could do so. Correct me if I'm wrong.


You wouldn't want to use this as a primary desktop, it would be like watching a YouTube video of your computer screen.

Linux runs on very modest hardware, you shouldn't have any issue running it on a powerhouse like a 2015 Macbook if I have successfully run ElementaryOS and Ubuntu on my Mid-2011 Macbook Air!

Even virtualizing Linux on top of OS X using software like VirtualBox would likely still be preferable to using browser-based VNC to a cloud desktop (and free). I have a KVM server I use for web development so I'm often in there via VNC using the desktop. It's not ideal but it works.


This is perfect for me guys. Nice work! I travel a lot and many times the SSH ports are disabled in the networks that I use, so having a GUI over HTTP like this is very helpful for me. Only downside is the cost, I think it could be a lot cheaper.


You can use SSLH and other similar software to multiplex HTTPS and SSH (along with a few other protocols) on the same port, so if 443/TCP is allowed, you can just use SSH.


I agree. It's hard to wrap my head around the pricing. I can use my DigitalOcean and just install a VNC. I see where you are going with this though. I long for a future where you can achieve desktop-like performance in the cloud.


I agree. I'm trying to reduce the pricing, but it's stuck to AWS pricing on the backend. Working on it though.


VNC is terrible. I can't imagine you've used anything like this in a long time because things are moving in this space.


Can you share your experiences of better alternatives? Not hard to imagine VNC has been substantially improved on.


Spice works pretty well: http://www.spice-space.org/



I'll add, these are t2.medium instances; which are mid-range (about 4x the size of the cheapest digital ocean instances).


What's the latency on this thing?

Also, I've recently looked into remote desktop software, does anyone know of a good remote desktop software with very low latency through LAN? How low can it get? <50ms?


I'm using X2Go[0] through LAN and it works very well. Just make sure you are using a compatible desktop environment[1]

[0] http://wiki.x2go.org/doku.php/start

[1] http://wiki.x2go.org/doku.php/doc:de-compat


Hows the latency? Can you move the mouse naturally? That's my biggest concern.

Also, on LAN can you run it at lossless / no compression? How's the latency on that?


On my LAN I don't notice any latency at all. The mouse movement is natural.

Regarding compression: I've set to the best quality and never had any problems or notable latency.

You should give X2go a try. It's simple to setup up[0].

[0] http://wiki.x2go.org/doku.php/doc:installation:x2goserver


Thanks, I'll definitely check it out!


It's somewhat 'not-the-intended-use', but I recently just started using Steam in-home streaming with a workaround to make it stream my entire desktop. It's not brilliant for text and Windows-only (as host), but ridiculously fast. It's just a H264 stream, GPU-encoded, and simply works much better than any other remote desktop solution I've tried.


Hows the latency? Can you move the mouse naturally? That's my biggest concern.


Wouldn't the latency depend on your location and the location of the server where its hosted?

To answer your second question Teamviewer works good for us, we use it heavily in our office on linux desktops.


The latency depends on your connection, but on a commercial internet connection, you're looking at <50ms. Anything under 100ms is quite smooth.


For a moment I thought this was a HTML5 UI that spoke to a linux instance. I'm not sure what I'd use it for, but it'd be cool tech.


For a moment I thought it was Linux running in a browser like this:

http://bellard.org/jslinux/

As far as I can see it is what you think it is - a web based graphical remote desktop to a remote Linux instance.


I believe this is using VNC?

I was thinking something like a totally custom shell/thin client that ran in a browser and spoke to a linux instance over the network.


I had the same thought - that someone had taken jslinux and made it run a full DE.

I was somewhat disappointed.


Is that not what this is?


Works great, I can start and use WebStorm faster on the server than locally on my old Core 2 Duo laptop (with SSD).


I want to run a similar free service for Windows NT 4, but finding an HTML5 client for RDP v4.0 might be hard.


Sounds a bit like http://rollapp.com


How does this work? Is this some kind of Linux VM with an XFCE interface that runs in the browser?


The VM's on their server, you're using it via some kind of HTML5 VNC/RDP client.


It's for webkit based browsers only. The cursor cannot move when I use Firefox.


Crazy stuff.


Why does it seem wild to you?




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

Search: