Suwayomi / Suwayomi-Server

A rewrite of Tachiyomi for the Desktop
Mozilla Public License 2.0
3.93k stars 201 forks source link

[Bug] GTK errors when running + no window opens #38

Closed solonovamax closed 3 years ago

solonovamax commented 3 years ago

I acknowledge that:


Yarn should be listed as a dependency in the README, as well as having good error logging.

Device information

Steps to reproduce

  1. Download & Run jar
  2. GTK Errors & other stuff is logged. No windows open.
  3. Control + C to exit.

Expected behavior

The application actually works

Actual behavior

It doesn't.

Other details

Here's the log:

$ java -jar Tachidesk-v0.2.5-r256.jar 
[main] INFO Exposed - Preparing create tables statements took 30ms
[main] INFO Exposed - Executing create tables statements took 3ms
[main] INFO Exposed - Extracting table columns took 73ms
[main] INFO Exposed - Extracting column constraints took 15ms
[main] INFO Exposed - Preparing alter table statements took 89ms
[main] INFO Exposed - Executing alter table statements took 0ms
[main] WARN Exposed - Indices exist in database and not mapped in code on class 'CHAPTER':
[main] WARN Exposed -       Index 'FK_CHAPTER_MANGA_ID_INDEX_5' for 'CHAPTER' on columns ir.armor.tachidesk.database.table.ChapterTable.manga
[main] WARN Exposed - Indices exist in database and not mapped in code on class 'SOURCE':
[main] WARN Exposed -       Index 'FK_SOURCE_EXTENSION_ID_INDEX_9' for 'SOURCE' on columns ir.armor.tachidesk.database.table.SourceTable.extension
[main] WARN Exposed - Indices exist in database and not mapped in code on class 'PAGE':
[main] WARN Exposed -       Index 'FK_PAGE_CHAPTER_ID_INDEX_2' for 'PAGE' on columns ir.armor.tachidesk.database.table.PageTable.chapter
[main] WARN Exposed - Indices exist in database and not mapped in code on class 'CATEGORYMANGA':
[main] WARN Exposed -       Index 'FK_CATEGORYMANGA_CATEGORY_ID_INDEX_C' for 'CATEGORYMANGA' on columns ir.armor.tachidesk.database.table.CategoryMangaTable.category
[main] WARN Exposed -       Index 'FK_CATEGORYMANGA_MANGA_ID_INDEX_C' for 'CATEGORYMANGA' on columns ir.armor.tachidesk.database.table.CategoryMangaTable.manga
[main] INFO Exposed - Checking mapping consistence took 14ms
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by dorkbox.util.Swt (file:/home/solonovamax/Downloads/Tachidesk-v0.2.5-r256.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String)
WARNING: Please consider reporting this to the maintainers of dorkbox.util.Swt
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[main] WARN dorkbox.util.jna.linux.GtkTheme - Unable to get tray image size. Using default.

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.182: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): Gdk-CRITICAL **: 12:13:43.189: gdk_x11_get_xatom_by_name_for_display: assertion 'GDK_IS_DISPLAY (display)' failed

(java:343959): dbind-WARNING **: 12:13:43.293: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-6kGghwTyak: No such file or directory
^C^C^C
solonovamax commented 3 years ago

wait, forgot to add title lol

AriaMoradi commented 3 years ago

Try the jar built with cfc6e5c, someone had a similar issue which that commit fixed

solonovamax commented 3 years ago

I already built from source and tried with that fix, and it did not work (I edited my error earlier to say that I tried it with the latest jar build from source, which was v0.2.6-r273-jar.)

But I'll build it again and try once more, because why not.

solonovamax commented 3 years ago

Still has same issues. If I try to connect to localhost:4567, there's nothing.

AriaMoradi commented 3 years ago

After some pair examination with @solonovamax It was concluded that the issue arises from Dorkbox SystemTray, the System Tray library this project uses and it has to be fixed upstream. Temperary fix: Method 1: Change your gtk theme to default (in case of @solonovamax, they were using the gtk Breeze theme) Method 2: disable the feature by commenting out this block of code inside ServerSetup.kt

    try {
        systemTray
    } catch (e: Exception) {
        e.printStackTrace()
    }
solonovamax commented 3 years ago

you should probably tag this with something along the lines of "waiting on 3rd party"

AriaMoradi commented 3 years ago

SystemTray dependency was recently updated, is the issue fixed? Try with v0.3.0

AriaMoradi commented 3 years ago

The source of this issue is the SystemTray library, nothing that tachidesk can fix.