fyne-opensnitch icon indicating copy to clipboard operation
fyne-opensnitch copied to clipboard

fails to compile on ubuntu 20.04

Open larrybrit opened this issue 4 years ago • 24 comments

Hello, I get an error upon attempting compiling the UI.

$ go build -o fyne-opensnitch && ./fyne-opensnitch

github.com/go-gl/glfw/v3.2/glfw

In file included from /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:24: /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c: In function ‘_glfwInitJoysticksLinux’: /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c:224:42: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 9 [-Wformat-truncation=] 224 | snprintf(path, sizeof(path), "%s/%s", dirname, entry->d_name); | ^~~~~~~ In file included from /usr/include/stdio.h:867, from /usr/include/X11/Xcursor/Xcursor.h:26, from /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_platform.h:39, from /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/internal.h:169, from /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_init.c:28, from /home/war/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:19: /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:10: note: ‘__builtin___snprintf_chk’ output between 12 and 267 bytes into a destination of size 20 67 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 68 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

github.com/go-gl/glfw/v3.2/glfw

go1: internal compiler error: in mangled_name, at go/gofrontend/names.cc:559 Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-9/README.Bugs for instructions.

github.com/go-gl/gl/v3.2-core/gl

go1: internal compiler error: in mangled_name, at go/gofrontend/names.cc:559 Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-9/README.Bugs for instructions.

larrybrit avatar Apr 20 '20 13:04 larrybrit

Im running FreeBSD, and have similar issues with building against latest glfw.

I managed to get around my probs by editting out the code in the "linux joystick" driver parts of glfw. Its not much of a fix. but it gets me rolling. Only mentioning that because the errors you are seeing are in the same area.

But it does look like a problem with a combination of C++ compiler and glfw release that you are building off there.

Will try and get you a better solution in the meantime.

steveoc64 avatar Apr 20 '20 14:04 steveoc64

Hello Steve, thanks for the lead on the fix. Unfortunately, I'm not sure where to look to edit out the code in the "linux joystick" part of the driver. Not using the machine for gaming, this fix wouldn't sacrifice any functionality for me. (if I understand correctly).

larrybrit avatar Apr 20 '20 14:04 larrybrit

Another couple of thinghs we'd try is to upgrade the version of fyne used in this version... (it is running an old one v1.0.2)

Could you please try with the latest (1.2.4) and the develop branch of fyne ?

With go module enabled, from the fyne-opensnitch project:

# for the 1.2.4 version
$ go get -u fyne.io/fyne@latest && go build .
# for the develop version
$ go get -u fyne.io/fyne@develop && go build .

lucor avatar Apr 20 '20 17:04 lucor

The dev version :

$ go get -u fyne.io/fyne@develop && go build .

return this error:

go1: internal compiler error: in mangled_name, at go/gofrontend/names.cc:559 Please submit a full bug report, with preprocessed source if appropriate.

larrybrit avatar Apr 20 '20 17:04 larrybrit

the latest version :

$ go get -u fyne.io/fyne@latest && go build .

return these errors :

github.com/go-gl/glfw/v3.2/glfw

In file included from ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:24: ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c: In function ‘_glfwInitJoysticksLinux’: ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c:224:42: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 9 [-Wformat-truncation=] 224 | snprintf(path, sizeof(path), "%s/%s", dirname, entry->d_name); | ^~~~~~~ In file included from /usr/include/stdio.h:867, from /usr/include/X11/Xcursor/Xcursor.h:26, from ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_platform.h:39, from ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/internal.h:169, from ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_init.c:28, from ../../go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:19: /usr/include/x86_64-linux-gnu/bits/stdio2.h:67:10: note: ‘__builtin___snprintf_chk’ output between 12 and 267 bytes into a destination of size 20 67 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 68 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

github.com/go-gl/glfw/v3.2/glfw

go1: internal compiler error: in mangled_name, at go/gofrontend/names.cc:559 Please submit a full bug report, with preprocessed source if appropriate. See file:///usr/share/doc/gcc-9/README.Bugs for instructions.

github.com/go-gl/gl/v3.2-core/gl

go1: internal compiler error: in mangled_name, at go/gofrontend/names.cc:559 Please submit a full bug report,

larrybrit avatar Apr 20 '20 17:04 larrybrit

mmm weird. Tried the version from master on a ubuntu 20.04 box and apart the warning about the "linux joystick" (that can be safely ignored) it seems to compile.

$ go build -o fyne-opensnitch && ./fyne-opensnitch

# github.com/go-gl/glfw/v3.2/glfw
In file included from /code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:24:
/code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c: In function ‘_glfwInitJoysticksLinux’:
/code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/linux_joystick.c:224:42: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 9 [-Wformat-truncation=]
  224 |             snprintf(path, sizeof(path), "%s/%s", dirname, entry->d_name);
      |                                          ^~~~~~~
In file included from /usr/include/stdio.h:867,
                 from /usr/include/X11/Xcursor/Xcursor.h:26,
                 from /code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_platform.h:39,
                 from /code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/internal.h:169,
                 from /code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/glfw/src/x11_init.c:28,
                 from /code/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/c_glfw_linbsd.go:19:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:67:10: note: ‘__builtin___snprintf_chk’ output between 12 and 267 bytes into a destination of size 20
   67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   68 |        __bos (__s), __fmt, __va_arg_pack ());
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2020-04-22 10:45:37]  INF  starting Fyne OpenSnitch application
[2020-04-22 10:45:37]  INF  OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock
[2020-04-22 10:45:39]  IMP  Received close on main app

