Xowa: Failed to Start on Linux 64 using sh in Terminal

Created on 25 Oct 2016  Â·  10Comments  Â·  Source: gnosygnu/xowa

OS: Ubuntu 16.04.1 64bit
Java: 1.8.0_91 (64 bit)
Java path: 1.8.0_91
XOWA: 3.10.4.1
XOWA path: /mnt/Media/XOWA/xowa_linux_64.jar

Error: XPCOM error 0x80004005
Stack: org.eclipse.swt.browser.Mozilla.error(Unknown Source)
org.eclipse.swt.browser.Mozilla.initXULRunner(Unknown Source)
org.eclipse.swt.browser.Mozilla.create(Unknown Source)
org.eclipse.swt.browser.Browser.(Unknown Source)
gplx.gfui.kits.swts.Swt_html.(Unknown Source)
gplx.gfui.kits.core.Swt_kit.New_html(Unknown Source)
gplx.xowa.guis.views.Xog_tab_itm.Make_html_box(Unknown Source)
gplx.xowa.guis.views.Xog_tab_mgr.Tabs_new(Unknown Source)
gplx.xowa.guis.views.Xog_tab_mgr.Tabs_new_init(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Launch_tab(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Restore_tabs(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Launch(Unknown Source)
gplx.xowa.guis.views.Xog_tab_itm_read_mgr.Launch(Unknown Source)
gplx.xowa.guis.Xoa_gui_mgr.Run(Unknown Source)
gplx.xowa.apps.boots.Xoa_boot_mgr.Run_app(Unknown Source)
gplx.xowa.apps.boots.Xoa_boot_mgr.Run(Unknown Source)
gplx.xowa.Xoa_app_.Run(Unknown Source)
gplx.xowa.Xowa_main.main(Unknown Source)

[resolved - unreproducible] setup - general setup - os - linux setup - xulrunner

All 10 comments

Hi! Thanks for the error stack.

I tried 3.10.4.1 on my openSUSE linux box, and it ran as normal. Just a few questions:

  • Is this a system that's run XOWA before? I'm guessing not. If XOWA ran on it before, then a new version of XOWA shouldn't fail (nothing has changed in the setup)
  • Are you running "sh xowa_linux_64.sh"? I'm assuming so based on the title, but I just wanted to be sure. Depending on the system, "java -jar xowa_linux_64.jar" would fail

If this is a "new" system failing with "sh xowa_linux_64.sh" then there's probably some setup issue. I tested this on Ubuntu 16.04 64-bit back in August and didn't have any issues. See https://github.com/gnosygnu/xowa/issues/70#issuecomment-237414200

Is there anything atypical about this machine's setup? Or is it a standard Ubuntu install?

  1. Yes I have been running XOWA for over a year already...prior to the file extension change.
  2. Yes I cd to the directory where XOWA files are located and run in terminal: sh xowa_linux_64.sh
  3. When the command executes I get a loading animation as per normal but then crashes with the above log
  4. I see it crashes when its trying to either create or remove "launch.tabs.marker" under the folder "XOWA/user/anonymous/app/tmp/session/"
  5. I even tested the XOWA foledr with full 777 permissions and ran the sh script in sudo to check.

There's nothing unusual about the system just standard Ubuntu Server 16.04 LTS

Thanks for confirming. Just replying to a few points:

I see it crashes when its trying to either create or remove "launch.tabs.marker" under the folder "XOWA/user/anonymous/app/tmp/session/"

Hmm. The crash report says "XPCOM error 0x80004005". I've seen this on systems that default to GTK3. XULRunner still uses GTK2. It's why I asked about the .sh script since it specifically disables GTK3.

Are you seeing "launch.tabs.marker" in the log somewhere? If so, can you copy and paste it here?

I even tested the XOWA foledr with full 777 permissions and ran the sh script in sudo to check.

Yeah, XPCOM error shouldn't be affected by 777.

I'll try again with Ubuntu later, and report here. If you have time, can you try using XULRunner 10? I list the steps in https://github.com/gnosygnu/xowa/issues/74#issuecomment-237412735

Hope this helps. Thanks.

Hi I still get the same error using xulrunner 10

The "luanch.tabs.marker" popped up prior to me chnaging the permissions of all the files to 777, after that I haven't seen it again. If I do I will post the error

Sorry! XOWA failed to run!
Please check the TROUBLESHOOTING section in the readme.txt for known issues.
You can also open an issue or send an email with the data below.


OS: linux
Java: 1.8.0_91 (64 bit)
Java path: 1.8.0_91
XOWA: 3.10.4.1
XOWA path: /mnt/Media/XOWA/xowa_linux_64.jar

Error: XPCOM error 0x80004005
Stack: org.eclipse.swt.browser.Mozilla.error(Unknown Source)
org.eclipse.swt.browser.Mozilla.initXULRunner(Unknown Source)
org.eclipse.swt.browser.Mozilla.create(Unknown Source)
org.eclipse.swt.browser.Browser.(Unknown Source)
gplx.gfui.kits.swts.Swt_html.(Unknown Source)
gplx.gfui.kits.core.Swt_kit.New_html(Unknown Source)
gplx.xowa.guis.views.Xog_tab_itm.Make_html_box(Unknown Source)
gplx.xowa.guis.views.Xog_tab_mgr.Tabs_new(Unknown Source)
gplx.xowa.guis.views.Xog_tab_mgr.Tabs_new_init(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Launch_tab(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Restore_tabs(Unknown Source)
gplx.xowa.guis.views.Xog_launcher_tabs.Launch(Unknown Source)
gplx.xowa.guis.views.Xog_tab_itm_read_mgr.Launch(Unknown Source)
gplx.xowa.guis.Xoa_gui_mgr.Run(Unknown Source)
gplx.xowa.apps.boots.Xoa_boot_mgr.Run_app(Unknown Source)
gplx.xowa.apps.boots.Xoa_boot_mgr.Run(Unknown Source)
gplx.xowa.Xoa_app_.Run(Unknown Source)
gplx.xowa.Xowa_main.main(Unknown Source)

AND more

[err 0] The BROWSE action is not supported on the current platform!
java.awt.Desktop.browse(Desktop.java:381)
gplx.xowa.guis.views.boots.Xog_error_win.Invk(Unknown Source)
gplx.Gfo_invk_cmd.Exec(Unknown Source)
gplx.xowa.guis.views.boots.Swing_mouse_adapter.mouseClicked(Unknown Source)
java.awt.Component.processMouseEvent(Component.java:6538)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6300)
java.awt.Container.processEvent(Container.java:2236)
java.awt.Component.dispatchEventImpl(Component.java:4891)
java.awt.Container.dispatchEventImpl(Container.java:2294)
java.awt.Component.dispatchEvent(Component.java:4713)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4534)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
java.awt.Container.dispatchEventImpl(Container.java:2280)
java.awt.Window.dispatchEventImpl(Window.java:2750)
java.awt.Component.dispatchEvent(Component.java:4713)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.awt.EventQueue$4.run(EventQueue.java:729)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Thanks for trying XULRunner 10.

I took at it it today, and wasn't able to reproduce. I used the steps as detailed here: https://github.com/gnosygnu/xowa/issues/70#issuecomment-237414200 (I had an old Ubunutu 16.04 LTS boot disk around and just copied over v3.10 onto it).

The BROWSE action is not supported on the current platform!

There's one random ticket that mentions this can be caused by the Window Manager (i3). Are you using the GNOME default, or something different? https://github.com/openmole/openmole/issues/140#issuecomment-190657526

Otherwise, we can probably ignore this. The Desktop class is only being called when there's a fatal error so fixing this error won't fix the earlier, underlying fatal error

Regarding the fatal error, just a few thoughts based on this above:

Yes I have been running XOWA for over a year already...prior to the file extension change.

Hmmm, by file extension change, do you mean .sqlite3 to .xowa? If so, that was 2.4 (2015-04)

  • What was the version number of the working XOWA you were using? v2.3 or less?
  • Were you running that 2.4 version on a different machine than the one 3.10 is failing on now?
  • If you have the old 2.4 version around, can you try unzipping it to an alternate directory on the same machine and seeing if it still works?

Sorry, but no other suggestions from my side. These XULRunner errors on Linux are pretty hard to debug - especially when I can't reproduce it...

Hi Just an update.

  1. I downloaded the full version of 3.10.4.1 (linux64)
  2. Unzipped an extracted to my home folder of linux
  3. Ran xowa_linux_64.sh and everything loaded up as it should.
  4. Okay so now I know that that setup works
  5. Copied it over to me second drive located in /mnt/
  6. Ran the xowa_linux_64.sh
  7. Crashed as previously displayed.

So XOWA in linux will only work if its located in the home folder or / of
the "main drive" and will not work on secondary drives.

Note that my /mnt/ drives are not external drives but are located inside a
server.

I wonder if (as your links previously quoted) as a person mentioned that
for some reason xulrunner is looking for a service that is located on the
main drive and has now been given limited permissions to execute its
commands as its operating on a 'mounted drive' ?

So im not sure this is a bug in xulrunner or just a path issue within
xulrunner?

On Fri, Oct 28, 2016 at 12:03 AM, gnosygnu [email protected] wrote:

Thanks for trying XULRunner 10.

I took at it it today, and wasn't able to reproduce. I used the steps as
detailed here: #70 (comment)
https://github.com/gnosygnu/xowa/issues/70#issuecomment-237414200 (I
had an old Ubunutu 16.04 LTS boot disk around and just copied over v3.10
onto it).

The BROWSE action is not supported on the current platform!

There's one random ticket that mentions this can be caused by the Window
Manager. Are you using the GNOME default, or something different? openmole/openmole#140
(comment)
https://github.com/openmole/openmole/issues/140#issuecomment-190657526

Otherwise, we can probably ignore this. The Desktop class is only being
called when there's a fatal error so fixing this error won't fix the
earlier, underlying fatal error

Regarding the fatal error, just a few thoughts based on this above:

Yes I have been running XOWA for over a year already...prior to the file
extension change.

Hmmm, by file extension change, do you mean .sqlite3 to .xowa? If so, that
was 2.4 (2015-04)

  • What was the version number of the working XOWA you were using? v2.3
    or less?
  • Were you running that 2.4 version on a different machine than the
    one 3.10 is failing on now?
  • If you have the old 2.4 version around, can you try unzipping it to
    an alternate directory on the same machine and seeing if it still works?

Sorry, but no other suggestions from my side. These XULRunner errors on
Linux are pretty hard to debug - especially when I can't reproduce it...

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gnosygnu/xowa/issues/92#issuecomment-256782932, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHt6mGZ-6l-eD7bgZms1zhkOEaG0qSRDks5q4R-bgaJpZM4KfpR_
.

So XOWA in linux will only work if its located in the home folder or / of the "main drive" and will not work on secondary drives.

Thanks for the follow-up! The second-drive angle is interesting

Just so you know, it worked when I tried my second drive which is mounted on /run/media/ (/run/media/my_user_name/my_volume_name/xowa_test/xowa_linux_64.sh). This may be a openSUSE thing, or a machine setup thing. I'll try to test on Ubuntu again but it'll be a few days.

I wonder if (as your links previously quoted) as a person mentioned that for some reason xulrunner is looking for a service that is located on the main drive and has now been given limited permissions to execute its commands as its operating on a 'mounted drive' ?

I think this was an issue with permissions during unzipping. XOWA didn't have permissions to create the log file (~/xowa/user/anonymous/app/tmp/log/current). The problem went away after he granted permissions to the entire xowa hive.

So im not sure this is a bug in xulrunner or just a path issue within xulrunner?

As far as I know, XULRunner is mostly standalone. It has one minor dependency in that it creates temp files in "/home/lnxusr/.mozilla/". However, it's possible there may also be other system-related dependencies on Linux.

Let me try to recreate it on my side with Ubuntu. Keep in mind you can always install XOWA on your main drive, and point it to use the wikis directory on another drive. You can change the xowa_linux_64.sh to export SWT_GTK3=0 && java -Xmx256m -splash:$XOWA_DIR/bin/any/xowa/file/app.general/waiting.gif -jar $XOWA_DIR/xowa_linux_64.jar --wiki_dir /your_other_drive/

Will keep you posted, but let me know if there's anything else. Thanks.

Unfortunately, I still can't reproduce it. I tried the second-drive setup tonight by running XOWA off an attached USB flash drive.

sudo fdisk -l
sudo umount /media/ubuntu/VOLUME_NAME
sudo mount -o uid=ubuntu /dev/sdb1 /mnt/test
sh /mnt/test/xowa/xowa_linux_64.sh

I did notice that if xulrunner is missing, it also fails with the same message. With that in mind, can you try the following?:

  • Run /mnt/Media/XOWA/bin/linux_64/xulrunner_v24/xulrunner -h This should load a very brief help / version screen for xulrunner. If it's not there or if the call fails, it would give something else.
  • Check the permissions for the file and make sure executable is set.
  • Copy xulrunner only to your main drive

    • Move /mnt/Media/XOWA/bin/linux_64/xulrunner_v24/xulrunner to something like /home/your_user_name/xulrunner_v24

    • Open /mnt/Media/XOWA/bin/linux_64/xowa/cfg/xowa_cfg_os.gfs in a text editor

    • Update the xul_runner_path xul_runner_path = '/home/your_user_name/xulrunner_v24';

If none of this works, can you confirm whether or not this works with a plain Ubuntu 16.04 Live Disc? I'd just like to compare apples to apples and see if it's system-related.

Thanks

Hi,

IT WORKS:)

  • Moving the xulrunner_v24 to my home folder fixed the problem.

YAY!

Great! Thanks for giving it a try.

Maybe it's a permission issue on the mount? I had a different issue with the log file, until I remounted with permissions. XULRunner did work though.

Can you try remounting with something like: sudo mount -o uid=ubuntu /dev/sdb1 /mnt/test?

Also, did running xulrunner directly from the mnt work (/mnt/Media/XOWA/bin/linux_64/xulrunner_v24/xulrunner -h)?

I'll see if there's anything else I can come up with, but at least a better workaround exists.

Thanks!

Was this page helpful?
0 / 5 - 0 ratings