prasanthrangan / hyprdots

// Aesthetic, dynamic and minimal dots for Arch hyprland
GNU General Public License v3.0
6.55k stars 785 forks source link

Waybar dies on it's own completely random #265

Open kronikpillow opened 11 months ago

kronikpillow commented 11 months ago

What the title says ... been going on for a few weeks now, been looking at how to debug this ... any suggestions?

prasanthrangan commented 11 months ago

oh completely random?? or is it caused by any particular module?? maybe you can try lunching waybar from terminal and capturing the logs in a file to figure out whats causing the crash.

kronikpillow commented 7 months ago

I am experiencing the exact same issue all day for several weeks now, it's catastrofically annoying ... i edited the config and launched waybar with a & > waybar_crashlog.txt

[2024-02-13 01:53:46.763] [info] Using configuration file /home/kronikpillow/.config/waybar/config.jsonc [2024-02-13 01:53:46.765] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop [2024-02-13 01:53:46.765] [info] Using CSS file /home/kronikpillow/.config/waybar/style.css [2024-02-13 01:53:46.775] [warning] Mapping is not an object [2024-02-13 01:53:46.775] [info] Hyprland IPC starting [2024-02-13 01:53:46.786] [warning] module backlight: Disabling module "backlight", No backlight found [2024-02-13 01:53:46.790] [error] findCurController() failed: no bluetooth controller found [2024-02-13 01:53:46.798] [warning] No batteries.

(waybar:1780564): GLib-GObject-CRITICAL **: 01:53:46.839: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '73'

(waybar:1780564): GLib-GObject-CRITICAL **: 01:53:46.840: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '72' [2024-02-13 01:53:46.840] [warning] Mapping is not an object [2024-02-13 01:53:46.850] [warning] module backlight: Disabling module "backlight", No backlight found [2024-02-13 01:53:46.851] [error] findCurController() failed: no bluetooth controller found [2024-02-13 01:53:46.857] [warning] No batteries.

(waybar:1780564): WARNING : 01:53:47.014: Status Notifier Item with bus name ':1.12' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.142: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.143: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.146: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.146: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.149: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.149: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.151: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:1780564): Gtk-CRITICAL **: 01:53:47.151: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed [2024-02-13 01:53:47.163] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules [2024-02-13 01:53:47.163] [info] Bar configured (width: 1920, height: 31) for output: DVI-I-1 [2024-02-13 01:53:47.164] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules [2024-02-13 01:53:47.164] [info] Bar configured (width: 1920, height: 31) for output: HDMI-A-1 ==> ERROR: Cannot fetch updates

kRHYME7 commented 7 months ago

@kronikpillow thanks! this log might be the key. Can you provide another log just for comparison?

The ==> ERROR: Cannot fetch updates is from the system update module. If you can provide another log with that same error we can confirm that this is the problematic module.

kronikpillow commented 7 months ago
[2024-02-14 00:34:34.899] [info] Using configuration file /home/kronikpillow/.config/waybar/config.jsonc
[2024-02-14 00:34:34.901] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
[2024-02-14 00:34:34.901] [info] Using CSS file /home/kronikpillow/.config/waybar/style.css
[2024-02-14 00:34:34.909] [warning] Mapping is not an object
[2024-02-14 00:34:34.909] [info] Hyprland IPC starting
[2024-02-14 00:34:34.923] [warning] module backlight: Disabling module "backlight", No backlight found
[2024-02-14 00:34:34.926] [error] findCurController() failed: no bluetooth controller found
[2024-02-14 00:34:34.932] [warning] No batteries.

(waybar:2393459): GLib-GObject-CRITICAL **: 00:34:34.976: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '73'

(waybar:2393459): GLib-GObject-CRITICAL **: 00:34:34.976: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '72'
[2024-02-14 00:34:34.976] [warning] Mapping is not an object
[2024-02-14 00:34:34.984] [warning] module backlight: Disabling module "backlight", No backlight found
[2024-02-14 00:34:34.986] [error] findCurController() failed: no bluetooth controller found
[2024-02-14 00:34:34.990] [warning] No batteries.