[2020-04-22 10:45:39]  IMP  Got signal: quit
[2020-04-22 10:45:39]  INF  Shutting down grpc server...
[2020-04-22 10:45:39]  INF  All done, bye

My env info:

  • OS ubuntu 20.04
  • gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0
  • GO111MODULE=on
  • go version go1.14 linux/amd64
  • package required by fyne: libgl1-mesa-dev libegl1-mesa-dev xorg-dev x11proto-dev
  • package required by opensnitch: libnetfilter-queue-dev

lucor avatar Apr 22 '20 10:04 lucor

Hello Luca, Thanks a lot for taking the time here. I tried to carefully matched you env infos. Mine currently are :

OS ubuntu 20.04 gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0 export GO111MODULE=on go version go1.14.2 linux/amd64 libgl1-mesa-dev/focal,now 20.0.4-2ubuntu1 amd64 [installed,automatic] libegl1-mesa-dev/focal,now 20.0.4-2ubuntu1 amd64 [installed,automatic] xorg-dev/focal,focal,now 1:7.7+19ubuntu14 all [installed] x11proto-dev/focal,focal,now 2019.2-1ubuntu1 all [installed] libnetfilter-queue-dev/focal,now 1.0.3-1 amd64 [installed]

i tried to compile it with the go : current, latest, and dev. They all worked just fine. The dev version gave me zero error.

The opensnitch deamon is running...

