Xpl0itU / WiiUDownloader

Allows to download encrypted wiiu files from nintendo's official servers
GNU General Public License v3.0
696 stars 16 forks source link

Crashes on macos on first launch - libgio conflict with homebrew #73

Open zeisss opened 11 months ago

zeisss commented 11 months ago

I downloaded the Universal Binary from your README and tried launching it. Nothing happens and after a second the App Icon diappears from the Dock.

Launching from the Terminal gives me a stack trace but I can't really tell what the problem is.

Any ideas?

I am on MacOS Ventura (Version 13.4.1)

$ /Volumes/WiiUDownloader/WiiUDownloader.app/Contents/MacOS/WiiUDownloader
objc[7613]: Class GNotificationCenterDelegate is implemented in both /Volumes/WiiUDownloader/WiiUDownloader.app/Contents/MacOS/lib/libgio-2.0.0.dylib (0x100b103b0) and /usr/local/Cellar/glib/2.76.4/lib/libgio-2.0.0.dylib (0x132b666b0). One of the two will be used. Which one is undefined.

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.555: gdk_pixbuf_get_width: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_get_height: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_set_option: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_set_option: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_get_width: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_get_width: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_get_height: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_get_height: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(<unknown>:7613): GdkPixbuf-CRITICAL **: 13:57:43.556: gdk_pixbuf_scale_simple: assertion 'GDK_IS_PIXBUF (src)' failed

(<unknown>:7613): Gtk-WARNING **: 13:57:43.556: Could not load a pixbuf from /org/gtk/libgtk/theme/Adwaita/assets/check-symbolic.svg.
This may indicate that pixbuf loaders or the mime database could not be found.

(<unknown>:7613): GLib-CRITICAL **: 13:57:43.556: g_propagate_error: assertion 'src != NULL' failed
fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x101574567]

runtime stack:
runtime.throw({0x1003fdc47?, 0x100cfda01?})
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/panic.go:1047 +0x5d fp=0x7ff7bfefdbf0 sp=0x7ff7bfefdbc0 pc=0x10003809d
runtime.sigpanic()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/signal_unix.go:825 +0x3e9 fp=0x7ff7bfefdc50 sp=0x7ff7bfefdbf0 pc=0x10004e569

goroutine 1 [syscall, locked to thread]:
runtime.cgocall(0x1002d3ab0, 0xc00013f140)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/cgocall.go:157 +0x5c fp=0xc00013f118 sp=0xc00013f0e0 pc=0x100007ebc
github.com/gotk3/gotk3/gtk._Cfunc_gtk_widget_show(0x10290ad80)
        _cgo_gotypes.go:34945 +0x45 fp=0xc00013f140 sp=0xc00013f118 pc=0x1002757c5
github.com/gotk3/gotk3/gtk.(*Widget).Show.func1(0xc0002a3798?)
        /Users/runner/go/pkg/mod/github.com/gotk3/gotk3@v0.6.2/gtk/widget.go:253 +0x3f fp=0xc00013f178 sp=0xc00013f140 pc=0x1002933df
github.com/gotk3/gotk3/gtk.(*Widget).Show(0xc0000000c0?)
        /Users/runner/go/pkg/mod/github.com/gotk3/gotk3@v0.6.2/gtk/widget.go:253 +0x19 fp=0xc00013f190 sp=0xc00013f178 pc=0x100293379
main.main.func1()
        /Users/runner/work/WiiUDownloader/WiiUDownloader/cmd/WiiUDownloader/main.go:46 +0x79 fp=0xc00013f1e0 sp=0xc00013f190 pc=0x1002a84d9