** (waybar:2393459): WARNING **: 00:34:35.133: Status Notifier Item with bus name ':1.12' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
[2024-02-14 00:34:35.256] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules
[2024-02-14 00:34:35.256] [info] Bar configured (width: 1920, height: 31) for output: DVI-I-1

(waybar:2393459): Gtk-CRITICAL **: 00:34:35.260: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:2393459): Gtk-CRITICAL **: 00:34:35.260: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
[2024-02-14 00:34:35.263] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules
[2024-02-14 00:34:35.263] [info] Bar configured (width: 1920, height: 31) for output: HDMI-A-1

(waybar:2393459): Gtk-CRITICAL **: 00:34:35.265: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:2393459): Gtk-CRITICAL **: 00:34:35.265: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
==> ERROR: Cannot fetch updates

** (waybar:2393459): WARNING **: 00:37:35.531: Status Notifier Item with bus name ':1.12' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
sh: line 1: activate: command not found
[2024-02-14 11:26:49.562] [error] Hyprland IPC: Couldn't write (4)
waybar: ../src/modules/hyprland/window.cpp:95: waybar::modules::hyprland::Window::Workspace waybar::modules::hyprland::Window::getActiveWorkspace(const std::string&): Assertion `monitors.isArray()' failed.

here is another one :) I'm not knowledgeable enough to debug this on my own, if you want more detailed logs or something else, i would need instructions on what to do :)

kRHYME7 commented 7 months ago

Thanks! I can see that the systemupdate module consistently gives errors. can you try to Remove that for testing? Just to remove some variables.

I heard waybar have random crashes on multiple monitors.

kronikpillow commented 7 months ago

I do use multiple monitors, but i never had this problem until recently,. even thou I'v been a user of these dotfiles for quite a while, I'v used these dotfiles on Arch, Endevour, and even on Tumbleweed ... I should probably note that i am currently on Garuda Linux, but I'v streamlined the installation, removed unecessary Garuda stuff, and then installed these dotfiles ... it worked fine for a while, until recently when I pulled a few of the latest commits from Github and updated my dotfiles to the latest version ... althou I can't see why Garuda would be breaking ... I will disable the update module to see what happens, talk to you in 24h :)

kronikpillow commented 7 months ago

doesn't seem like it's the custom/updates module ... i removed it from the config file ... and it's still crashing ...

crash log:

[2024-02-15 00:33:28.739] [info] Using configuration file /home/kronikpillow/.config/waybar/config.jsonc
[2024-02-15 00:33:28.742] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
[2024-02-15 00:33:28.743] [info] Using CSS file /home/kronikpillow/.config/waybar/style.css
[2024-02-15 00:33:28.752] [warning] Mapping is not an object
[2024-02-15 00:33:28.752] [info] Hyprland IPC starting
[2024-02-15 00:33:28.775] [warning] module backlight: Disabling module "backlight", No backlight found
[2024-02-15 00:33:28.776] [error] findCurController() failed: no bluetooth controller found
[2024-02-15 00:33:28.787] [warning] No batteries.

(waybar:3109168): GLib-GObject-CRITICAL **: 00:33:28.833: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '73'

(waybar:3109168): GLib-GObject-CRITICAL **: 00:33:28.833: ../glib/gobject/gsignal.c:2088: type 'GtkWindow' is already overridden for signal id '72'
[2024-02-15 00:33:28.834] [warning] Mapping is not an object
[2024-02-15 00:33:28.846] [warning] module backlight: Disabling module "backlight", No backlight found
[2024-02-15 00:33:28.849] [error] findCurController() failed: no bluetooth controller found
[2024-02-15 00:33:28.859] [warning] No batteries.

** (waybar:3109168): WARNING **: 00:33:29.011: Status Notifier Item with bus name ':1.12' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
[2024-02-15 00:33:29.153] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules
[2024-02-15 00:33:29.153] [info] Bar configured (width: 1920, height: 31) for output: DVI-I-1

(waybar:3109168): Gtk-CRITICAL **: 00:33:29.155: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:3109168): Gtk-CRITICAL **: 00:33:29.155: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:3109168): Gtk-CRITICAL **: 00:33:29.156: gtk_widget_set_accel_path: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed

(waybar:3109168): Gtk-CRITICAL **: 00:33:29.156: gtk_widget_add_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group)' failed
[2024-02-15 00:33:29.157] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules
[2024-02-15 00:33:29.157] [info] Bar configured (width: 1920, height: 31) for output: HDMI-A-1
==> ERROR: Cannot fetch updates
[2024-02-15 00:45:40.903] [error] Hyprland IPC: Couldn't write (4)
waybar: ../src/modules/hyprland/window.cpp:95: waybar::modules::hyprland::Window::Workspace waybar::modules::hyprland::Window::getActiveWorkspace(const std::string&): Assertion `monitors.isArray()' failed.