● opensnitchd.service - OpenSnitch is a GNU/Linux port of the Little Snitch application firewall. Loaded: loaded (/etc/systemd/system/opensnitchd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2020-04-22 10:40:09 -03; 1min 51s ago Docs: https://github.com/evilsocket/opensnitch Main PID: 187215 (opensnitchd) Tasks: 39 (limit: 115456) Memory: 79.4M CGroup: /system.slice/opensnitchd.service └─187215 /usr/local/bin/opensnitchd -log-file /var/log/opensnitchd.log -rules-path /etc/opensnitchd/rules

but... upon launching ./fyne-opensnitch

[2020-04-22 13:41:17] INF starting Fyne OpenSnitch application [2020-04-22 13:41:17] INF OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock panic: Run() or ShowAndRun() must be called from main goroutine

goroutine 54 [running]: fyne.io/fyne/internal/driver/glfw.(*gLDriver).Run(0xc0007c2120) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/driver.go:67 +0x5d fyne.io/fyne/internal/driver/glfw.(*window).ShowAndRun(0xc000206000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:393 +0x57 main.(*osApp).ShowAndRun(0xc0000bc040) /home/xxx/Downloads/fyne-opensnitch-master/ui.go:63 +0xad created by main.main /home/xxx/Downloads/fyne-opensnitch-master/main.go:79 +0x31c

larrybrit avatar Apr 22 '20 13:04 larrybrit

Happy to see it is compiling now. You should get that error only using the develop version of fyne. It should work with the latest version of fyne, but to be honest I didn't have a chance to test it yet.

lucor avatar Apr 22 '20 15:04 lucor

I thought it might be because of using go get -u fyne.io/fyne@develop && go build . but... I get the error as well with : go get -u fyne.io/fyne && go build .

larrybrit avatar Apr 22 '20 15:04 larrybrit

To use fyne@latest or [email protected] you need to run go get with the version you want to use againts: go get -u fyne.io/fyne@latest otherwise go get will try to update the deps for the installed version.

To check the version used into the project you can run go list -m fyne.io/fyne or check directly the go.mod file.

lucor avatar Apr 22 '20 16:04 lucor

Here's what the suggested commands return:

$ go get -u fyne.io/[email protected] && go build . go get fyne.io/[email protected]: fyne.io/[email protected]: invalid version: unknown revision 1.0.2

AND...

$ go get -u fyne.io/fyne@latest && go build . [2020-04-22 16:19:41] INF starting Fyne OpenSnitch application [2020-04-22 16:19:41] ERR OpenSnitch gRPC server failed to listen on socket unix:///tmp/osui.sock: listen unix /tmp/osui.sock: bind: address already in use [2020-04-22 16:19:41] INF OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock panic: runtime error: invalid memory address or nil pointer dereference panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x8b043d]

goroutine 44 [running]: google.golang.org/grpc.(*listenSocket).Close(0xc0001500c0, 0xc0004d4150, 0xc0000a5c10) /home/war/go/pkg/mod/google.golang.org/[email protected]/server.go:506 +0x2d google.golang.org/grpc.(*Server).Serve.func2(0xc000902480, 0xc0001500c0) /home/war/go/pkg/mod/google.golang.org/[email protected]/server.go:552 +0x9b panic(0xac49c0, 0x1118bd0) /usr/lib/go-1.14/src/runtime/panic.go:969 +0x166 google.golang.org/grpc.(*Server).Serve(0xc000902480, 0x0, 0x0, 0x0, 0x0) /home/war/go/pkg/mod/google.golang.org/[email protected]/server.go:561 +0x1fe main.main.func1(0xc0005a2fc0) /home/war/Downloads/fyne-opensnitch-master/main.go:74 +0x207 created by main.main /home/war/Downloads/fyne-opensnitch-master/main.go:58 +0x2fa

larrybrit avatar Apr 22 '20 16:04 larrybrit

$ go list -m fyne.io/fyne fyne.io/fyne v1.2.4

larrybrit avatar Apr 22 '20 16:04 larrybrit

wrt 1.0.2 there was a typo on my side it'd be v1.0.2 but that tag does not exist.. the current version of fyne-opensnitch was using a develop version of fyne become v1.1.0.

Anyway let's focus on the working one v1.2.4 :) That error mean that the app crashed in some way and was unable to close the socket used to talk with the daemon.

To fix, remove the file /tmp/osui.sock and restart fyne-opensnitch

lucor avatar Apr 22 '20 17:04 lucor

I had thought of that potential fix! I still get the error when removing /tmp/osui.sock. :( I found your gui while searching why the one provided with opensnitch didn't open. (never found a solution for that). Could this be related? I already disable opensnitch-ui from opening at startup removing the .deskop.

larrybrit avatar Apr 22 '20 18:04 larrybrit

$ rm /tmp/osui.sock $ ./fyne-opensnitch

[2020-04-22 18:04:53] INF starting Fyne OpenSnitch application [2020-04-22 18:04:53] INF OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation code=0x1 addr=0x990 pc=0x7f577e82f5c9]

runtime stack: runtime.throw(0xbc020a, 0x2a) /usr/lib/go-1.14/src/runtime/panic.go:1116 +0x72 runtime.sigpanic() /usr/lib/go-1.14/src/runtime/signal_unix.go:679 +0x46a

goroutine 98 [syscall, locked to thread]: runtime.cgocall(0x9f5f50, 0xc0001f7b18, 0x0) /usr/lib/go-1.14/src/runtime/cgocall.go:133 +0x5b fp=0xc0001f7ae8 sp=0xc0001f7ab0 pc=0x42826b github.com/go-gl/gl/v3.2-core/gl._Cfunc_glowViewport(0x7f577e82f5c0, 0x0, 0x9b00000612) _cgo_gotypes.go:23605 +0x45 fp=0xc0001f7b18 sp=0xc0001f7ae8 pc=0x993205 github.com/go-gl/gl/v3.2-core/gl.Viewport(...) /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2-core/gl/package.go:13085 fyne.io/fyne/internal/painter/gl.(*glPainter).SetOutputSize(0xc00026a030, 0x612, 0x9b) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/painter/gl/gl_core.go:70 +0x48 fp=0xc0001f7b40 sp=0xc0001f7b18 pc=0x9b3e88 fyne.io/fyne/internal/driver/glfw.(*window).frameSized(0xc000208000, 0xc000550000, 0x612, 0x9b) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:492 +0xd2 fp=0xc0001f7b68 sp=0xc0001f7b40 pc=0x9c6db2 fyne.io/fyne/internal/driver/glfw.(*window).frameSized-fm(0xc000550000, 0x612, 0x9b) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:484 +0x48 fp=0xc0001f7b98 sp=0xc0001f7b68 pc=0x9cc898 github.com/go-gl/glfw/v3.2/glfw.goFramebufferSizeCB(0x24b9f30, 0x9b00000612) /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/window.go:192 +0x61 fp=0xc0001f7bc0 sp=0xc0001f7b98 pc=0x9bd071 github.com/go-gl/glfw/v3.2/glfw._cgoexpwrap_f57d0873e1f1_goFramebufferSizeCB(0x24b9f30, 0x9b00000612) _cgo_gotypes.go:2239 +0x3b fp=0xc0001f7be0 sp=0xc0001f7bc0 pc=0x9b9b1b runtime.call32(0x0, 0x7f574effcaf0, 0x7f574effcb80, 0x10) /usr/lib/go-1.14/src/runtime/asm_amd64.s:539 +0x3b fp=0xc0001f7c10 sp=0xc0001f7be0 pc=0x48622b runtime.cgocallbackg1(0x0) /usr/lib/go-1.14/src/runtime/cgocall.go:332 +0x188 fp=0xc0001f7ca8 sp=0xc0001f7c10 pc=0x4285e8 runtime.cgocallbackg(0x0) /usr/lib/go-1.14/src/runtime/cgocall.go:207 +0xc1 fp=0xc0001f7d10 sp=0xc0001f7ca8 pc=0x4283c1 runtime.cgocallback_gofunc(0x42828f, 0x9ea970, 0xc0001f7da0, 0xc000682a80) /usr/lib/go-1.14/src/runtime/asm_amd64.s:793 +0x9b fp=0xc0001f7d30 sp=0xc0001f7d10 pc=0x4877fb runtime.asmcgocall(0x9ea970, 0xc0001f7da0) /usr/lib/go-1.14/src/runtime/asm_amd64.s:640 +0x42 fp=0xc0001f7d38 sp=0xc0001f7d30 pc=0x487692 runtime.cgocall(0x9ea970, 0xc0001f7da0, 0xc000682bb8) /usr/lib/go-1.14/src/runtime/cgocall.go:143 +0x7f fp=0xc0001f7d70 sp=0xc0001f7d38 pc=0x42828f github.com/go-gl/glfw/v3.2/glfw._Cfunc_glfwPollEvents() _cgo_gotypes.go:1210 +0x41 fp=0xc0001f7da0 sp=0xc0001f7d70 pc=0x9b70b1 github.com/go-gl/glfw/v3.2/glfw.PollEvents() /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/window.go:778 +0x22 fp=0xc0001f7dd8 sp=0xc0001f7da0 pc=0x9bf0e2 fyne.io/fyne/internal/driver/glfw.(*gLDriver).runGL(0xc000b0e210) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/loop.go:87 +0x1ff fp=0xc0001f7f58 sp=0xc0001f7dd8 pc=0x9c46af fyne.io/fyne/internal/driver/glfw.(*gLDriver).Run(0xc000b0e210) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/driver.go:66 +0x2b fp=0xc0001f7f70 sp=0xc0001f7f58 pc=0x9c413b fyne.io/fyne/internal/driver/glfw.(*window).ShowAndRun(0xc000208000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:391 +0x57 fp=0xc0001f7f98 sp=0xc0001f7f70 pc=0x9c6727 main.(*osApp).ShowAndRun(0xc000483fc0) /home/xxx/Downloads/fyne-opensnitch-master/ui.go:63 +0xad fp=0xc0001f7fd8 sp=0xc0001f7f98 pc=0x9d2c4d runtime.goexit() /usr/lib/go-1.14/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc0001f7fe0 sp=0xc0001f7fd8 pc=0x487f81 created by main.main /home/xxx/Downloads/fyne-opensnitch-master/main.go:79 +0x31c

goroutine 1 [select, locked to thread]: main.main() /home/xxx/Downloads/fyne-opensnitch-master/main.go:81 +0x3cb

goroutine 6 [sleep]: time.Sleep(0x22ecb25c00) /usr/lib/go-1.14/src/runtime/time.go:188 +0xba fyne.io/fyne/internal/painter.svgCacheJanitor.func1() /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/painter/svg_cache.go:51 +0x116 sync.(*Once).doSlow(0x194c720, 0xc000036af0) /usr/lib/go-1.14/src/sync/once.go:66 +0xec sync.(*Once).Do(0x194c720, 0xc000036af0) /usr/lib/go-1.14/src/sync/once.go:57 +0x45 created by fyne.io/fyne/internal/painter.svgCacheJanitor /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/painter/svg_cache.go:49 +0x9b

goroutine 14 [syscall]: os/signal.signal_recv(0x0) /usr/lib/go-1.14/src/runtime/sigqueue.go:147 +0x9c os/signal.loop() /usr/lib/go-1.14/src/os/signal/signal_unix.go:23 +0x22 created by os/signal.Notify.func1 /usr/lib/go-1.14/src/os/signal/signal.go:127 +0x44

goroutine 82 [chan receive]: fyne.io/fyne/app.NewAppWithDriver.func1(0xc000718b40, 0xc000b0a180) /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/app.go:108 +0x3d created by fyne.io/fyne/app.NewAppWithDriver /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/app.go:106 +0x190

goroutine 83 [syscall]: syscall.Syscall6(0xe8, 0x7, 0xc000141b74, 0x7, 0xffffffffffffffff, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/syscall/asm_linux_amd64.s:41 +0x5 golang.org/x/sys/unix.EpollWait(0x7, 0xc000141b74, 0x7, 0x7, 0xffffffffffffffff, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_linux_amd64.go:76 +0x72 github.com/fsnotify/fsnotify.(*fdPoller).wait(0xc000732a00, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/github.com/fsnotify/[email protected]/inotify_poller.go:86 +0x91 github.com/fsnotify/fsnotify.(*Watcher).readEvents(0xc0000c8050) /home/xxx/go/pkg/mod/github.com/fsnotify/[email protected]/inotify.go:192 +0x1f8 created by github.com/fsnotify/fsnotify.NewWatcher /home/xxx/go/pkg/mod/github.com/fsnotify/[email protected]/inotify.go:59 +0x1a5

goroutine 84 [chan receive]: fyne.io/fyne/app.watchFile.func1(0xc0000c8050, 0xc000744c60, 0x24, 0xc000434160, 0xc000434170) /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/settings_desktop.go:42 +0x58 created by fyne.io/fyne/app.watchFile /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/settings_desktop.go:41 +0xe7

goroutine 37 [chan receive]: fyne.io/fyne/internal/driver/glfw.(*window).runEventQueue(0xc000208000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:1051 +0x86 created by fyne.io/fyne/internal/driver/glfw.(*gLDriver).CreateWindow.func1 /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:1084 +0x16e

goroutine 38 [chan receive]: fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener.func1(0xc000038120, 0xc000556000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/canvas.go:409 +0x47 created by fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/canvas.go:407 +0xa6

goroutine 85 [chan receive]: fyne.io/fyne/internal/painter.SvgCacheMonitorTheme.func1(0xc000718d20) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/painter/svg_cache.go:104 +0x34 created by fyne.io/fyne/internal/painter.SvgCacheMonitorTheme /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/painter/svg_cache.go:102 +0x9c

goroutine 16 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017fd0, 0x72, 0x0) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000484098, 0x72, 0x0, 0x0, 0xb918d6) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Accept(0xc000484080, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:384 +0x1d4 net.(*netFD).accept(0xc000484080, 0xc000010008, 0x0, 0x0) /usr/lib/go-1.14/src/net/fd_unix.go:238 +0x42 net.(*UnixListener).accept(0xc000b0e030, 0xc0000a5e10, 0xc0000a5e18, 0x18) /usr/lib/go-1.14/src/net/unixsock_posix.go:162 +0x32 net.(*UnixListener).Accept(0xc000b0e030, 0xbd6dc0, 0xc000902600, 0xc9fea0, 0xc000010008) /usr/lib/go-1.14/src/net/unixsock.go:260 +0x64 google.golang.org/grpc.(*Server).Serve(0xc000902600, 0xc97800, 0xc000b0e030, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:561 +0x210 main.main.func1(0xc000483fc0) /home/xxx/Downloads/fyne-opensnitch-master/main.go:74 +0x207 created by main.main /home/xxx/Downloads/fyne-opensnitch-master/main.go:58 +0x2fa

goroutine 99 [chan receive]: main.(*osApp).ShowAndRun.func1(0xc000596230, 0xc000483fc0) /home/xxx/Downloads/fyne-opensnitch-master/ui.go:45 +0x9e created by main.(*osApp).ShowAndRun /home/xxx/Downloads/fyne-opensnitch-master/ui.go:42 +0x93

goroutine 59 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc000734080, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc0003a6120, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000902900) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 60 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000902900) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 61 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017ef0, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000484298, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc000484280, 0xc000b36000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc000484280, 0xc000b36000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc000110008, 0xc000b36000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc000b0a060, 0xc000048118, 0x9, 0x9, 0xc000680000, 0x7f577e4e0560, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc000b0a060, 0xc000048118, 0x9, 0x9, 0x9, 0x818865, 0xc000b0e450, 0xc000b00004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc000048118, 0x9, 0x9, 0xc89880, 0xc000b0a060, 0x0, 0x0, 0xc000b0e450, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc0000480e0, 0xc000b0e450, 0xc000b0e450, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000902900, 0xc000b0e420, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000902900) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000902900) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

goroutine 101 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc0005a80c0, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc000b0a0c0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000682f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 102 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000682f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 103 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017e10, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000550118, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc000550100, 0xc00020a000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc000550100, 0xc00020a000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc0005a0838, 0xc00020a000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc000488360, 0xc000166038, 0x9, 0x9, 0xc000680000, 0x7f577e4e0560, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc000488360, 0xc000166038, 0x9, 0x9, 0x9, 0x818865, 0xc000b0e540, 0xc000b00004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc000166038, 0x9, 0x9, 0xc89880, 0xc000488360, 0x0, 0x0, 0xc000b0e540, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc000166000, 0xc000b0e540, 0xc000b0e540, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000682f00, 0xc00026aab0, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000682f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000682f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

goroutine 63 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc000734200, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc0000be1e0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000902f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 64 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000902f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 65 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017d30, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000484498, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc000484480, 0xc000b4e000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc000484480, 0xc000b4e000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc000110018, 0xc000b4e000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc000b0a2a0, 0xc0000481f8, 0x9, 0x9, 0xc000680000, 0x7f577e4e0560, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc000b0a2a0, 0xc0000481f8, 0x9, 0x9, 0x9, 0x818865, 0xc000b0e690, 0xc000b00004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc0000481f8, 0x9, 0x9, 0xc89880, 0xc000b0a2a0, 0x0, 0x0, 0xc000b0e690, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc0000481c0, 0xc000b0e690, 0xc000b0e690, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000902f00, 0xc000b0e660, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000902f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000902f00) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

goroutine 105 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc0005a8140, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc000b0a300, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000683500) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 106 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000683500) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 107 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017c50, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000550398, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc000550380, 0xc0002a4000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc000550380, 0xc0002a4000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc0005a0840, 0xc0002a4000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc0004883c0, 0xc000166118, 0x9, 0x9, 0xc000680000, 0x7f577e4dfe98, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc0004883c0, 0xc000166118, 0x9, 0x9, 0x9, 0x818865, 0xc000204000, 0xc000200004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc000166118, 0x9, 0x9, 0xc89880, 0xc0004883c0, 0x0, 0x0, 0xc000204000, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc0001660e0, 0xc000204000, 0xc000204000, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000683500, 0xc00026abd0, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000683500) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000683500) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

