* Applet version: 3.6.8
* Cinnamon version: 6.6.8
* Distribution: Arch Linux, kernel 6.18.35-1-lts
* Graphics hardware: N/A (not GPU-related)
Notify author of applet
@Gr3q
Issue
The weather applet crashes Cinnamon with SIGSEGV when using automatic location (GeoClue). GeoClue has a 60-second idle timeout — it starts on request, serves the location, then shuts down. On the next weather refresh cycle, the applet's D-Bus proxy is stale and sends a malformed GVariant, causing a segfault in GLib.
This produced 20 crashes over 12 days, accelerating to 5 crashes in 38 minutes on the worst day. Setting a fixed location (bypassing GeoClue entirely) immediately resolved the crashes.
Stack trace (from coredumpctl)
Stack trace of thread 542054:
#0 0x00007fd7f82dc694 g_variant_type_info_get_type_string (libglib-2.0.so.0 + 0xbe694)
#1 0x00007fd7f8504886 n/a (libgio-2.0.so.0 + 0x120886)
#2 0x00007fd7f8507c18 g_dbus_message_to_blob (libgio-2.0.so.0 + 0x123c18)
#3 0x00007fd7f84f7dc3 n/a (libgio-2.0.so.0 + 0x113dc3)
#4 0x00007fd7f84f86c7 n/a (libgio-2.0.so.0 + 0x1146c7)
#5 0x00007fd7f84f8894 g_dbus_connection_send_message_with_reply (libgio-2.0.so.0 + 0x114894)
#6 0x00007fd7f8506588 n/a (libgio-2.0.so.0 + 0x122588)
#7 0x00007fd7f8514aad n/a (libgio-2.0.so.0 + 0x130aad)
#8 0x00007fd7f8514cbc g_dbus_proxy_call (libgio-2.0.so.0 + 0x130cbc)
#9 0x00007fd7a42887e4 n/a (libgeoclue-2.so.0 + 0xd7e4)
Additional crash variants observed in the same session hit g_str_equal and g_variant_get_child_value — all during GVariant/D-Bus marshalling from libgeoclue-2.so.0.
.xsession-errors also shows repeated warnings from the applet:
(cinnamon:547138): St-CRITICAL **: st_widget_get_theme_node called on the widget
[0x55fce39c90c0 StLabel.hourly-data ("...")] which is not in the stage.
Steps to reproduce
- Enable the weather applet with automatic location (GeoClue)
- Wait — GeoClue starts on location request, then shuts down after 60 seconds idle
- On the next weather refresh, Cinnamon crashes with SIGSEGV
Expected behaviour
The applet should handle GeoClue's idle shutdown gracefully — either keeping the proxy alive, reconnecting, or catching the D-Bus error instead of passing an invalid GVariant.
Workaround
Set a fixed location in the applet settings instead of using automatic location detection.
Versions
- cinnamon 6.6.8-1
- muffin 6.6.3-1
- cjs 128.1-2
- glib2 2.88.1-1
- geoclue 2.8.1-1
Related issues
Notify author of applet
@Gr3q
Issue
The weather applet crashes Cinnamon with SIGSEGV when using automatic location (GeoClue). GeoClue has a 60-second idle timeout — it starts on request, serves the location, then shuts down. On the next weather refresh cycle, the applet's D-Bus proxy is stale and sends a malformed GVariant, causing a segfault in GLib.
This produced 20 crashes over 12 days, accelerating to 5 crashes in 38 minutes on the worst day. Setting a fixed location (bypassing GeoClue entirely) immediately resolved the crashes.
Stack trace (from coredumpctl)
Additional crash variants observed in the same session hit
g_str_equalandg_variant_get_child_value— all during GVariant/D-Bus marshalling fromlibgeoclue-2.so.0..xsession-errors also shows repeated warnings from the applet:
Steps to reproduce
Expected behaviour
The applet should handle GeoClue's idle shutdown gracefully — either keeping the proxy alive, reconnecting, or catching the D-Bus error instead of passing an invalid GVariant.
Workaround
Set a fixed location in the applet settings instead of using automatic location detection.
Versions
Related issues