or maybe it's this? [2024-02-15 00:33:29.153] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules [2024-02-15 00:33:29.153] [info] Bar configured (width: 1920, height: 31) for output: DVI-I-1

maybe it's crashing because of the fact that im using PC, not laptop? so no backlight

kRHYME7 commented 7 months ago

If you recently pulled the modules that are new/changed are cpuinfo and gpuinfo so maybe try to eliminate them too? I will try to use an extra monitor for testing this. Thanks! BTW do not forget to toggle next/prev your waybar to reset the configs.

kronikpillow commented 6 months ago

I tried everything, i even went to extent of bringing modules to bare bone minimum ... still keeps crashing, one interesting part of the log is that it keeps telling me min bar height is 31, while 21 is set when changing themes ... where do i change the height permanently? so that even when i change theme it doesn't change height back to 21

kRHYME7 commented 6 months ago

@kronikpillow Thanks for your efforts.

The second field is set to be the scaling. image

Maybe you should check the issue tracker for waybar.

jenil1122 commented 6 months ago

I tried following Command

waybar & disown

And here's the Output


 ✔  02:02:03 PM  
** (waybar:149018): WARNING **: 14:02:03.865: Status Notifier Item with bus name ':1.73' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
[2024-03-05 14:02:03.955] [warning] Requested height: 21 is less than the minimum height: 31 required by the modules
[2024-03-05 14:02:03.956] [info] Bar configured (width: 1920, height: 31) for output: eDP-1

** (waybar:149018): WARNING **: 14:02:04.332: Status Notifier Item with bus name ':1.73' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
cat: /sys/class/power_supply/BAT0/current_now: No such device