goroutine 41 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc00001e080, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc000b0a420, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000882600) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 42 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000882600) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 43 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017b70, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc000202118, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc000202100, 0xc0002ba000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc000202100, 0xc0002ba000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc00052e000, 0xc0002ba000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc000722de0, 0xc000214038, 0x9, 0x9, 0xc000098a80, 0x7f577e4e0c28, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc000722de0, 0xc000214038, 0x9, 0x9, 0x9, 0x818865, 0xc0006180c0, 0xc000610004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc000214038, 0x9, 0x9, 0xc89880, 0xc000722de0, 0x0, 0x0, 0xc0006180c0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc000214000, 0xc0006180c0, 0xc0006180c0, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000882600, 0xc000204120, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000882600) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000882600) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

goroutine 69 [select]: google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc00061a0c0, 0x1, 0x0, 0x0, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:317 +0x11a google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc000b0a540, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/controlbuf.go:435 +0x1cd google.golang.org/grpc/internal/transport.newHTTP2Server.func2(0xc000581080) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:276 +0xcb created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:273 +0xfe7

goroutine 70 [select]: google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc000581080) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:935 +0x206 created by google.golang.org/grpc/internal/transport.newHTTP2Server /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:282 +0x100c

goroutine 71 [IO wait]: internal/poll.runtime_pollWait(0x7f5755017a90, 0x72, 0xffffffffffffffff) /usr/lib/go-1.14/src/runtime/netpoll.go:203 +0x55 internal/poll.(*pollDesc).wait(0xc00061c118, 0x72, 0x8000, 0x8000, 0xffffffffffffffff) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:87 +0x45 internal/poll.(*pollDesc).waitRead(...) /usr/lib/go-1.14/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).Read(0xc00061c100, 0xc000628000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/internal/poll/fd_unix.go:169 +0x19b net.(*netFD).Read(0xc00061c100, 0xc000628000, 0x8000, 0x8000, 0x10401, 0x0, 0x1040100203000) /usr/lib/go-1.14/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc000010008, 0xc000628000, 0x8000, 0x8000, 0x0, 0x0, 0x0) /usr/lib/go-1.14/src/net/net.go:184 +0x8e bufio.(*Reader).Read(0xc0000be360, 0xc000642038, 0x9, 0x9, 0xc000900380, 0x7f577e4df108, 0x0) /usr/lib/go-1.14/src/bufio/bufio.go:226 +0x24f io.ReadAtLeast(0xc89880, 0xc0000be360, 0xc000642038, 0x9, 0x9, 0x9, 0x818865, 0xc00026ac00, 0xc000260004) /usr/lib/go-1.14/src/io/io.go:310 +0x87 io.ReadFull(...) /usr/lib/go-1.14/src/io/io.go:329 golang.org/x/net/http2.readFrameHeader(0xc000642038, 0x9, 0x9, 0xc89880, 0xc0000be360, 0x0, 0x0, 0xc00026ac00, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:237 +0x87 golang.org/x/net/http2.(*Framer).ReadFrame(0xc000642000, 0xc00026ac00, 0xc00026ac00, 0x0, 0x0) /home/xxx/go/pkg/mod/golang.org/x/[email protected]/http2/frame.go:492 +0xa1 google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc000581080, 0xc0006181e0, 0xbd6e18) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/internal/transport/http2_server.go:431 +0x80 google.golang.org/grpc.(*Server).serveStreams(0xc000902600, 0xca0d40, 0xc000581080) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:687 +0xdb google.golang.org/grpc.(*Server).handleRawConn.func1(0xc000902600, 0xca0d40, 0xc000581080) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:649 +0x43 created by google.golang.org/grpc.(*Server).handleRawConn /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:648 +0x5e0

