Oct 24

I want to clarify the situation with Miro and the sun-java6-plugin package.

Prior to 0.9.9.9, if you had the sun-java6-plugin installed and you install Miro, then Miro would crash on startup. For 0.9.9.9, we added a conflict with the sun-java6-plugin package. That means that in order to install Miro, you will have to uninstall the sun-java6-plugin.

I’ve gotten a lot of flack for this fix in the last couple of days–and for good reason: this sucks for users who have that plugin installed. I definitely understand the frustration and we don’t consider this a final solution. (As a philosophical note, most development solutions are not final–most things can be changed if a better feasible option is found and implemented.)

The bottom line is that if you use the sun-java6-plugin plugin, you can’t use Miro. Adding the conflict line to the package makes it more user-friendly when installing Miro because then you’re not stuck in a situation where you have installed Miro, it crashes on startup, and you have no clue why.

We’re interested in a real solution for this problem. Details of the problem are in these bugs:

If you have feasible ideas, add them in the comments on bug 9064 or comment here.

9 Responses to “miro and sun-java6-plugin conflict clarification”

  1. Hugh Says:

    I’ve just installed the RC verison on Gutsy and I must say it is most stable. So thanks for such a great release. With regards to the JAVA plugin…What about using an older version of JAVA? I have JAVA 5 in Synaptic for example.

  2. wguaraldi Says:

    I just added a conflict for sun-java5-plugin because we’ve had reports that that plugin also causes problems.

    A comment in the LaunchPad bug suggests using the icedtea plugin. The package is ‘icedtea-java7-plugin’ and it’s in the Gutsy universe repository.

    I haven’t used it myself so I can’t vouch for this.

    If you use it and don’t have problems in the long term, let us know. It may be a good solution for users who really need a Java plugin for their browser.

  3. forty two and rising… » My new podcatcher…Miro? Says:

    […] crap.  Looks like sun-java6-plugin and Miro have a conflict.  I installed the plugin and Miro crashed.  Looks like older versions have conflicts as well.  I […]

  4. James Stansell Says:

    The icedtea package is a pre-alpha version of Java 7, built on the GPL source released by Sun. Because Sun didn’t release the browser plugin source icedtea uses the gcjwebplugin. Therefore if it conflicts with gtkmozembed it could well do it in a different way than sun-java6-plugin does.

    The conflict looks, offhand, like the browser environment may not be fully configured with what the Java plugin needs. What differences do you see if you compare LD_LIBRARY_PATH with the one setup by the firefox launcher script?

    -james.

  5. Chris Says:

    It seems to me that you could work around it by exporting the JAVA_HOME environment variable yourself for your Miro session, pointing it either to a null path or to your own (GPL’d?) JRE libs. Why crash on arbitrary system environment variables when you can define your own? I don’t get it.

  6. wguaraldi Says:

    James and I traded emails and looked into various environment variables exported by the firefox scripts, but that didn’t pan out.

    We’re still looking for good ideas.

  7. wguaraldi Says:

    Chris: BDK, James and I worked over the issue last week and tried adjusting the environment variables that the firefox script exports before launching the firefox binary. You can see a list of them if you do “firefox –debug” at the prompt.

    I just tried exporting JAVA_HOME, but that doesn’t seem to have any effect.

    We think it might be possible to coerce gtkmozembed into not loading plugins, but we haven’t had any success with that so far.

  8. techmin Says:

    a tip is to duplicate
    /usr/lib/firefox for example
    cp -r /usr/lib/firefox /usr/lib/miro
    after
    cd /usr/lib/miro/plugins
    remove plugin java:
    rm libjavaplugin.so
    after modify mozillaLibPath:
    nano /usr/share/miro/resources/app.config
    mozillaLibPath=/usr/lib/miro

  9. techmin Says:

    An elaborate solution is to use sun-java-plugin for firefox and icedtea for miro:
    if you have installed sun-java-plugin miro and icedtea
    yuou have (in ubuntu system, but i suppose similar on other distros)
    firefox java plugin point to:
    /etc/alternatives/firefox-javaplugin.so
    firefox-javaplugin.so point to
    /usr/lib/jvm/java-7-icedtea/jre/lib/i386/gcjwebplugin.so
    miro use mozilla-javaplugin.so
    this point to:
    /usr/lib/jvm/java-7-icedtea/jre/lib/i386/gcjwebplugin.so

    in ubuntu:
    sudo update-alternatives –config java
    and select sun java.

    after:
    cd /etc/alternatives
    after:
    sudo ln -sf /usr/lib/jvm/java-6-sun-1.6.0.03/jre/plugin/i386/ns7/libjavaplugin_oji.so firefox-javaplugin.so

    duplicate firefox:
    sudo cp -r /usr/lib/firefox /usr/lib/miro
    after:
    cd /usr/lib/miro/plugins
    after
    sudo ln -sf /etc/alternatives/mozilla-javaplugin.so libjavaplugin.so

    and adjust mozillalibpath:
    sudo gedit /usr/share/miro/resources/app.config
    mozillaLibPath=/usr/lib/miro

    A this point you use sun plugin for firefox and icedtea for miro.

Leave a Reply

WordPress. Theme based on Simplism, but without bits I found irritating. I'm still toying with it.