** (waybar:149018): WARNING **: 14:02:12.451: Status Notifier Item with bus name ':1.73' and object path '/org/ayatana/NotificationItem/nm_applet' is already registered
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
cat: /sys/class/power_supply/BAT0/current_now: No such device
.….
same error 1000 times
……
cat: /sys/class/power_supply/BAT0/current_now: No such device
[2024-03-05 14:54:02.477] [error] Hyprland IPC: Couldn't write (4)
waybar: ../src/modules/hyprland/window.cpp:95: waybar::modules::hyprland::Window::Workspace waybar::modules::hyprland::Window::getActiveWorkspace(const std::string&): Assertion `monitors.isArray()' failed
kRHYME7 commented 6 months ago

@jenil1122 cat: /sys/class/power_supply/BAT0/current_now: No such device

This error seems one of the module. What is the output if you run this in the terminal ~/.config/hypr/scripts/gpuinfo.sh

Are you using a laptop?

jenil1122 commented 6 months ago

~/.config/hypr/scripts/gpuinfo.sh yes, HP Pavilion x360 OUTPUT :

cat: /sys/class/power_supply/BAT0/current_now: No such device
{"text":" 54°C", "tooltip":"Intel HD Graphics 620\n Temperature: 54°C ☁️\n󰾆 Utilization: 16 %\n Clock Speed: 2399.98/3100 MHz"}
kRHYME7 commented 6 months ago

What a strange behavior. We can suppress these errors, but is your battery working properly?

I wrote a function to check if we can read your battery information

 for item in /sys/class/power_supply/BAT*/* ; do if [ -f "$item" ] ; then echo -e "**Reading File:** '$item'\n$(cat "$item" || echo "Can't read" ; echo) " ; fi ; done

It should Look like this image

jenil1122 commented 6 months ago

What a strange behavior. We can suppress these errors, but is your battery working properly?

I wrote a function to check if we can read your battery information

 for item in /sys/class/power_supply/BAT*/* ; do if [ -f "$item" ] ; then echo -e "**Reading File:** '$item'\n$(cat "$item" || echo "Can't read" ; echo) " ; fi ; done

It should Look like this image

**Reading File:** '/sys/class/power_supply/BAT0/alarm'
0 
**Reading File:** '/sys/class/power_supply/BAT0/capacity'
52 
**Reading File:** '/sys/class/power_supply/BAT0/capacity_level'
Normal 
**Reading File:** '/sys/class/power_supply/BAT0/charge_full'
2942000 
**Reading File:** '/sys/class/power_supply/BAT0/charge_full_design'
2942000 
**Reading File:** '/sys/class/power_supply/BAT0/charge_now'
1531000 
cat: /sys/class/power_supply/BAT0/current_now: No such device
**Reading File:** '/sys/class/power_supply/BAT0/current_now'
Can't read 
**Reading File:** '/sys/class/power_supply/BAT0/cycle_count'
0 
**Reading File:** '/sys/class/power_supply/BAT0/manufacturer'
333-42-42 
**Reading File:** '/sys/class/power_supply/BAT0/model_name'
BI03041XL 
**Reading File:** '/sys/class/power_supply/BAT0/present'
1 
**Reading File:** '/sys/class/power_supply/BAT0/serial_number'
 9001 
**Reading File:** '/sys/class/power_supply/BAT0/status'
Discharging 
**Reading File:** '/sys/class/power_supply/BAT0/technology'
Li-ion 
**Reading File:** '/sys/class/power_supply/BAT0/type'
Battery 
**Reading File:** '/sys/class/power_supply/BAT0/uevent'
POWER_SUPPLY_NAME=BAT0
POWER_SUPPLY_TYPE=Battery
POWER_SUPPLY_STATUS=Discharging
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_TECHNOLOGY=Li-ion
POWER_SUPPLY_CYCLE_COUNT=0
POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11400000
POWER_SUPPLY_VOLTAGE_NOW=10886000
POWER_SUPPLY_CHARGE_FULL_DESIGN=2942000
POWER_SUPPLY_CHARGE_FULL=2942000
POWER_SUPPLY_CHARGE_NOW=1531000
POWER_SUPPLY_CAPACITY=52
POWER_SUPPLY_CAPACITY_LEVEL=Normal
POWER_SUPPLY_MODEL_NAME=BI03041XL
POWER_SUPPLY_MANUFACTURER=333-42-42
POWER_SUPPLY_SERIAL_NUMBER= 9001 
**Reading File:** '/sys/class/power_supply/BAT0/voltage_min_design'
11400000 
**Reading File:** '/sys/class/power_supply/BAT0/voltage_now'
10886000 
kRHYME7 commented 6 months ago

@jenil1122 Ideally this should not make waybar crash, but let's try to suppress this error.

On this file ~/.config/hyprdots/scripts/gpuinfo.sh Navigate to line 194 image

changes -f into -e

[[ -f "${file}" ]] && ... >>>>>>>>>>>> [[ -e "${file}" ]] && ...

Then try to run ~/.config/hyprdots/scripts/gpuinfo.sh it should not give this error cat: /sys/class/power_supply/BAT0/current_now: No such device