larrybrit avatar Apr 22 '20 18:04 larrybrit

The version compiled against the @develop produces this error, if that helps...

$ ./fyne-opensnitch_dev

[2020-04-22 18:07:23] INF starting Fyne OpenSnitch application [2020-04-22 18:07:23] INF OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock panic: Run() or ShowAndRun() must be called from main goroutine

goroutine 84 [running]: fyne.io/fyne/internal/driver/glfw.(*gLDriver).Run(0xc0008a4120) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/driver.go:67 +0x5d fyne.io/fyne/internal/driver/glfw.(*window).ShowAndRun(0xc000208000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/internal/driver/glfw/window.go:393 +0x57 main.(*osApp).ShowAndRun(0xc0000bc9c0) /home/xxx/Downloads/fyne-opensnitch-master/ui.go:63 +0xad created by main.main /home/xxx/Downloads/fyne-opensnitch-master/main.go:79 +0x31c

larrybrit avatar Apr 22 '20 18:04 larrybrit

Ok, as expected the actual code would need some love to be compatible with latest versions of fyne :)

Please note that there are plans to update this project to latest version of fyne but it won't happen until the data binding lands in fyne (planned for fyne v1.3 thanks to @steveoc64 and fyne's team for the hard work :) )

That said, the best way to test this project at the moment is using the old version of fyne defined in the current code.

