Posts Tagged firebible
I’m happy to announce the release of FireBible 2.0; this version will work on Firefox versions 26 and up, on Windows and Linux. FireBible is now based on native libraries and no longer requires Java; it’s much easier to install and far more robust.
If you already had FireBible installed from this site, check for an update to get the new version or just hit the FireBible page to install it. I’ll be updating the AMO version shortly, though it might take some time for this version to be accepted.
- Alternate versification (av11n) support. You can now read Catholic and other Bibles with versification that differs from KJV canon. Try the CPDV or DRC Catholic bibles.
- FireBible will download the native libraries it needs on Windows or Linux, it’s marginally faster than previous versions and much more robust (no more issues due to Mozilla’s security policies or odd Java distributions and browser plugins).
Deficiencies wrt. FireBible 1
- Does not work on OS X, the native libraries that FireBible uses haven’t been compiled for OS X yet.
- No search functionality.
- No module manager, though you can install from ZIP files easily through a new Install Modules button on the FireBible toolbar.
I’m working on the search and module manager, I did not want to hold up the release further because of these missing features (hence the beta tag). If you’re a C++ developer with OS X experience and would like to help compile the native libraries FireBible needs for OS X, please get in touch.
Firefox kept changing their security policies as far as the use of Java in extensions was concerned and I had to keep duct-taping fixes in place that would keep FireBible working. Finally, they made a change that broke FireBible outright and there was no way to keep it going with Java; believe me, I tried. I wrote about these issues in the past and had been thinking about switching from JSword (Java library) to Sword (native library) for some time. When David Haslam pointed me to XULSword, I knew it was technically capable and decided to make the move.
FireBible 2.0 has been in development for ~ 1.5 years, the fundamental change from JSword to native Sword libraries wasn’t that hard (thanks to XULSword) but most of FireBible had to be rewritten. Getting all the functionality working has taken much longer than I anticipated – FireBible is weekend work and I got married last year! It’s still far from perfect, but definitely quite usable in its current form. Any feedback would be appreciated.
I released FireBible 1.4 early this morning, this release fixes issues with recent Java 7 updates and Firefox 16 and above, as discussed in my last post. I also threw in a few minor bug fixes.
A longer term update:
- FireBible still won’t work with the IcedTea Java plugin on Linux (unless you remove almost all security settings, not recommended). So you will still need an Oracle Java installation on Linux for FireBible to work.
- Still no av11n (alternate versification) support as I need to wait for this to be added to the JSword library. Full support for deuterocanonical books (including the Catholic Bible :() therefore not present yet. Hopefully soon.
- Ubiquity support still cool (I consider this to be one of FireBible’s best features) – but you need the privately maintained Ubiquity 0.6 version or higher; you can get that here (download the file and select it in the File > Open dialog to install).
- Will investigate the viability of switching to the native Sword libraries as opposed to Java based JSword:
- No Java installation required, extension should work out of the box.
- Security issues keep cropping up with “Java in the browser”. There are restrictions that are either imposed by Firefox itself or changes in Java internals that affect “not so common” use of Java. Hopefully we’ve seen the last of these.
- av11n support already present in native Sword libraries.
- Will lose JSword specific UI such as the module installer and settings.
- Implementation will be harder and take time which I do not currently have.
- Will need to build separate versions of the extension for each platform (currently not required due to the use of Java libraries).
Unfortunately there have been a couple of issues rendering FireBible defunct on recent versions of Firefox.
- First, there was a security vulnerability in Java 7 update 6 and below. This lead to these versions of Java being disabled; if you updated your Java installation, it would be enabled again, but loading text in FireBible fails with
org.xml.sax.SAXException: Could not compile stylesheet javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet at org.crosswire.common.xml.TransformingSAXEventProvider.provideSAXEvents(TransformingSAXEventProvider.java:174) at org.crosswire.common.xml.XMLUtil.writeToString(XMLUtil.java:85) at …
I’m not too sure if this was caused by changes in Java 7 update 7 (or later) or if it was the switch to JAXP 1.4.6 in Java 7 update 4 – nevertheless, you are now forced to use a version of Java in which the above error occurs.
- The second issue is a change in Firefox version 16 (16.0.1 is now current) where the “java” global variable was removed. I was warned by the addons team in advance, but failed to make changes in time (however, we’d still be stymied by the above problem).
The good news is that I do know how to solve both problems, but am currently looking for a better solution for the first of these. I’ll try to release a fix ASAP.
This extension has always been a technical challenge, which is fun most of the time, but the battle with Java in the browser has been a PITA – it still won’t work with IcedTea due to more permission problems. I’m wondering if I should go native instead and switch from JSword to Sword, the crossover will be quite expensive in terms of time and effort, but will probably add long term stability to FireBible. A Java installation (specifically, the Oracle one) would no longer be required and we wouldn’t be plagued by these incessant security issues.
I released FireBible 1.3 last weekend, with the following key fixes. If you already have FireBible installed, you can check for updates, or head on to the FireBible page to get it.
Changes in 1.3:
- Will automatically download and install JSword.
- Can automatically install books if none found.
- You can now type book names first in Ubiquity (don’t need to start with ‘sword’).
- Fixed Ubiquity command installation issues.
- Fixed issue with Sun’s Java 7 browser plugin.
- Raised compatibility to work with more recent Firefox versions.
For those of you having issues getting Ubiquity to work with recent Firefox releases, please download this file and open it (File > Open File…) using Firefox. This is a version of Ubiquity being maintained by satyr.
- Getting FireBible working with OpenJDK / IcedTea browser plugin (still only works with Sun’s VM and plugin) but OpenJDK and IcedTea compatibility seems more possible than GCJ support.
- Integration of a newer version of JSword with av11n support (which is still being developed) so I can finally support Catholic Bibles.
A long overdue release of FireBible, version 1.2 adds support for Firefox versions 4 through 6 (yes, 6); so overall it is compatible with Firefox 3 and above. In this version, I also added the ability to view Bibles side by side. If you have FireBible installed, please check for updates to install version 1.2, or head on to FireBible to get it!
What’s next for FireBible:
- Easier installation – most users have trouble with the separate JSword installation that is required, future versions will have JSword integrated; this concern has also been raised by the Mozilla add-ons review team.
- Work towards support for Catholic Bibles by helping with deutrocanonical support in the JSword backend.
- Several bug fixes and user requested enhancements; these have unfortunately been ignored for 1.2 because I did not want to delay Firefox 4 support by trying to pack everything into a single release.
Supporting a major new Firefox release has, unfortunately, never been too easy and Firefox 4 was no different:
- Protocol handling techniques changed and finding a solution that worked for both Firefox 3.x and 4.x was irritating.
- This bug threatened to make Java inaccessible to extensions, would have knocked FireBible out of Firefox for good.
- Bookmark / folder manipulation was made more difficult by removal of a method that I was actively using.
- Annotations handling code (used internally to classify FireBible URLs) had to moved to keep it working.
- Several other minor issues.
Ultimately, nothing required rocket science to fix, but the number of changes required to keep FireBible working was frustrating.