runtime.call16(0xc00011d050, 0xc0001241b0, 0x0, 0x0, 0x0, 0x0, 0xc00013f710)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:728 +0x49 fp=0xc00013f200 sp=0xc00013f1e0 pc=0x100068329
runtime.reflectcall(0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        <autogenerated>:1 +0x3c fp=0xc00013f240 sp=0xc00013f200 pc=0x10006c9bc
reflect.Value.call({0x100319a40?, 0xc0001241b0?, 0x10007cf7b?}, {0x1003ee917, 0x4}, {0x1006b8590, 0x0, 0x100688420?})
        /usr/local/Cellar/go/1.20.7/libexec/src/reflect/value.go:586 +0xb0b fp=0xc00013f830 sp=0xc00013f240 pc=0x10008c38b
reflect.Value.Call({0x100319a40?, 0xc0001241b0?, 0x60000172b5e0?}, {0x1006b8590?, 0x100042385?, 0xc0000061a0?})
        /usr/local/Cellar/go/1.20.7/libexec/src/reflect/value.go:370 +0xbc fp=0xc00013f8a8 sp=0xc00013f830 pc=0x10008b7bc
github.com/gotk3/gotk3/glib.goMarshal(0x100066775?, 0x0, 0x1, 0x7ff7bfefe660, 0xc00011d020?, 0x30?)
        /Users/runner/go/pkg/mod/github.com/gotk3/gotk3@v0.6.2/glib/glib.go:271 +0xa05 fp=0xc00013fb38 sp=0xc00013f8a8 pc=0x100262065
_cgoexp_b565b27e8aff_goMarshal(0x0?)
        _cgo_gotypes.go:6421 +0x32 fp=0xc00013fb78 sp=0xc00013fb38 pc=0x100266e32
runtime.cgocallbackg1(0x100266e00, 0x10003cb27?, 0x0)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/cgocall.go:315 +0x2a4 fp=0xc00013fc40 sp=0xc00013fb78 pc=0x1000083a4
runtime.cgocallbackg(0xc0000061a0?, 0x300000002?, 0xc0000061a0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/cgocall.go:234 +0x109 fp=0xc00013fcd0 sp=0xc00013fc40 pc=0x100008069
runtime.cgocallbackg(0x100266e00, 0x7ff7bfefe490, 0x0)
        <autogenerated>:1 +0x2f fp=0xc00013fcf8 sp=0xc00013fcd0 pc=0x10006c56f
runtime.cgocallback(0x100007ee5, 0x1002af960, 0xc00013fd88)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:998 +0xb4 fp=0xc00013fd20 sp=0xc00013fcf8 pc=0x100069e14
runtime.systemstack_switch()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:463 fp=0xc00013fd28 sp=0xc00013fd20 pc=0x100067de0
runtime.cgocall(0x1002af960, 0xc00013fd88)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/cgocall.go:167 +0x85 fp=0xc00013fd60 sp=0xc00013fd28 pc=0x100007ee5
github.com/gotk3/gotk3/glib._Cfunc_g_application_run(0x102814760, 0x0, 0x60000000ce00)
        _cgo_gotypes.go:1578 +0x4c fp=0xc00013fd88 sp=0xc00013fd60 pc=0x10025d38c
github.com/gotk3/gotk3/glib.(*Application).Run.func4(0x60000000ce00?, {0x0?, 0x0, 0x600000c25470?}, 0xd?)
        /Users/runner/go/pkg/mod/github.com/gotk3/gotk3@v0.6.2/glib/application.go:185 +0x7b fp=0xc00013fdc8 sp=0xc00013fd88 pc=0x10026031b
github.com/gotk3/gotk3/glib.(*Application).Run(0x1003f943c?, {0x0?, 0x0, 0x0})
        /Users/runner/go/pkg/mod/github.com/gotk3/gotk3@v0.6.2/glib/application.go:185 +0x17f fp=0xc00013fe88 sp=0xc00013fdc8 pc=0x10026023f
main.main()
        /Users/runner/work/WiiUDownloader/WiiUDownloader/cmd/WiiUDownloader/main.go:48 +0x39e fp=0xc00013ff80 sp=0xc00013fe88 pc=0x1002a83fe
runtime.main()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:250 +0x207 fp=0xc00013ffe0 sp=0xc00013ff80 pc=0x10003a947
runtime.goexit()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc00013ffe8 sp=0xc00013ffe0 pc=0x10006a021

goroutine 2 [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:381 +0xd6 fp=0xc000052fb0 sp=0xc000052f90 pc=0x10003ad76
runtime.goparkunlock(...)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:387
runtime.forcegchelper()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:305 +0xb0 fp=0xc000052fe0 sp=0xc000052fb0 pc=0x10003abb0
runtime.goexit()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000052fe8 sp=0xc000052fe0 pc=0x10006a021
created by runtime.init.6
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:293 +0x25

goroutine 3 [GC sweep wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:381 +0xd6 fp=0xc000053780 sp=0xc000053760 pc=0x10003ad76
runtime.goparkunlock(...)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:387
runtime.bgsweep(0x0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgcsweep.go:278 +0x8e fp=0xc0000537c8 sp=0xc000053780 pc=0x100027a2e
runtime.gcenable.func1()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgc.go:178 +0x26 fp=0xc0000537e0 sp=0xc0000537c8 pc=0x10001cca6
runtime.goexit()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000537e8 sp=0xc0000537e0 pc=0x10006a021
created by runtime.gcenable
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgc.go:178 +0x6b

goroutine 4 [GC scavenge wait]:
runtime.gopark(0xc00002c0e0?, 0x1004683e0?, 0x1?, 0x0?, 0x0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:381 +0xd6 fp=0xc000053f70 sp=0xc000053f50 pc=0x10003ad76
runtime.goparkunlock(...)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:387
runtime.(*scavengerState).park(0x100688ae0)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgcscavenge.go:400 +0x53 fp=0xc000053fa0 sp=0xc000053f70 pc=0x100025913
runtime.bgscavenge(0x0?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgcscavenge.go:628 +0x45 fp=0xc000053fc8 sp=0xc000053fa0 pc=0x100025ee5
runtime.gcenable.func2()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgc.go:179 +0x26 fp=0xc000053fe0 sp=0xc000053fc8 pc=0x10001cc46
runtime.goexit()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000053fe8 sp=0xc000053fe0 pc=0x10006a021
created by runtime.gcenable
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mgc.go:179 +0xaa

goroutine 18 [finalizer wait]:
runtime.gopark(0x1a0?, 0x1006890a0?, 0xa0?, 0xe1?, 0xc000052770?)
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/proc.go:381 +0xd6 fp=0xc000052628 sp=0xc000052608 pc=0x10003ad76
runtime.runfinq()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mfinal.go:193 +0x107 fp=0xc0000527e0 sp=0xc000052628 pc=0x10001bce7
runtime.goexit()
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000527e8 sp=0xc0000527e0 pc=0x10006a021
created by runtime.createfing
        /usr/local/Cellar/go/1.20.7/libexec/src/runtime/mfinal.go:163 +0x45
Xpl0itU commented 11 months ago

Do you have homebrew installed by any chance? If so, you must uninstall libgio, there are some conflicts for some reason

Xpl0itU commented 11 months ago

In case that doesn’t work, I’m working on porting WiiUDownloader to another GUI toolkit, GTK seems to be really unstable

zeisss commented 11 months ago

Do you have homebrew installed by any chance? If so, you must uninstall libgio, there are some conflicts for some reason

Yes to homebrew. libgio is installed via the glib formula.

lrwxr-xr-x     1 zeisss  admin    44B Jul 12 10:18 libgio-2.0.0.dylib -> ../Cellar/glib/2.76.4/lib/libgio-2.0.0.dylib
lrwxr-xr-x     1 zeisss  admin    38B Jul 12 10:18 libgio-2.0.a -> ../Cellar/glib/2.76.4/lib/libgio-2.0.a
lrwxr-xr-x     1 zeisss  admin    42B Jul 12 10:18 libgio-2.0.dylib -> ../Cellar/glib/2.76.4/lib/libgio-2.0.dylib

Uninstalling is not an option atm. I also tried setting my own LD_LIBRARY_PATH but it still reports the conflict :(

Thanks for the replies. I will give this another shot later.

Xpl0itU commented 11 months ago

You can always build it yourself (install golang and run go run cmd/WiiUDownloader/*.go) and that way it should run just fine