Please also note that this project is still a work in progess, so do not expect to be fully functional ;-)

lucor avatar Apr 23 '20 08:04 lucor

Well, I tried and successfully compiled with v1.1.0 as required in the go.mod file. Still get the same errors as I do with other version of fyne.

v1.0.2 can't be found.

Not sure what else to try at this point.

larrybrit avatar Apr 23 '20 12:04 larrybrit

I'm sorry you're having trouble installing fyne-opensnitch. It seems there is something different between our envs that we are unable to identify. Below you'll find all the steps I did to have it working on a fresh ubuntu 20.04 with all the dependencies needed by opensnitch and fyne-opensnitch installed.

# compile and start opensnitch
$ git clone https://github.com/evilsocket/opensnitch
$ cd opensnitch/daemon
# removing to use modules
$ rm Gopkg.* 
# create a temporary module
$ go mod init opensnitch 
$ go build .
$ mkdir /tmp/opensnitch-rules
$ sudo ./opensnitch -rules-path=/tmp/opensnitch-rules
[sudo] password ...: 
[2020-04-22 22:17:43]  IMP  Starting opensnitch-daemon v1.0.0b
[2020-04-22 22:17:43]  INF  Loading rules from /code/lucor/opensnitch/daemon/rules ...
[2020-04-22 22:17:43]  INF  Running on netfilter queue #0 ...
# compile and start fyne-opensnitch
$ git clone https://github.com/lucor/fyne-opensnitch
$ cd fyne-opensnitch
$ go build .
$ ./fyne-opensnitch                       
[2020-04-22 22:28:35]  INF  starting Fyne OpenSnitch application
[2020-04-22 22:28:35]  INF  OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock

