xdg-desktop-portal-gtk
xdg-desktop-portal-gtk copied to clipboard
Crash when force-closing freezed Nautilus
I killed Nautilus due to a freeze and was told this in the bug report:
It looks like something unrelated to nautilus. From your report, nautilus doesn't actually crash, you just force-close it, which leaves no crash information behind.
But please report this crash in https://github.com/flatpak/xdg-desktop-portal-gtk/issues
See https://gitlab.gnome.org/GNOME/nautilus/-/issues/1766#note_1052276
So I'm doing this, even though I'm not entirely sure what has crashed this. I just clicked "Force close" (or similar) in GNOME.
$ coredumpctl gdb
PID: 167475 (xdg-desktop-por)
UID: 1000 (rugk)
GID: 1000 (rugk)
Signal: 11 (SEGV)
Timestamp: Sat 2021-03-06 16:11:50 CET (1 day 2h ago)
Command Line: /usr/libexec/xdg-desktop-portal-gtk
Executable: /usr/libexec/xdg-desktop-portal-gtk
Control Group: /user.slice/user-1000.slice/[email protected]/xdg-desktop-portal-gtk.service
Unit: [email protected]
User Unit: xdg-desktop-portal-gtk.service
Slice: user-1000.slice
Owner UID: 1000 (rugk)
Boot ID: a7a8643c16234b0581ca811eb63bc399
Machine ID: 8608a492bd3042f2aa60745b6f0ad895
Hostname: FedRocks
Storage: /var/lib/systemd/coredump/core.xdg-desktop-por.1000.a7a8643c16234b0581ca811eb63bc399.167475.1615043510000000.zst
Message: Process 167475 (xdg-desktop-por) of user 1000 dumped core.
Stack trace of thread 167475:
#0 0x0000000000000000 n/a (n/a + 0x0)
GNU gdb (GDB) Fedora 10.1-2.fc33
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/libexec/xdg-desktop-portal-gtk...
Reading symbols from /usr/lib/debug/usr/libexec/xdg-desktop-portal-gtk-1.8.0-1.fc33.x86_64.debug...
warning: Can't open file /home/rugk/.config/dconf/user (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:wayland-cursor (deleted) during file-backed mapping note processing
warning: Can't open file /run/user/1000/dconf/user (deleted) during file-backed mapping note processing
warning: core file may not match specified executable file.
[New LWP 167475]
[New LWP 167476]
[New LWP 167479]
[New LWP 167478]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Missing separate debuginfo for /lib64/libwayland-egl.so.1
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/cb/d1930f8c301540f565bbb2761aa45547ede38b.debug
Missing separate debuginfo for /lib64/libblkid.so.1
Try: dnf --enablerepo='*debug*' install /usr/lib/debug/.build-id/fc/330f31b5843c8099e437ce5614c83ad6183e56.debug
Core was generated by `/usr/libexec/xdg-desktop-portal-gtk'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000000000000000 in ?? ()
[Current thread is 1 (Thread 0x7fc3bcad9f40 (LWP 167475))]
Missing separate debuginfos, use: dnf debuginfo-install libvorbis-1.3.7-2.fc33.x86_64 libxcb-1.13.1-5.fc33.x86_64 libzstd-1.4.7-1.fc33.x86_64
(gdb) bt full
#0 0x0000000000000000 in ()
#1 0x00007fc3bdd9111f in g_hash_table_lookup_node
(hash_return=<synthetic pointer>, key=0x97, hash_table=0x5597ededd8b0<error reading variable: Cannot access memory at address 0x100000000>) at ../glib/ghash.c:473
node_hash = <optimized out>
hash_value = <optimized out>
have_tombstone = 0
step = 0
node_index = <optimized out>
first_tombstone = 0
node_hash = <optimized out>
__func__ = "g_hash_table_lookup"
#2 g_hash_table_lookup
(hash_table=0x5597ededd8b0<error reading variable: Cannot access memory at address 0x100000000>, key=key@entry=0x97) at ../glib/ghash.c:1513
node_hash = <optimized out>
__func__ = "g_hash_table_lookup"
#3 0x00007fc3be2729d8 in lookup_cached_xatom (atom=0x97, display=0x5597edeae0e0)
at x11/gdkproperty-x11.c:76
display_x11 = 0x5597edeae0e0
xatom = 0
__func__ = "gdk_x11_atom_to_xatom_for_display"
#4 lookup_cached_xatom (atom=0x97, display=0x5597edeae0e0) at x11/gdkproperty-x11.c:67
display_x11 = 0x5597edeae0e0
xatom = 0
__func__ = "gdk_x11_atom_to_xatom_for_display"
#5 gdk_x11_atom_to_xatom_for_display (display=0x5597edeae0e0, atom=0x97)
at x11/gdkproperty-x11.c:109
xatom = 0
__func__ = "gdk_x11_atom_to_xatom_for_display"
#6 0x00007fc3be260b3e in handle_property_change
--Type <RET> for more, q to quit, c to continue without paging--
(ev=0x7fc3a4002a00, device_manager=<optimized out>) at x11/gdkdevicemanager-xi2.c:1108
device = 0x5597ee158000
device = <optimized out>
return_val = <optimized out>
window = 0x0
impl = <optimized out>
source_device = <optimized out>
scale = <optimized out>
ev = 0x7fc3a4002a00
__func__ = "gdk_x11_device_manager_xi2_translate_event"
#7 gdk_x11_device_manager_xi2_translate_event
(xevent=0x7ffc7596ce30, event=0x5597ededce80, display=0x5597edeb5450, translator=<optimized out>) at x11/gdkdevicemanager-xi2.c:1538
device = <optimized out>
return_val = <optimized out>
window = 0x0
impl = <optimized out>
source_device = <optimized out>
scale = <optimized out>
ev = 0x7fc3a4002a00
__func__ = "gdk_x11_device_manager_xi2_translate_event"
#8 gdk_x11_device_manager_xi2_translate_event
(translator=<optimized out>, display=0x5597edeb5450, event=0x5597ededce80, xevent=0x7ffc7596ce30) at x11/gdkdevicemanager-xi2.c:1478
__func__ = "gdk_x11_device_manager_xi2_translate_event"
#9 0x00007fc3be2686e1 in _gdk_x11_event_translator_translate
(translator=0x5597ee0a74f0, display=0x5597edeb5450, xevent=xevent@entry=0x7ffc7596ce30) at x11/gdkeventtranslator.c:51
iface = 0x5597ee22f0d0
event = 0x5597ededce80
__func__ = "_gdk_x11_event_translator_translate"
--Type <RET> for more, q to quit, c to continue without paging--
#10 0x00007fc3be26c2b3 in gdk_event_source_translate_event
(xevent=0x7ffc7596ce30, event_source=0x5597ee22ee60) at x11/gdkeventsource.c:243
translator = <optimized out>
list = 0x0
filter_window = <optimized out>
dpy = 0x5597ee0a8c00
event = 0x0
result = <optimized out>
event_translator = <optimized out>
event = <optimized out>
xevent =
{type = 35, xany = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683}, xkey = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, keycode = 0, same_screen = 0}, xbutton = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, button = 0, same_screen = 0}, xmotion = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, is_hint = 0 '\000', same_screen = 0}, xcrossing = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, mode = 0, detail = 0, same_screen = 0, focus = 0, state = 3991915456}, xfocus = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, mode = 1, detail = 0}, xexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, x = 1, y = 0, width = -1543493120, height = 32707, count = 17007611}, xgraphicsexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, drawable = 51539607683, x = 1, y = 0, width = -1543493120, height = 32707, count = 17007611, major_code = 0, minor_code = 411}, xnoexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, drawable = 51539607683, major_code = 1, minor_code = 0}, xvisibility = {type = 35, serial = 165, send_--Type <RET> for more, q to quit, c to continue without paging--
event = 0, display = 0x5597ee0a8c00, window = 51539607683, state = 1}, xcreatewindow = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, override_redirect = 0}, xdestroywindow = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1}, xunmap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, from_configure = -1543493120}, xmap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, override_redirect = -1543493120}, xmaprequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1}, xreparent = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, parent = 140478246824448, x = 17007611, y = 0, override_redirect = 411}, xconfigure = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, above = 6292650, override_redirect = 0}, xgravity = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, x = -1543493120, y = 32707}, xresizerequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, width = 1, height = 0}, xconfigurerequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, above = 6292650, detail = 0, value_mask = 0}, xcirculate = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, place = -1543493120}, xcirculaterequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, place = -1543493120}, xproperty = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, atom = 1, time = 140478246824448, state = 17007611}, xselectionclear = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, selection = 1, time = 140478246824448}, xselectionrequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, owner = 51539607683, requestor = 1, selection = 140478246824448, target = 17007611, property = 411, time = 6292650}, xselection = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, requestor = 51539607683, selection = 1, target = 140478246824448, property = 17007611, time = 411}, xcolormap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, col--Type <RET> for more, q to quit, c to continue without paging--
ormap = 1, new = -1543493120, state = 32707}, xclient = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, message_type = 1, format = -1543493120, data = {b = "\373\203\003\001\000\000\000\000\233\001\000\000\000\000\000\000\252\004`", s = {-31749, 259, 0, 0, 411, 0, 0, 0, 1194, 96}, l = {17007611, 411, 6292650, 0, 0}}}, xmapping = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, request = 1, first_keycode = 0, count = -1543493120}, xerror = {type = 35, display = 0xa5, resourceid = 0, serial = 94111022091264, error_code = 131 '\203', request_code = 0 '\000', minor_code = 0 '\000'}, xkeymap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, key_vector = "\001\000\000\000\000\000\000\000\000*\000\244\303\177\000\000\373\203\003\001\000\000\000\000\233\001\000\000\000\000\000"}, xgeneric = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, extension = 131, evtype = 12}, xcookie = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, extension = 131, evtype = 12, cookie = 1, data = 0x7fc3a4002a00}, pad = {35, 165, 0, 94111022091264, 51539607683, 1, 140478246824448, 17007611, 411, 6292650, 0, 0, 94111020338112, 94111023480112, 94111023412800, 94111020345856, 94111023683792, 94111023314160, 94111023414544, 94111020450352, 94111023458096, 94111023411920, 94111020391904, 94111023488976}}
xdisplay = 0x5597ee0a8c00
event_source = 0x5597ee22ee60
display_x11 = 0x5597edeb5450
#11 _gdk_x11_display_queue_events (display=0x5597edeb5450) at x11/gdkeventsource.c:341
event = <optimized out>
xevent =
{type = 35, xany = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683}, xkey = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, keycode = 0, same_screen = 0}, xbutton = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, button = 0, same_screen = 0}, xmotion = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, state = 0, --Type <RET> for more, q to quit, c to continue without paging--
is_hint = 0 '\000', same_screen = 0}, xcrossing = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, root = 1, subwindow = 140478246824448, time = 17007611, x = 411, y = 0, x_root = 6292650, y_root = 0, mode = 0, detail = 0, same_screen = 0, focus = 0, state = 3991915456}, xfocus = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, mode = 1, detail = 0}, xexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, x = 1, y = 0, width = -1543493120, height = 32707, count = 17007611}, xgraphicsexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, drawable = 51539607683, x = 1, y = 0, width = -1543493120, height = 32707, count = 17007611, major_code = 0, minor_code = 411}, xnoexpose = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, drawable = 51539607683, major_code = 1, minor_code = 0}, xvisibility = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, state = 1}, xcreatewindow = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, override_redirect = 0}, xdestroywindow = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1}, xunmap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, from_configure = -1543493120}, xmap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, override_redirect = -1543493120}, xmaprequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1}, xreparent = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, parent = 140478246824448, x = 17007611, y = 0, override_redirect = 411}, xconfigure = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, above = 6292650, override_redirect = 0}, xgravity = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, event = 51539607683, window = 1, x = -1543493120, y = 32707}, xresizerequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, width = 1, height = 0}, xconfigurerequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, x = -1543493120, y = 32707, width = 17007611, height = 0, border_width = 411, above = 6292650, detail = 0, value_mask = 0}, xcirculate = {type = 35, serial = 165, send_event = 0, display = 0x5597ee--Type <RET> for more, q to quit, c to continue without paging--
0a8c00, event = 51539607683, window = 1, place = -1543493120}, xcirculaterequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, parent = 51539607683, window = 1, place = -1543493120}, xproperty = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, atom = 1, time = 140478246824448, state = 17007611}, xselectionclear = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, selection = 1, time = 140478246824448}, xselectionrequest = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, owner = 51539607683, requestor = 1, selection = 140478246824448, target = 17007611, property = 411, time = 6292650}, xselection = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, requestor = 51539607683, selection = 1, target = 140478246824448, property = 17007611, time = 411}, xcolormap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, colormap = 1, new = -1543493120, state = 32707}, xclient = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, message_type = 1, format = -1543493120, data = {b = "\373\203\003\001\000\000\000\000\233\001\000\000\000\000\000\000\252\004`", s = {-31749, 259, 0, 0, 411, 0, 0, 0, 1194, 96}, l = {17007611, 411, 6292650, 0, 0}}}, xmapping = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, request = 1, first_keycode = 0, count = -1543493120}, xerror = {type = 35, display = 0xa5, resourceid = 0, serial = 94111022091264, error_code = 131 '\203', request_code = 0 '\000', minor_code = 0 '\000'}, xkeymap = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, window = 51539607683, key_vector = "\001\000\000\000\000\000\000\000\000*\000\244\303\177\000\000\373\203\003\001\000\000\000\000\233\001\000\000\000\000\000"}, xgeneric = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, extension = 131, evtype = 12}, xcookie = {type = 35, serial = 165, send_event = 0, display = 0x5597ee0a8c00, extension = 131, evtype = 12, cookie = 1, data = 0x7fc3a4002a00}, pad = {35, 165, 0, 94111022091264, 51539607683, 1, 140478246824448, 17007611, 411, 6292650, 0, 0, 94111020338112, 94111023480112, 94111023412800, 94111020345856, 94111023683792, 94111023314160, 94111023414544, 94111020450352, 94111023458096, 94111023411920, 94111020391904, 94111023488976}}
xdisplay = 0x5597ee0a8c00
event_source = 0x5597ee22ee60
display_x11 = 0x5597edeb5450
#12 0x00007fc3be23485b in gdk_display_get_event (display=0x5597edeb5450)
--Type <RET> for more, q to quit, c to continue without paging--
at gdkdisplay.c:442
__func__ = "gdk_display_get_event"
#13 0x00007fc3be26c496 in gdk_event_source_dispatch
(source=source@entry=0x5597ee22ee60, callback=<optimized out>, user_data=<optimized out>) at x11/gdkeventsource.c:363
display = 0x5597edeb5450
event = <optimized out>
#14 0x00007fc3bddaca9f in g_main_dispatch (context=0x5597edec2000) at ../glib/gmain.c:3325
dispatch = <optimized out>
prev_source = 0x0
begin_time_nsec = 0
was_in_call = <optimized out>
user_data = 0x0
callback = 0x0
cb_funcs = 0x0
cb_data = 0x0
need_destroy = <optimized out>
source = 0x5597ee22ee60
current = 0x5597edec3120
i = 0
#15 g_main_context_dispatch (context=0x5597edec2000) at ../glib/gmain.c:4043
#16 0x00007fc3bddfea98 in g_main_context_iterate.constprop.0
(context=0x5597edec2000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4119
max_priority = 2147483647
timeout = -1
some_ready = 1
nfds = <optimized out>
allocated_nfds = <optimized out>
fds = 0x5597edf20720
#17 0x00007fc3bddac163 in g_main_loop_run (loop=0x5597edf842a0) at ../glib/gmain.c:4317
--Type <RET> for more, q to quit, c to continue without paging--
__func__ = "g_main_loop_run"
#18 0x00005597ed4a3962 in main (argc=<optimized out>, argv=<optimized out>)
at src/xdg-desktop-portal-gtk.c:289
owner_id = 1
error = 0x0
session_bus = <optimized out>
context = 0x5597ee028d30
system
Fedora 33 Workstation
$ dnf info xdg-desktop-portal-gtk
[…]
Installierte Pakete
Name : xdg-desktop-portal-gtk
Version : 1.8.0
Release : 1.fc33
Architecture : x86_64
Size : 631 k
Quelle : xdg-desktop-portal-gtk-1.8.0-1.fc33.src.rpm
Repository : @System
Aus Paketque : fedora
Summary : Backend implementation for xdg-desktop-portal using GTK+
URL : https://github.com/flatpak/xdg-desktop-portal-gtk
Lizenz : LGPLv2+
Description : A backend implementation for xdg-desktop-portal that is using
: GTK+ and various pieces of GNOME infrastructure, such as the
: org.gnome.Shell.Screenshot or org.gnome.SessionManager D-Bus
: interfaces.