XULRunner Candidate Builds

I have taken a recent set of XULRunner tinderbox builds for intensive testing candidates before the release of XULRunner Please download and test these builds. See the XULRunner roadmap for details about release schedules and future plans.

Atom Feed for Comments 15 Responses to “XULRunner Candidate Builds”

  1. Daniel Cater Says:

    Where can I find some example apps to test with? I thought the obvious thing to try would be Chatzilla, so I downloaded:


    and ran:

    $ ./xulrunner- –app ./chatzilla-;

    and got:

    Error: Gecko MinVersion requirement not met.

    I’m just looking for some apps to play with…

  2. Daniel Cater Says:

    OK, so I found:


    And got some apps working.

    A few points though. Firstly, I did:

    $ ./xulrunner-i686-pc-linux-gnu/xulrunner- –app ./mybrowser-0.2.zip;
    Error: Gecko MinVersion requirement not met.

    Ah, I see, that just appears to be the generic error message… I would have thought just pointing to the xpi (or zip) would work.

    I then extracted and tried:

    $ ./xulrunner-i686-pc-linux-gnu/xulrunner- –app ./mybrowser-0.2/mybrowser/;
    Error: Gecko MinVersion requirement not met.

    I just thought XULRunner would look for application.ini itself.

    However, it did work after pointing to application.ini as did Exch and XULMine.

  3. Robert Marshall Says:

    Daniel: The normal ChatZilla XPIs don’t support XULRunner, however I maintain a package at http://rdmsoft.com/r/stuff/chatzilla/xulrunner which you might find useful.

  4. David Marteau Says:


    I’m using xulrunner for a quite large application for some time now, and the seems OK so far.
    I’va just noticed that the windows version of XulRunner (as the previous releases) is not shipped with the cursors resources that are needed for the -moz-xxx CSS cursor style.

    Than you for you job with xulrunner.

  5. Benjamin Smedberg Says:

    Dsvid, have you filed a bug?

  6. David Marteau Says:

    Done (this is my first bug report !).
    But I couldn’t find an appropriate entry for XulRunner in the “Component” field of the bug report.

  7. Kelly Miller Says:


    I’ve been trying to run this on OSX Tiger and get odd results. Example apps appear but can not grap focus or at least that what it seams. I’ve tried a trivial app on OSX Panther and get the same thing. Any hints on what I might be missing. I’ve been using the xulrunner-bin with the path to an application.ini file as its only parameter.

  8. Navin Says:


    I too tried running it. But it seems that on a Macintosh, the xulrunner needs to be run in an application bundle (as a .app).

    There are some directions for creating such a bundle on http://developer.mozilla.org/en/docs/XULRunner:Deploying_XULRunner_1.8

    The directions there say that we should copy the “xulrunner” executable available in the /Library/Frameworks/XUL.framework to the MacOS folder of the bundle. And configure this as the application bundle executable in the Info.plist file.

    This executable is just a stub which locates the “xulrunner-bin” executable from the XUL.framework in the Contents/Frameworks directory of the application bundle and executes it.

    But there seems to be a bug somewhere in this stub executable code (even in xulrunner It is not able to find the path of the XUL.framework in the Contents/Frameworks directory, corrrectly. So it does not run.

    A temporary workaround is to build the application bundle as mentioned in the abovementioned URL, but don’t add the XUL.framework to the Contents/Frameworks directory. Then the xulrunner stub executable automatically uses the XUL.framework in the /Library/Frameworks folder.

    Hope this helps.

    (Note : I could get the application bundle with the XUL.framework included in it, working with my own custom stub that emulates the behaviour of the xulrunner stub, but in a much more simpler way)

  9. Kelly Miller Says:

    I finally got this working by creating the application directory structure as many tutorials will show you and running the following command:
    /Library/Frameworks/XUL.framework/xulrunner-bin -install-app myAppDirectory

    This creates an application bundle in the Applications folder. I did not have to copy any part of the framework into my source directory for this to work.

  10. Samuel Monsarrat Says:

    Well I finally got our xul application running (sort of) under OSX.
    I can confirm what Navin said, I cannot create a stand-alone app bundle to work under mac OS, it always has to use xulrunner-bin from /Library/Frameworks.
    for what it’s worth, if you run strings on the stub you get (among other things):
    Interestingly, if I do add a Frameworks folder to my bundle, and rsync -rl /Library/Frameworks/XUL.framework to this folder, then xulrunner exits directly on startup with no output to the console and no messages.

    I have encounered two other bugs, one which seems to be OSX specific and one platform independent:
    Under OSX, in the application.ini file xulrunner refuses to run if MinVersion=MaxVersion i.e. this does not work:


    but this does:


    The other thing is that if you need to activate the extention manager with:
    You HAVE to add write permissions to the xulrunner folder, this is true under Linux and Windows (at least for us)
    This is of course a problem under OSX since you cannot bundle the xulrunner framework as yet.

  11. Navin Says:


    I got a standalone app bundle working. I placed my own custom program in the Contents/MacOS folder of the application bundle. The program just simulates the job done by the “xulrunner” stub executable.

    There seems to be some problem in the calculation of the paths by the standard stub executable. Will look at it when I find some time (the logic is deep within macros).

    By the way, here is my custom program if u need it. Just compile it using gcc and put the resulting executable in the Contents/MacOS folder by the name “xulrunner”:



    int main(int argc, char **argv)
    char *currentDir = argv[0];

    char *parentDir = (char *) malloc(sizeof(char) * strlen(currentDir));
    int i, found = 0;
    for(i = strlen(currentDir) – 1; i >= 0; i–)
    if(found == 2)
    parentDir[i] = currentDir[i];
    else if(currentDir[i] == ‘/’)
    parentDir[i] = ”;

    char *xulBin = (char *) malloc(sizeof(char) * PATH_MAX);
    strcpy(xulBin, parentDir);
    strcat(xulBin, “/Frameworks/XUL.framework/Versions/”);

    char *greDir = (char *) malloc(sizeof(char) * PATH_MAX);
    strcpy(greDir, parentDir);
    strcat(greDir, “/Frameworks/XUL.framework/Versions/”);

    int status = 0;

    char **argv2 = (char**) alloca(sizeof(char*) * (2));

    setenv(“DYLD_LIBRARY_PATH”, greDir, 1);
    setenv(“XRE_BINARY_PATH”, xulBin, 1);

    argv2[0] = argv[0];

    argv2[1] = (char *) malloc(sizeof(char) * PATH_MAX);
    strcpy(argv2[1], parentDir);
    strcat(argv2[1], “/Resources/application.ini”);

    status = execv(xulBin, argv2);

    if(status == -1)
    printf(“\nError : %d”, errno);


    return 1;


    Note: The memory de-allocations are not perfect, but it should not matter much as this process quits immediately after running the “xulrunner-bin” executable.

  12. Samuel Monsarrat Says:

    Thanks for the info Navin.
    Could you respecify the includes in your source as the was stripped by the server as being markup.
    Or even mail me the source at smonsarr.junk -at- free.fr.
    Thanks !


  13. Navin Says:

    Oops!!! Did not notice that.

    Here are the includes…

    #include <stdio.h>
    #include <stdlib.h>

  14. Navin Says:

    Sorry. That got posted accidentally.

    #include <stdio.h>
    #include <stdlib.h>
    #include <sys/param.h>
    #include <string.h>
    #include <errno.h>

  15. Benjamin Smedberg Says:

    For issues with the local mac packaging, see bug 329004 which I just fixed on trunk and 1.8, and I’m hoping to get it into (certainly

Leave a Reply