After that you should see into the opensnitch logs Connected to the UI service on /tmp/osui.sock and the fyne-opensnitch UI should appear.

lucor avatar Apr 23 '20 16:04 lucor

You should not use the version v1.1.0 since it has not been tested with the actual codebase (trying different versions was only for debugging purpose aiming to found a possible issue with ubuntu 20.04).

Just to be sure we have the same setup, could you please follow the step by step above and let me know if it solves ?

This will ensure you are using version from commit e8f1dab8038838eaa87913d6100a830ab75b4f96 where fyne version is this https://github.com/lucor/fyne-opensnitch/blob/master/go.mod#L6

With regard to the joystick messages, as said above, it is a warning and can be ignored at the moment and will removed when we will be upgrade to use the latest version of fyne ;)

lucor avatar Apr 23 '20 18:04 lucor

all steps, exactly as described. Still get the same crash.

./fyne-opensnitch [2020-04-23 18:52:38] INF starting Fyne OpenSnitch application [2020-04-23 18:52:38] INF OpenSnitch gRPC server listening on socket: unix:///tmp/osui.sock fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation code=0x1 addr=0x990 pc=0x7f49e779c5c9]

runtime stack: runtime.throw(0xb9dbaa, 0x2a) /snap/go/5646/src/runtime/panic.go:1116 +0x72 runtime.sigpanic() /snap/go/5646/src/runtime/signal_unix.go:679 +0x46a

goroutine 13 [syscall, locked to thread]: runtime.cgocall(0x9cc500, 0xc0000a5b30, 0xc000483268) /snap/go/5646/src/runtime/cgocall.go:133 +0x5b fp=0xc0000a5b00 sp=0xc0000a5ac8 pc=0x42826b github.com/go-gl/gl/v3.2-core/gl._Cfunc_glowViewport(0x7f49e779c5c0, 0x0, 0x7c000004db) _cgo_gotypes.go:23605 +0x45 fp=0xc0000a5b30 sp=0xc0000a5b00 pc=0x912a45 github.com/go-gl/gl/v3.2-core/gl.Viewport(...) /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2-core/gl/package.go:13085 fyne.io/fyne/driver/gl.(*window).frameSized(0xc000912000, 0xc0001fe000, 0x4db, 0x7c) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/window.go:474 +0x83 fp=0xc0000a5b58 sp=0xc0000a5b30 pc=0x9b1d73 fyne.io/fyne/driver/gl.(*window).frameSized-fm(0xc0001fe000, 0x4db, 0x7c) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/window.go:471 +0x48 fp=0xc0000a5b88 sp=0xc0000a5b58 pc=0x9b5e58 github.com/go-gl/glfw/v3.2/glfw.goFramebufferSizeCB(0x3776f30, 0x7c000004db) /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/window.go:192 +0x61 fp=0xc0000a5bb0 sp=0xc0000a5b88 pc=0x937841 github.com/go-gl/glfw/v3.2/glfw._cgoexpwrap_f57d0873e1f1_goFramebufferSizeCB(0x3776f30, 0x7c000004db) _cgo_gotypes.go:2239 +0x3b fp=0xc0000a5bd0 sp=0xc0000a5bb0 pc=0x9343ab runtime.call32(0x0, 0x7f49bf801af0, 0x7f49bf801b80, 0x10) /snap/go/5646/src/runtime/asm_amd64.s:539 +0x3b fp=0xc0000a5c00 sp=0xc0000a5bd0 pc=0x48622b runtime.cgocallbackg1(0x0) /snap/go/5646/src/runtime/cgocall.go:332 +0x188 fp=0xc0000a5c98 sp=0xc0000a5c00 pc=0x4285e8 runtime.cgocallbackg(0x0) /snap/go/5646/src/runtime/cgocall.go:207 +0xc1 fp=0xc0000a5d00 sp=0xc0000a5c98 pc=0x4283c1 runtime.cgocallback_gofunc(0x42828f, 0x9dcf50, 0xc0000a5d90, 0xc79000) /snap/go/5646/src/runtime/asm_amd64.s:793 +0x9b fp=0xc0000a5d20 sp=0xc0000a5d00 pc=0x4877fb runtime.asmcgocall(0x9dcf50, 0xc0000a5d90) /snap/go/5646/src/runtime/asm_amd64.s:640 +0x42 fp=0xc0000a5d28 sp=0xc0000a5d20 pc=0x487692 runtime.cgocall(0x9dcf50, 0xc0000a5d90, 0xc00026aa50) /snap/go/5646/src/runtime/cgocall.go:143 +0x7f fp=0xc0000a5d60 sp=0xc0000a5d28 pc=0x42828f github.com/go-gl/glfw/v3.2/glfw._Cfunc_glfwPollEvents() _cgo_gotypes.go:1210 +0x41 fp=0xc0000a5d90 sp=0xc0000a5d60 pc=0x931941 github.com/go-gl/glfw/v3.2/glfw.PollEvents() /home/xxx/go/pkg/mod/github.com/go-gl/[email protected]/v3.2/glfw/window.go:778 +0x22 fp=0xc0000a5dc8 sp=0xc0000a5d90 pc=0x9398b2 fyne.io/fyne/driver/gl.(*gLDriver).runGL(0xc0001322c0) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/loop.go:77 +0x1ee fp=0xc0000a5f50 sp=0xc0000a5dc8 pc=0x9af86e fyne.io/fyne/driver/gl.(*gLDriver).Run(0xc0001322c0) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/driver.go:71 +0x43 fp=0xc0000a5f70 sp=0xc0000a5f50 pc=0x9ab383 fyne.io/fyne/driver/gl.(*window).ShowAndRun(0xc000912000) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/window.go:346 +0x57 fp=0xc0000a5f98 sp=0xc0000a5f70 pc=0x9b14a7 main.(*osApp).ShowAndRun(0xc0008a3d80) /opt/fyne-opensnitch/ui.go:63 +0xad fp=0xc0000a5fd8 sp=0xc0000a5f98 pc=0x9ba5fd runtime.goexit() /snap/go/5646/src/runtime/asm_amd64.s:1373 +0x1 fp=0xc0000a5fe0 sp=0xc0000a5fd8 pc=0x487f81 created by main.main /opt/fyne-opensnitch/main.go:79 +0x31c

