A hosted Icaros. Why not? After all, drivers development for native AROS is quite slow and many developers would find a hosted Icaros environment extremely comfortable to test their applications, so I started adding Linux, and also Windows hosted options to the distribution. But, you know, having Icaros running all alone in a window didn't satisfy me. I made Icaros to show that AROS is usable every day, but Windows users have Photoshop and millions of other image editors: why should they use LunaPaint or ZunePaint? Linux users have Inkscape and LibreOffice, why should they use ZuneFig, Cinnamon Writer or Ignition? Both have Firefox and Chrome... why should they browse the web with OWB? Let's get real: being AROS or Amiga fanatics wouldn't just be enough to use our programs instead of the "competitors" when the others are easier to use, do more or just work better in many cases.
"Never give up, Paolo!"
I thought a lot about that, and I understood that the question was wrong. What Icaros Desktop can do inside of Linux or Windows does not matter; on the contrary, what Linux and Windows may do outside of Icaros Desktop does! If I found a way to use host applications along with native ones - I thought - people would have been able to speed up their work and get the best of both worlds. The answer to this question is now part of Icaros Desktop 2.2 and it's called HostBridge! (Yes, in the end I chose that name, even if I didn't initially like it).
HostBridge allows to "integrate" host applications into Icaros Desktop, allowing people to invoke them straight from the AROS shell, from Wanderer, Magellan, AmiStart or any other AROS file manager or launcher dock. In the top left corner of this post I'm showing a couple of notes I wrote on paper before actually starting to code. There were many compelling missions that HostBridge had to achieve, but the result is really encouraging (keep in mind this is just the first release).
First of all, it must run on any Linux distribution and Windows. I initially asked Pascal Papara if he would let me use AEROS' lx command, but he sincerely answered to me that lx requires so many changes to the host system, that I would have ended up into making a complete Linux distro, exactly like he did. That's not the goal I had in mind: hosted Icaros must try to adapt to users' operating systems, not force users to change their habits. Moreover, lx couldn't run with hosted Windows, so I needed a completely different approach. I ended up making a very simple "icaros daemon" which runs on the host system, looking for a command to execute, and run it when AROS passes it. Plain, easy and, best of all, good for any host system.
Then, it must feel natural to use from the AROS side: when you tell a Linux or Windows program to open a file, it expects that your file is stored in a reachable folder of your host system. If you simply tell Photoshop to open an image stored in SYS:Temp/MyDiary, Windows would have to complain that the image path, that's so easy to understand for AROS, is completely meaningless to him. So paths must be converted, but user should not be bugged about this. Having the AROS user entering a command like "hbridge Photoshop.exe C:\IcarosDesktop\Temp\MyDiary\myphoto.png" was not an option to me. HostBridge converts 'alien' paths for you.
"hbscript home:make-live.sh" |
"Photoshop Pictures:deadddreamer_giftgas.jpg" |
"Firefox http://www.icarosdesktop.org" |
HostBridge also allows to add an icon to your integrated apps. This is mandatory to let you run them from Wanderer, Magellan etc. But there is also a way to set a host application as default tool for a single file or for a whole kind of files. This can be done with Migario's wbXcli command and it will be well explained in Icaros Manual.