Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

VM Enables 'Write-Once, Run Anywhere' Linux Apps

Posted by Zonk on Sun May 27, 2007 06:16 AM
from the i-run-so-far-away dept.
An anonymous reader writes "A startup will soon launch 'a kind of holy software grail,' according to an article at LinuxDevices. The dual-licensed technology is claimed to enable more or less normal Linux applications to run — without requiring recompilation — under Windows, Mac, or Linux, with a look and feel native to each. 'As with Java, Lina users will first install a VM specific to their platform, after which they can run binaries compiled not for their particular OS, but for the VM, which aims to hide OS-specific characteristics from the application. Lina comprises a platform-specific application that virtualizes the host PC's x86 processor... A lightly modified Linux kernel (2.6.19, for now) runs on top of the VM. Under the Linux kernel is a filesystem with standard Linux libraries modified to map resources such as library, filesystem, and system calls to analogous resources on the host platform.' Further details, including an entertaining video or two are at OpenLina.com"
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Lofty Goals Indeed (Score:5, Insightful)

    by WrongSizeGlass (838941) on Sunday May 27 2007, @06:22AM (#19290879) Homepage
    FTA

    "We're trying to change the economics of the software industry. Our hope is that in the next two years, all these companies that are starting with Microsoft APIs will start with Linux instead."
    That is a key mindset to getting Linux out of its niche and into the mainstream. Thinking Linux first can't be a bad thing at all.

    I hope this lives up to its hype (and promise). I may have to finally break down and get an Macintel (much to the chagrin of my PPC army).
  • Humor (Score:5, Funny)

    by Anonymous Coward on Sunday May 27 2007, @06:26AM (#19290895)
    From the LINA FAQ:

    Q: What does LINA stand for?
    A: LINA is not an acronym.

  • by ozric99 (162412) on Sunday May 27 2007, @06:30AM (#19290913) Journal
    Q: What programming languages is LINA written in?
    A: For performance reasons, we've written LINA in C and C++.

    Why not just write the VM in Java, then it'll be truly portable, right? Right..?

  • by zmotula (663798) on Sunday May 27 2007, @06:53AM (#19291005) Homepage

    run (...) under Windows, Mac, or Linux, with a look and feel native to each
    People should realize that this is impossible to do. This sounds like look&feel was something like a skin you can change at will, but it is not. Different systems have different requirements that cannot be changed programmatically, like keyboard shortcuts, icons, file placement, GUI metaphors and so on. If you want an application to feel native, simply design the GUI according to local customs, there is no other way.
    • Re: (Score:3, Insightful)

      In fact, Java does a pretty good job of keeping the GUI looking same as much as possible on different platforms. Reading through the website, I dont see any feature that makes it anything more than a Java wanaabe.

      Any body seen anything apart from this effect?
    • by suv4x4 (956391) on Sunday May 27 2007, @08:07AM (#19291427)
      People should realize that this is impossible to do. This sounds like look&feel was something like a skin you can change at will, but it is not. Different systems have different requirements that cannot be changed programmatically, like keyboard shortcuts, icons, file placement, GUI metaphors and so on. If you want an application to feel native, simply design the GUI according to local customs, there is no other way.

      That's one thing (and you're totally right). And second:

      As with Java, Lina users will first install a VM specific to their platform, after which they can run binaries compiled not for their particular OS, but for the VM, which aims to hide OS-specific characteristics from the application.

      Which left me thinking... "and unlike Java.. it does what?".

      We've got Java, which has matured over the years, we've got .NET / Mono. And we got Cygwin, which allows you to use the Linux API on Windows.

      Looks like that startup has agenda to brings more of the Linux API to Windows, and thus help Linux become more mainstream as a development platform. But agenda does not business or money make. They've entered a crowded market, offering little new except impossible promises for native look and feel.
    • Re: (Score:3, Insightful)

      ---
      if (style == Style.Windows) {
      preferences_menu_item.name = "Options";
      add_menu_item(preferences_menu_item, tools_menu);
      } else {
      preferences_menu_item.name = "Preferences";
      add_menu_item(preferences_menu_item, edit_menu);
      }
      ---

      Then just use Tango icons and icon styles in your application (they look good, though they aren't colorful enough for KDE's typical style or cartoonish enough for OS X's typical style, but I doubt anyo
  • by prestwich (123353) on Sunday May 27 2007, @07:11AM (#19291115) Homepage
    From their FAQ:

          'A: LINA is dual licensed. For non-commercial users, LINA is available under the GNU General Public License, Version 2.
                  If you wish to use it commercially, please contact us to find out more about the LINA commercial license.'

    Erm I'm sorry?! You can't stop someone using a GPL licensed program for commercial use.
    Do they mean to say that if you want to sell it or do none-free changes then they will sell
    you a non-GPL license?

    • Re: (Score:3, Informative)

      This is an issue if you want to distribute LINA with your application, or at least a possible issue. Note the Classpath exception to the GPL which considers dynamic linking to produce a derivative work.

      If this turns out to be a serious issue, we can write a wrapper around standard Qt with a compatible ABI/API so you can just use autotools, develop for multiple Linux distros, and then just test against LINA. Compile it on any Linux you want and deploy on LINA.
    • by 3seas (184403) on Sunday May 27 2007, @08:39AM (#19291577) Homepage Journal
      There are several development tools that have such a license. That if you are developing GPL software then the GPL license applies, but if you are developing comercial closed source then you pay.

      Though this is a Virtual Machine, not the software that runs on it, you typically have to have some sort of clearance or approval to install and run such software in a large company. And having a paper trail of purchase or licensing fits the traditional business model. So yeah, if they actually produce, it makes since, however...

      How long will it be before someone gets the idea to simply put it all on a memory stick and/or live CD/DVD such that they can take it with them, yet run it on top of other running OS's, that would then allow the best of both worlds (let the best app win regardless of OS)....

      BTW, a windows version of D-BUS is being developed and in a case like this, it can be what integrates the two system applications. And that is what will make it really useful.

      Imagine taking your personal tool box to work that you keep and which adds to your value to the company.
         
  • Qt? (Score:3, Informative)

    by IceFox (18179) on Sunday May 27 2007, @07:12AM (#19291123) Homepage
    So it looks like right now it mostly supports Qt with some gtk stuff coming along. Anyone else find that odd? Today you can compile your Qt apps on Linux, Mac and Windows and get native look and feel. Why would I want to wrap that with a vmmachine? Just yesterday I ran across an app written in Qt for HDR imaging [sourceforge.net] that is written with Qt and is for the mac, linux and windows.
    • by kollivier (449524) on Sunday May 27 2007, @09:39AM (#19291893)
      You can also use wxPython (http://www.wxpython.org), which seems to start a lot faster than LINA (look how many times the LINA app bounces in the dock before it starts), actually *comes with* Mac OS X Tiger, uses native OS controls whenever possible and as of 2.8.3 has a library called SizedControls which automatically applies OS HIG-compliant sizing and borders to your windows and controls on Windows, GTK/GNOME, and Mac (disclaimer: I'm the author of said library). Plus, unlike Qt and LINA, wxPython/wxWidgets is free for commercial development as well as open source.

      So I've been using this 'holy grail' for years, but maybe the VM slowdown and commercial licensing will appeal to some people. :-)
  • by Anonymous Coward on Sunday May 27 2007, @07:14AM (#19291127)
    Imagine a world where everyone wrote software for virtual machines - the problem occurs when people write software for different virtual machines. Eg: if Pidgin was written in Java, Firefox in Mono and GNOME in Python, to run my ordinary desktop I would suffer the overhead of 2VMs and an interpreter.

    Besides, its not hard to write cross-platform C++ code.
    • by master_p (608214) on Monday May 28 2007, @04:19AM (#19298407)
      VMs should not exist. Source-code level compatibility is more than enough to make cross-platform applications. The only benefit of a VM is run-time optimizations, as the code is translated.

      VMs exist because no one dared to a make a C++ like language that guarantees source-code level compatibility in all platforms and has garbage collection.

      And the premise "write once, run everywhere" is totally flawed. If you have N architectures, you need N virtual machines. If you go the direct route (i.e. no VM), then you need N compiler back-ends. Since the virtual machine is actually a compiler back-end (only executed lazily), I see no benefit from using VMs.
  • Dependencies? (Score:3, Interesting)

    by ndogg (158021) <the.rhornNO@SPAMgmail.com> on Sunday May 27 2007, @07:22AM (#19291179) Homepage Journal
    I don't understand how it deals with dependencies, especially for GUI applications for that "native L&F." I could understand statically compiled binaries, but it obviously must use some shared objects on the OS because in the introduction video, Windows still required Cygwin.

    I don't doubt that this will be useful, but there's just too much hype surrounding it right now, and I can't tell the difference between the truth and the embellishments.
  • by jcr (53032) <jcr@mac. c o m> on Sunday May 27 2007, @07:56AM (#19291361) Journal
    This time, for sure!

    Sorry, that claim has been bullshit for decades.

    -jcr

  • If you compile different versions, or if a machine automatically translates for you, that doesn't mean you don't have to test on different platforms. If you expect to have a robust product that runs on linux, windows, and mac, you have to test it on all 3. I think people are confused that this will somehow eliminate that step, so you'd save yourself some time. If it's all one source base, then you'll have tons of stuff like this:
    -if running mac, then do this fix, if running windows then do some other fix, if running linux then do some third fix
    so either your code gets very large and unweildly, or you have 3 different versions and let them branch a bit. Either has advantages and drawbacks, but neither is what VM promises in theory.

    Remember: "in theory, there's no difference between theory and practice, but in practice, there is."
  • by Noiser (18478) on Sunday May 27 2007, @09:02AM (#19291705) Homepage
    I can understand the hack value, but why, for the love of God, would i want to run binary Linux apps on Windows? Didn't they have anything better to waste four years on?

    There are some binary Windows apps, which could make life easier (albeit somewhat unethical in FSF terms) for Linux users, such as MS Office and IE6, and AFAIK that's what WINE is for (although i've never had the dire need to actually try it). But vice versa??

    All the FOSS Linux apps that are source portable - OpenOffice, Perl, Mozilla, SVN, Audacity etc. - already found their success on the Windows platform. Is someone weird enough to make an application which is binary-only *and* Linux-only?

    Or am i missing something?
  • I'm sorry, but the number of times I've seen the "Write Once, Run Anywhere" claim made for new "paradigms" is fairly scary. There are limitiations to all of these approaches. In this case, running software in complete OS emulation mode denies access to hardware features that have not been successfully ported to the virtual environment, enforces limits of the particular underlying VM hosting operating system in fascinating ways, and absolutely punishes the performance of any disk-accessing operations.

    There are uses for virtualized environments, but they're hardly a new approach to code portability.
    • Re:Huh? (Score:5, Insightful)

      by eldavojohn (898314) * <my/.username@@@gmail.com> on Sunday May 27 2007, @06:25AM (#19290889) Homepage Journal

      Why are people afraid of recompiling? It is pretty painless if the source is packaged well.
      If you can get my mom to understand that sentence, I will pay you $500.

      Also in how far is this groundbreaking? Seems to be a pretty forward and not too complicated engineering task.
      Interestingly enough, the word 'groundbreaking' was not used even once in the summary or the article. News doesn't have to be groundbreaking. It could be a very simple old idea used in an ingenious way to be a very useful tool for the masses. Like this, they aren't hiding that they're kind of copying what Java does. But, you know, if it was such an easy engineering task, why haven't you done it? I'm very interested in where this goes.
      • Re:Huh? (Score:4, Insightful)

        by eean (177028) <slashdot&monroe,nu> on Sunday May 27 2007, @10:29AM (#19292205) Homepage
        The users don't have to compile silly.

        With something like Qt, its "write once, compile three times". Distribute binaries for Linux, OS X, Windows. All with a native look and feel, using native compilers and libraries.

        Its not clear how this thing works with the GUI. Is it a new toolkit? Is it a hack of the Gtk toolkit? (I thought it was funny how the demo talks about the "native Gtk looknfeel from within what looks like KDE).
        • Re:Huh? (Score:5, Insightful)

          by FishWithAHammer (957772) on Sunday May 27 2007, @06:50AM (#19290995)
          "Dear user: Insert the CD. Type make all; make install. Press return and go for coffee."

          It should be

          "Dear user: Insert the CD. Click 'Install'. Click 'OK' and go for coffee."

          See the difference from a user's point of view?
          • Re:Huh? (Score:5, Insightful)

            by LiquidCoooled (634315) on Sunday May 27 2007, @07:12AM (#19291121) Homepage Journal
            Insert CD.
            Phone relative because the CD does nothing.
            Find Install and click it.
            Cancel the dialog and click the other install.
            Phone relative again and ask them why its going to take 3 hours.
            Make coffee.
            Return to computer and switch it off (thinking they were switching it on because the screen was blank)
            Ring relative and ask why its not worked.

              • Re:Huh? (Score:4, Informative)

                by ZorbaTHut (126196) on Sunday May 27 2007, @03:00PM (#19294089) Homepage
                Actually, most Windows apps take advantage of autoplay, which means it really is "put the CD in, push the big flashing button that pops up, click next a whole lot because none of that text could be important, wait".

                To my knowledge, Linux doesn't have autoplay. While I agree that autoplay is awful, it does make things easier for endusers.

                I don't know if OSX has autoplay or not, but in any case with OSX it tends to be "put disc in, double-click the disc icon that just showed up". I haven't seen any equivalent for Linux - you usually have to find the install program or similar. God help you if you have a package manager - then you have to search for what you want to install!

                People's brains freeze up when confronted with a computer. They'd much rather just put a shiny disc in and let the magic computer do its work. Seriously, you could sell "Linux application install discs" which are just a pack of CDs where each one has "aptitude install gimp", maybe a hudnred bytes each, and people would buy them.
                • Re:Huh? (Score:4, Insightful)

                  by cheater512 (783349) <nick@nickstallman.net> on Sunday May 27 2007, @03:59PM (#19294497) Homepage
                  Considering I've never ever installed a program from a cd under Linux dont you think autoplay would be useless? :P

                  I think package management is far superior to cds. For one you cant lose your package management and spend half a day looking for it.
                  • Re:Huh? (Score:4, Insightful)

                    by ZorbaTHut (126196) on Sunday May 27 2007, @04:16PM (#19294649) Homepage
                    Most people, I suspect, want plastic discs to install software off. It's far easier conceptually to deal with. Linux really doesn't handle that case well.

                    Personally, I agree - I vastly prefer package management or online downloading. I suspect there will be some user re-training needed to get most people to understand that, however.
              • Re:Huh? (Score:5, Insightful)

                by toddestan (632714) on Sunday May 27 2007, @05:18PM (#19295137)
                Ah, you've used Windows, I see. Installing things is much easier on pretty much every other platform (including macosx, most of the linux-based platforms, and most of the BSDs).

                What are you talking about? One of the big problems in the Windows world right now is that applications are so easy to install, that the user often has to run special software just to keep applications them from installing all by themselves!
          • Re:Huh? (Score:4, Insightful)

            by alexhs (877055) on Sunday May 27 2007, @08:07AM (#19291423) Homepage Journal

            install.sh
            ----------
            #! /bin/bash
            make && make install

            What was your point, again ? Oh yes, there is no "Click 'OK' " step, do you care ?
            • Re:Huh? (Score:4, Informative)

              by FishWithAHammer (957772) on Sunday May 27 2007, @09:21AM (#19291795)
              I'll say it very simply.

              Do not force end-users to the command line.
              • Re:Huh? (Score:5, Interesting)

                by AusIV (950840) on Sunday May 27 2007, @09:58AM (#19291999)

                I'll say it very simply.

                Do not force end-users to the command line.

                This mentality bothers me. While the command line is intimidating at first, and end-users should never have to learn how to navigate the command line, if I'm giving instructions, I would much rather have someone using a command line.

                For example, a few months back, my girlfriend wanted me to put Linux on her computer. She was saving up for a Mac, and her anti-virus had expired on Windows. She needed a web browser, office suite (She used OpenOffice on windows to begin with), and an instant messenger. I had her install Kubuntu, answering a few questions when she had them. Once it was installed, I pulled up a terminal to start installing some programs and codecs with apt. She was deathly afraid of learning the terminal, so I started stepping her through the installation with Adept Installer. The instructions for installing Flash went something like this:

                - Click the "K"
                - Click add/remove programs
                - Type your password
                - Check the box next to "unsupported"
                - Check the box next to "Proprietary software"
                - See where it says "KDE"? Click the down arrow and select "Any Suite"
                - Type "flash" in the search box
                - It's not in multimedia? Try "Others" I guess.
                - Check the box next to "Macromedia Flash Plugin"
                - Click "Apply Changes"
                - When it's done, click "quit"

                Alternatively, I could have told her:
                - Click the 'K'
                - Hover your mouse over 'System'
                - Click 'Terminal Program (Konsole)'
                - Can you remember that? Next time I may just say "Open a Terminal"
                - Type "sudo aptitude install flashplugin-nonfree"
                - Type your password

                I explained to her that I didn't expect her to learn how to use the command line on her own, but it's a lot easier for me to tell her a command when I'm giving instructions. She hasn't used the terminal once on her own, and she's enjoyed perusing the programs available through Adept Installer, but she knows if I have to give her an instruction, it will be a lot easier to use the command line.

                I realize it's initially intimidating for users to have to open a terminal, and I'd like to see graphical interfaces for everything a normal user would need to do, but I also wish we could get the average user to where they realized the set of instructions is a lot shorter when someone gives you a command than when they have to explain dozens of clicks.

                • Re:Huh? (Score:5, Insightful)

                  by Tickletaint (1088359) on Sunday May 27 2007, @10:23AM (#19292165) Journal
                  Telling people how to fix problems fosters dependency on you. Showing them how to do it, in a manner that doesn't take years of command-line dorkdom to understand, is probably far more helpful.

                  Though in this particular case, if your girlfriend's about to get a Mac anyway, maybe it doesn't matter so much. I'd be more worried about getting dumped once she realizes she doesn't need you to fix her computer anymore. :)
                • Re:Huh? (Score:5, Funny)

                  by the_mushroom_king (708305) on Sunday May 27 2007, @10:53AM (#19292383)
                  This is slashdot. You lost me at "girlfriend".

                  WTF is that?

                • Re:Huh? (Score:5, Insightful)

                  by TheWanderingHermit (513872) on Sunday May 27 2007, @04:35PM (#19294825)
                  I would much rather have someone using a command line

                  And therein lies the problem. You would rather have them using a command line. They don't want to. When you have a GUI, you always have prompts and a safety net. You can say, "Click on the button that says 'Change Setting.'" They have an automatic double check because there is something that matches, exactly, what they're being told to do. They have limited choices because they're working from a menu or from components and when one matches what they're told to do, they have some kind of confirmation they're pressing the right button. When you say, "Now type this," then you can hit any number of snags and they know it. You can tell them what to do and they can use a single quote instead of a double one or hear the word wrong or mistype it and, from their point of view, they don't know what's going to happen if they make a mistake.

                  You are much wiser than most developers I've seen post here who want to blame the uses for not knowing everything they know and you've got a good point. You and I can often move much more quickly with a console, but for users, the mere thought of having to type commands is frightening. They're looking at a blank screen with no feedback until they hit and then it could be too late.

                  You've realized, though, that it isn't about what you or I want, but what the user can handle or take care of on their own. That's the problem: It's our job to give them what they can handle. That is rarely a console. With my clients, before I got my software up to the point I wanted it, I had them install RealVNC on their computer and used a tunneling program I wrote in Java so it would go through their firewalls, then had them add me, and I configured RealVNC so it would only run when they wanted to run it and so it had a strong password. (And before anyone starts screaming, I'm simplifying and leaving out discussions with their bosses and IT departments about safety.) When they had problems, I just had them run RealVNC and add me, then I could fix, in less than 5 minutes, what could take 45 minutes or more if I were telling them what to do. When I finally got my own program to where I wanted it to be, that wasn't an issue anymore since I had enough failsafes they didn't need that kind of help anymore.
              • Re:Huh? (Score:5, Insightful)

                by morcego (260031) on Sunday May 27 2007, @12:35PM (#19293095) Homepage
                Lemme tell you a small story here.

                When MS released Windows 3 was when it started to become known in Brasil. At the time, there was a TV show called "Confissões de Adolecente" (no need to translate, since the name is not relevant). At the time, there was an episode where the main character was bitching an complaining about having to use a mouse and click on stuff. After all, if he wanted something, all he had to do before was to type the command. Now, he had to search for the icon, click on it, than click on something else etc.

                So, to translate your comment into something that really means something (and is actually true), what you mean is:

                "Do not force end-users to do something different"

                Here is Brazil we have a saying for cases like this, which roughly translates as: "If you change the color of the grass, the mule will starve to death"
        • by Anonymous Coward on Sunday May 27 2007, @06:54AM (#19291009)

          "Dear user: Insert the CD. Type make all; make install. Press return and go for coffee."
          Your attempt at simplifying building from scratch amuses me. First off, you put the period in your instruction type font which I'm sure my tech inept mother would type into the console. Which would result in:

          make: *** No rule to make target `install.'. Stop.
          And how would she know to open a terminal? Would she know how to open a terminal?

          Second, what about dependencies, how does she know to read the README file or anything else to figure out what she needs to build this source. You don't exactly include all the source of all the libraries you coded with, do you? Rarely have I seen a project coded from scratch with no dependencies.

          See, the issue here isn't that she can't be instructed like a monkey to hit a button. The problem here is that if something goes wrong, she's out of luck. I mean, as it is, the concept of double clicking what you downloaded to install it was a tough one to drive home. And even now I worry about her willfully installing viruses or malware on the home computer. Because she just doesn't understand the concept so well. When you ask someone to build from the source, you're pushing them quickly into something they don't understand and it's just going to result in a bad experience. The ease of use for software is actually more important to most people than its efficiency or anything else. Why do you think Java is so popular?
          • by dbcad7 (771464) on Sunday May 27 2007, @10:41AM (#19292299)
            Ok, what I gotta point out for you and whoever first brought up their mom in the whole compiling issue in the first place...

            If your mom is technically savvy enough to have created an application that is now to be compiled from source to different platforms then she obviously understands the original sentence.. and the typo... Unless she is a programming savant who creates source code not knowing what it is.

            Again.. the original poster was talking about a (developer of an app) (compiling binaries from source) (for different platforms), not an end user or your mom.

        • Re: (Score:3, Interesting)

          would it really be that much of a step for ./configure && made && make install to be compiled into a nice little gui so that gradma can just double click the CD and have it compile (automatically installing any dependencies), install, and then run?

          There is no reason why compiling from source should be any more difficult than installing, it's just that no one's gotten around to making a simple graphical compiler.

          Although people might complain about why it takes 48 hours to install OpenOffice.
          • Re:Huh? (Score:4, Informative)

            by Blakey Rat (99501) on Sunday May 27 2007, @12:24PM (#19293023)
            Given, I'm running a PPC machine, but from my experience with open source on Linux and Mac OS X... because something always, ALWAYS, goes wrong the first time you do "configure" or "make?" Always.

            Either it's missing some libraries (my experience with GD), or it requires SUDO permissions but the instructions didn't say it required SUDO permissions, or the path its writing to is wrong, or it has a Good Ol American compilation error... something always goes wrong.

            If you want to write a GUI to cope with every single possible error in the 'configure' and 'make' process, more power to you. But I doubt it's possible for any computer program to handle every case in an automatic fashion.
        • Re:Huh? (Score:5, Insightful)

          by Wdomburg (141264) on Sunday May 27 2007, @08:31AM (#19291539)
          "Dear user: Insert the CD. Type make all; make install. Press return and go for coffee."

          And come back to:

          make: *** No rule to make target `all'. Stop.
          And that's assuming the user knew enough to open a terminal and navigated to the appropriate directory, which you left out. Let's say after they got that error they look at INSTALL and discover your instructions forgot to include 'configure', and now they get:

          configure: error: Enchant library not found or too old. Use --disable-spell to build without spell plugin.
          Let's say they go ahead and disable spell-checking, even though it would be a useful feature. They type 'make install' again, like the instructions said, and get:

          cp: cannot create regular file `/usr/local/bin/foo': Permission denied
          Maybe they're not quite frustrated enough to give up just yet, and they do a google search and discover that you forgot to tell them to run as root. Hurrah! It installed! They type the application name and get

          cannot open display 0:0
          Whoops, still root. Maybe they realize this (smart user!), exit, and try running again as themselves. Oh, damn, the application installed in /usr/local and there's an old copy in /usr, so they end up launching the old copy instead. Even if that wasn't the case, most users are going to want menu entries and icons without having to set them up manually.
        • Re:Huh? (Score:4, Insightful)

          by sortius_nod (1080919) on Sunday May 27 2007, @09:02AM (#19291697)
          This is exactly why linux users get a bad wrap... wake up, seriously, if everyone was a tech guru you wouldn't have a job...
    • Re:Huh? (Score:5, Insightful)

      by CdBee (742846) on Sunday May 27 2007, @06:35AM (#19290929)
      "download: install: run".

      That's what we do! It isn't 1979 anymore and having to compile source code isn't something the average user should ever be expected to do....
    • Re:Huh? (Score:5, Informative)

      by hey! (33014) on Sunday May 27 2007, @07:05AM (#19291083) Homepage Journal
      Well, recompiling an application doesn't port it to a different OS.

      The work needed to abstract the fact that you are running on Windows or MacOS instead of Linux is highly repetitive, and therefore a good target for factoring out into some common -- thing.

      The most accepted way for this is to develop a framework with WxWidgets. But what if you don't like the framework? What if you need a different framework? What if your language is not supported by the framework? Integrating a VM to the underlying OS is an alternative.

      Another thing that I think is useful in this approach is potentially dealing with coupling of unrelated applications via common library dependencies. If one application requires a later version of a library than another is compatible with, you can't run them both easily on the same machine. Anybody who used non-Ubuntu repositories on Ubuntu has run into this.

        • by Blakey Rat (99501) on Sunday May 27 2007, @12:17PM (#19292985)
          Qt if you want a good one.

          I'm sorry, have you ever USED a Qt program on anything other than Linux? I've yet to see a single Qt application that doesn't look and behave like ass on Mac OS. (That said, I've never seen a wxWindows one that didn't look and behave like ass on Mac OS either.) My personal favorite is RealBasic, since I've seen RB apps that look and feel native on Mac and Windows, but you'll never get the open source community to use it because it's proprietary.