goroutine 1 [select, locked to thread]: main.main() /opt/fyne-opensnitch/main.go:81 +0x3cb

goroutine 6 [sleep]: time.Sleep(0x22ecb25c00) /snap/go/5646/src/runtime/time.go:188 +0xba fyne.io/fyne/driver/gl.svgCacheJanitor.func1() /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/svg_cache.go:40 +0x116 sync.(*Once).doSlow(0x190c920, 0xc000036af0) /snap/go/5646/src/sync/once.go:66 +0xec sync.(*Once).Do(0x190c920, 0xc000036af0) /snap/go/5646/src/sync/once.go:57 +0x45 created by fyne.io/fyne/driver/gl.svgCacheJanitor /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/svg_cache.go:38 +0x9b

goroutine 66 [syscall]: os/signal.signal_recv(0x0) /snap/go/5646/src/runtime/sigqueue.go:147 +0x9c os/signal.loop() /snap/go/5646/src/os/signal/signal_unix.go:23 +0x22 created by os/signal.Notify.func1 /snap/go/5646/src/os/signal/signal.go:127 +0x44

goroutine 82 [chan receive]: fyne.io/fyne/app.NewAppWithDriver.func1(0xc0008b40c0, 0xc0008a2040) /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/app.go:119 +0x34 created by fyne.io/fyne/app.NewAppWithDriver /home/xxx/go/pkg/mod/fyne.io/[email protected]/app/app.go:117 +0x158

goroutine 12 [runnable]: net.(*netFD).accept(0xc0007a0000, 0xc00060e040, 0x0, 0x0) /snap/go/5646/src/net/fd_unix.go:237 +0x454 net.(*UnixListener).accept(0xc0008aa030, 0xc00079de10, 0xc00079de18, 0x18) /snap/go/5646/src/net/unixsock_posix.go:162 +0x32 net.(*UnixListener).Accept(0xc0008aa030, 0xbb4338, 0xc000882900, 0xc7a800, 0xc00060e040) /snap/go/5646/src/net/unixsock.go:260 +0x64 google.golang.org/grpc.(*Server).Serve(0xc000882900, 0xc71c80, 0xc0008aa030, 0x0, 0x0) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:561 +0x210 main.main.func1(0xc0008a3d80) /opt/fyne-opensnitch/main.go:74 +0x207 created by main.main /opt/fyne-opensnitch/main.go:58 +0x2fa

goroutine 14 [chan receive]: main.(*osApp).ShowAndRun.func1(0xc0000c8320, 0xc0008a3d80) /opt/fyne-opensnitch/ui.go:45 +0x9e created by main.(*osApp).ShowAndRun /opt/fyne-opensnitch/ui.go:42 +0x93

goroutine 98 [runnable]: google.golang.org/grpc.(*Server).Serve.func3(0xc000882900, 0xc7a800, 0xc00060e040) /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:604 created by google.golang.org/grpc.(*Server).Serve /home/xxx/go/pkg/mod/google.golang.org/[email protected]/server.go:604 +0x818

goroutine 29 [chan receive]: fyne.io/fyne/driver/gl.svgCacheMonitorTheme.func1(0xc000038120) /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/svg_cache.go:92 +0x34 created by fyne.io/fyne/driver/gl.svgCacheMonitorTheme /home/xxx/go/pkg/mod/fyne.io/[email protected]/driver/gl/svg_cache.go:90 +0x9c

larrybrit avatar Apr 23 '20 18:04 larrybrit

Thanks for testing. It could be related to ShowAndRun() not called from main goroutine (fixed with c10a72e) and updated fyne deps to v1.2.4 in 8513ccf too.

Could you please update your local copy to the latest commit and give a try ?

lucor avatar Apr 23 '20 20:04 lucor

It worked! I see two tabs, general and events, could configure a new rule. You can't currently edit the existing rules?

larrybrit avatar Apr 23 '20 20:04 larrybrit

Sorry, rules editing is not supported yet.

lucor avatar Apr 25 '20 13:04 lucor