Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GTK4 apps crash on start after a gtk update #7854

Closed
1 task done
primalmotion opened this issue Sep 19, 2024 · 30 comments
Closed
1 task done

GTK4 apps crash on start after a gtk update #7854

primalmotion opened this issue Sep 19, 2024 · 30 comments
Labels
bug Something isn't working

Comments

@primalmotion
Copy link

Already reported ? *

  • I have searched the existing open and closed issues.

Regression?

No

System Info and Version

System/Version info
Hyprland, built from branch  at commit 0f594732b063a90d44df8c5d402d658f27471dfe  (props: bump version to 0.43.0).
Date: Sun Sep 8 16:48:21 2024
Tag: v0.43.0, commits: 5196

flags: (if any)


System Information:
System name: Linux
Node name: axion
Release: 6.10.10-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Thu, 12 Sep 2024 17:21:02 +0000


GPU information: 
00:02.0 VGA compatible controller [0300]: Intel Corporation Comet Lake UHD Graphics [8086:9bca] (rev 04) (prog-if 00 [VGA controller])
	DeviceName: VGA compatible controller


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:
  hyprexpo by Vaxry ver 1.0

======Config-Start======


Config File: /home/antoine/.config/hypr/hyprland.conf: Read Succeeded
env = QT_SELECT,6
env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_QPA_PLATFORM,wayland;xcb,
env = MOZ_ENABLE_WAYLAND,1
env = MOZ_WAYLAND,1
env = MOZ_DBUS_REMOTE,1
env = MOZ_USE_XINPUT2,1
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
#env = HYPRLAND_TRACE,1
# env = QT_SCALE_FACTOR,1.2
# env = QT_AUTO_SCREEN_SCALE_FACTOR,1.2
# env = SDL_VIDEODRIVER,wayland
# env = SDL_AUDIODRIVER,jack

#monitor=,prefered,auto,1,mirror,eDP-1
# monitor=DP-1,disable

# Home
monitor=Unknown-1,disabled
monitor=eDP-1,preferred,10000x10000@60,1
# monitor=desc:Dell Inc. DELL U2720Q 12PZP83,3840x2160@60,11920x9180,1.333333
monitor=desc:Dell Inc. DELL U2720Q 12PZP83,3840x2160@60,11920x9180,1.2
monitor=desc:Samsung Electric Company Smart M80C H1AK500000,preferred,6798x9279,1.2
# monitor=DP-2,preferred,11920x8720,1.2

input {
	kb_variant = nodeadkeys
	kb_layout =
	kb_model =
	kb_options = compose:caps
	kb_rules =
	follow_mouse = true
	focus_on_close = 1 # 0: next in focus ring, 1 under mouse
	touchpad {
		disable_while_typing = true
		drag_lock = true
		natural_scroll = true
		scroll_factor = 0.6
	}
}

device{
	name = htix5288:00-0911:5288-trackpad
	sensitivity = 2
	accel_profile = adaptive
	disable_while_typing = true
	drag_lock = true
	natural_scroll = true
}

device{
	name = apple-inc.-magic-trackpad-2-1
	accel_profile = adaptive
	disable_while_typing = true
	drag_lock = true
	natural_scroll = true
}

general {
	layout = master
	gaps_in = 6
	gaps_out = 12
	border_size = 3
}

master {
	no_gaps_when_only = true
	mfact = 0.5
	special_scale_factor = 0.95
	allow_small_split = true
}

dwindle {
	preserve_split = true
	no_gaps_when_only = true
	special_scale_factor = 0.95
	smart_split = true
}

gestures {
	workspace_swipe = true
	workspace_swipe_invert = true
	workspace_swipe_fingers = 4
	workspace_swipe_distance = 1300
	workspace_swipe_cancel_ratio = 0.5
	workspace_swipe_min_speed_to_force = 20
	workspace_swipe_create_new = false
	workspace_swipe_direction_lock = false
}

misc {
	disable_hyprland_logo = true
	vrr = true
	vfr = true
	enable_swallow = true
	swallow_regex = ^(foot)$
	swallow_exception_regex = wev
	allow_session_lock_restore = 1
}

group {
	groupbar {
		render_titles = 0
		gradients = false
	}
	insert_after_current = true
}

decoration {
	rounding = 8
	blur {
		enabled = true
		size = 8
		passes = 1
		brightness = 1.0
		vibrancy = 0.2
		vibrancy_darkness = 0.6
		# special = true
	}
	drop_shadow = true
	shadow_range = 32
	shadow_render_power = 18
	col.shadow = rgba(00000044)
	dim_special = 0.8
	# inactive_opacity = 0.55
}

animations {
	enabled = true
	animation = windows,1,4,default,slide
	animation = border,1,3,default
	animation = fade,1,2,default
	animation = workspaces,1,3,default
	animation = specialWorkspace,1,4,default,fade
	animation = borderangle,1,20,default
}

source = ~/.config/hypr/color.conf

layerrule=blur,waybar
layerrule=ignorezero,waybar
layerrule=blur,launcher
layerrule=ignorezero,launcher
layerrule=blur,notifications
layerrule=ignorezero,notifications

# workspace definition
$ws1 = 1
$ws2 = 2
$ws3 = 3
$ws4 = 4
$ws5 = 5
$ws6 = 6
$ws7 = 7
$ws8 = 8
$ws9 = 9

# bind locked
bindl = ,switch:Lid Switch,exec,lid.sh
bindel = ,XF86AudioLowerVolume,exec,volume.sh down
bindl = ,XF86AudioMute,exec,volume.sh mute
bindl = ,XF86AudioNext,exec,playerctl next
bindl = ,XF86AudioPlay,exec,playerctl play-pause
bindl = ,XF86AudioPrev,exec,playerctl previous
bindel = ,XF86AudioRaiseVolume,exec,volume.sh up
bindel = ,XF86MonBrightnessDown,exec,brightness.sh down
bindel = ,XF86MonBrightnessUp,exec,brightness.sh up
bindl = SUPER,F12,exec,resume.sh
bindl = SUPER,F5,exec,sleep 1 && hyprctl dispatch dpms off
bindl = SUPER,F6,exec,sleep 1 && hyprctl dispatch dpms on
bindl = SUPER,z,exec,systemctl --user status lockscreen --no-pager && systemctl --user restart lockscreen

# mouse
bindm = ,mouse:274,movewindow
bindm = SUPER,mouse:272,movewindow
bindm = SUPER,mouse:273,resizewindow
bindm = SUPER,mouse:274,resizewindow

# basic workspace selection
bind = SUPER,0,workspace,$ws10
bind = SUPER,1,workspace,$ws1
bind = SUPER,2,workspace,$ws2
bind = SUPER,3,workspace,$ws3
bind = SUPER,4,workspace,$ws4
bind = SUPER,5,workspace,$ws5
bind = SUPER,6,workspace,$ws6
bind = SUPER,7,workspace,$ws7
bind = SUPER,8,workspace,$ws8
bind = SUPER,9,workspace,$ws9

bind = SUPER,g,pin

# managing groups
bind = SUPER,bracketleft,changegroupactive,b
bind = SUPER,bracketright,changegroupactive,f
# bind = SUPER,left,changegroupactive,b
# bind = SUPER,right,changegroupactive,f
bind = SUPER,l,lockactivegroup,toggle
bind = SUPER,w,togglegroup,
bind = SUPER_SHIFT,bracketleft,lockgroups,lock
bind = SUPER_SHIFT,bracketright,lockgroups,unlock

# moving focus
bind = SUPER,down,movefocus,d
bind = SUPER,left,movefocus,l
bind = SUPER,right,movefocus,r
bind = SUPER,up,movefocus,u
bind = SUPER_SHIFT,h,movefocus,l
bind = SUPER_SHIFT,j,movefocus,d
bind = SUPER_SHIFT,k,movefocus,u
bind = SUPER_SHIFT,l,movefocus,r

# moving window in workspace
# bind = SUPER_SHIFT,down,movewindow,d
# bind = SUPER_SHIFT,left,movewindow,l
# bind = SUPER_SHIFT,right,movewindow,r
# bind = SUPER_SHIFT,up,movewindow,u

# bind = SUPER_SHIFT,down,movewindow,d
# bind = SUPER_SHIFT,left,movewindow,l
# bind = SUPER_SHIFT,right,movewindow,r
# bind = SUPER_SHIFT,up,movewindow,u
bind = SUPER_SHIFT,down,movewindoworgroup,d
bind = SUPER_SHIFT,left,movewindoworgroup,l
bind = SUPER_SHIFT,right,movewindoworgroup,r
bind = SUPER_SHIFT,up,movewindoworgroup,u

# moving windows to workspaces
bind = SUPER_SHIFT,0,movetoworkspacesilent,$ws10
bind = SUPER_SHIFT,1,movetoworkspacesilent,$ws1
bind = SUPER_SHIFT,2,movetoworkspacesilent,$ws2
bind = SUPER_SHIFT,3,movetoworkspacesilent,$ws3
bind = SUPER_SHIFT,4,movetoworkspacesilent,$ws4
bind = SUPER_SHIFT,5,movetoworkspacesilent,$ws5
bind = SUPER_SHIFT,6,movetoworkspacesilent,$ws6
bind = SUPER_SHIFT,7,movetoworkspacesilent,$ws7
bind = SUPER_SHIFT,8,movetoworkspacesilent,$ws8
bind = SUPER_SHIFT,9,movetoworkspacesilent,$ws9
bind = SUPER_SHIFT_ALT,0,movetoworkspacesilent,$ws20
bind = SUPER_SHIFT_ALT,1,movetoworkspacesilent,$ws11
bind = SUPER_SHIFT_ALT,2,movetoworkspacesilent,$ws12
bind = SUPER_SHIFT_ALT,3,movetoworkspacesilent,$ws13
bind = SUPER_SHIFT_ALT,4,movetoworkspacesilent,$ws14
bind = SUPER_SHIFT_ALT,5,movetoworkspacesilent,$ws15
bind = SUPER_SHIFT_ALT,6,movetoworkspacesilent,$ws16
bind = SUPER_SHIFT_ALT,7,movetoworkspacesilent,$ws17
bind = SUPER_SHIFT_ALT,8,movetoworkspacesilent,$ws18
bind = SUPER_SHIFT_ALT,9,movetoworkspacesilent,$ws19

# moving window to monitors
bind = SUPER_CONTROL,down,movewindoworgroup,mon:d
bind = SUPER_CONTROL,left,movewindoworgroup,mon:l
bind = SUPER_CONTROL,right,movewindoworgroup,mon:r
bind = SUPER_CONTROL,up,movewindoworgroup,mon:u

# moving workspaces to monitors
bind = SUPER_ALT,down,movecurrentworkspacetomonitor,d
bind = SUPER_ALT,left,movecurrentworkspacetomonitor,l
bind = SUPER_ALT,right,movecurrentworkspacetomonitor,r
bind = SUPER_ALT,up,movecurrentworkspacetomonitor,u

# custom shortcuts
bind = ,Print,exec,screenshot.sh menu
bind = ,XF86PowerOff,exec,wlogout -m 400 -c 20 -b 4 -p layer-shell
bind = SHIFT,Print,exec,screencast.sh menu
bind = SUPER,End,exec,makoctl restore
bind = SUPER,F,fullscreen,
bind = SUPER,Q,killactive,
#bind = SUPER,Return,exec,LD_PRELOAD=/usr/bin/libasan.so term.sh
bind = SUPER,Return,exec,term.sh
bind = SUPER,Space,exec,tofi-drun.sh
bind = SUPER,apostrophe,togglespecialworkspace,
bind = SUPER,g,exec,hyprctl keyword master:no_gaps_when_only $([ $(hyprctl getoption master:no_gaps_when_only -j | jq .int) == 1 ] && echo 0 || echo 1)
bind = SUPER,j,workspace,m-1
bind = SUPER,k,workspace,m+1
bind = SUPER,m,layoutmsg,addmaster
bind = SUPER,o,layoutmsg,orientationnext
bind = SUPER_ALT,p,exec,speak.sh
bind = SUPER,s,layoutmsg,togglesplit
bind = SUPER_ALT,Return,exec,termslurp.sh
bind = SUPER_ALT,Space,exec,tofi-run.sh
bind = SUPER_ALT,d,exec,dict.sh
bind = SUPER_ALTCTRL,Backspace,exec,wlogout -m 400 -c 20 -b 4 -p layer-shell
bind = SUPER_SHIFT,Backspace,exec,lockscreen.sh
bind = SUPER_SHIFT,E,exec,swaynag -m 'Really want to quit Hyprland?' -b 'Confirm And Exit' 'hyprctl dispatch exit ""' --button-gap 0 --button-dismiss-gap 3 --button-padding 3 --border-bottom-size 0 -y top
bind = SUPER_SHIFT,Return,movetoworkspace,special
bind = SUPER_SHIFT,m,layoutmsg,removemaster
bind = SUPER_SHIFT,o,layoutmsg,orientationprev
bind = SUPER_SHIFT,p,exec,gtk-launch ncpamixer

bind = SUPER_SHIFT,space,togglefloating,active
bind = SUPER_SHIFT,space,centerwindow,1

bind = SUPER_SHIFT,v,exec,clipman pick --tool CUSTOM -T "tofi --config $HOME/.config/tofi/config-clipman"
bind = SUPER_SHIFT,w,exec,killall waybar; waybar &> /dev/null
binde = SUPER,equal,exec,hyprgaps.sh inc
binde = SUPER,minus,exec,hyprgaps.sh dec

# submaps
bind=SUPER,r,submap,resize
submap = resize
bind = ,Return,submap,reset
binde = ,down,resizeactive,0 50
bind = ,escape,submap,reset
binde = ,left,resizeactive,-50 0
binde = ,right,resizeactive,50 0
binde = ,up,resizeactive,0 -50
submap = reset

bind = SUPER,b,submap,browser
submap = browser
bind = ,Return,exec,firefox
bind = ,Return,submap,reset
bind = ,Return,submap,reset
bind = ,escape,submap,reset
bind = ,p,exec,firefox --private-window
bind = ,p,submap,reset
submap = reset

bind = SUPER,v,submap,homeautomation
submap = homeautomation
bind = ,Equal,exec,denon up
bind = ,Minus,exec,denon down
bind = ,Plus,exec,denon up
bind = ,Return,submap,reset
bind = ,escape,submap,reset
bind = ,return,exec,homeautomation.sh menu
bind = ,return,submap,reset
submap = reset

#rules
windowrule = size 1024 600,ncpamixer
windowrule = center,ncpamixer
windowrule = float,ncpamixer
windowrule = float,title:^OpenSnitch.*

windowrule = tile,neovide

windowrule = noborder,org.gnome.*
windowrule = rounding 13,org.gnome.*
windowrule = rounding 0,fullscreen

windowrule = noborder,qmmp

# windowrule = float,zoom
# windowrule = center,zoom

windowrule = float,blueman-manager
windowrule = float,com.nextcloud.desktopclient.nextcloud
windowrule = float,ch.proton.bridge-gui

windowrule = float,wpg

windowrule = float,termfloat
windowrule = animation popin,termfloat
windowrule = animation popin,gcr-prompter

windowrule = idleinhibit always,mpv

windowrule = workspace $ws9,title:^(Slack).*$
windowrule = noblur,title:^(Slack).*$
windowrule = noinitialfocus,title:^(Slack).*$

windowrule = workspace $ws9,^neomutt$
windowrule = noinitialfocus,^neomtt$

windowrule = workspace $ws9,^gomuks$
windowrule = noinitialfocus,^gomuks$

windowrule = workspace $ws9,io.github.NhekoReborn.Nheko

windowrule = workspace $ws9,weechat

windowrule = workspace $ws10,cmus

windowrule = float,^neomutt-compose$

windowrule = workspace $ws10,de.haeckerfelix.Shortwave
windowrule = noblur,de.haeckerfelix.Shortwave
windowrule = float,de.haeckerfelix.Shortwave
windowrule = size 1200 800,de.haeckerfelix.Shortwave
windowrule = noborder,de.haeckerfelix.Shortwave
windowrule = rounding 13,de.haeckerfelix.Shortwave

windowrule = size 390 200,wttr
windowrule = float,wttr
windowrule = move 100%-400 36,wttr
windowrule = animation popin,wttr

windowrule = noblur,firefox
windowrule = float,title:^(Picture-in-Picture)$
windowrule = pin,title:^(Picture-in-Picture)$
windowrule = size 20% 20%,title:^(Picture-in-Picture)$
windowrule = move 100%-20% 100%-20%,title:^(Picture-in-Picture)$
windowrule = noborder,title:^(Picture-in-Picture)$
windowrule = animation popin,title:^(Picture-in-Picture)$
windowrule = float,title:^(Firefox — Sharing Indicator)
windowrule = move 0 0,title:^(Firefox — Sharing Indicator)
windowrule = size 80 40,title:^(Firefox — Sharing Indicator)
windowrule = maxsize 80 40,title:^(Firefox — Sharing Indicator)
windowrule = idleinhibit focus,org.TasEmulators.fceux
windowrule = idleinhibit always,projectM-pulseaudio

windowrule = opaque,org.https://nomacs.nomacs
windowrule = noblur,org.https://nomacs.nomacs
windowrule = opacity 1 1,org.https://nomacs.nomacs

windowrule = opaque,title:^(nvim)
windowrule = noblur,title:^(nvim)
windowrule = opacity 1 1,title:^(nvim)

windowrule = float,org.gnome.NautilusPreviewer
windowrule = size 1024 768,org.gnome.NautilusPreviewer

# do not let apps decide to go fullscreen
windowrulev2 = suppressevent maximize, class:.*

# initialization
exec = killall swaybg ; swaybg -m fill -i $(cat ~/.cache/wal/wal)
exec = touch /run/user/1000/tty1started
exec = lid.sh

exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec-once = hypridle
exec-once = wob.sh
exec-once = gsettings set org.gnome.desktop.interface font-name 'sans 13'
exec-once = waybar &> /dev/null
# exec-once = sudo usbguard set-parameter ImplicitPolicyTarget allow
exec-once = aa-notify -p -s 1 -w 60 -f /var/log/audit/audit.log
exec-once = wl-paste -t text --watch clipman store
exec-once = speak.sh french
exec-once = speak.sh english
exec-once = sleep 5; hyprmon.sh
exec-once = coms.sh
exec-once = sleep 5; nextcloud --background
exec-once = sleep 5; opensnitch-ui
exec-once = netboard listen
exec-once = systemctl --user restart libinput-gestures


plugin {
    hyprexpo {
        columns = 3
        gap_size = 10
        bg_col = rgb(333333)
        workspace_method = first 1 # [center/first] [workspace] e.g. first 1 or center m+1

        enable_gesture = true # laptop touchpad, 4 fingers
        # gesture_distance = 100 # how far is the "max"
        gesture_positive = false # positive = swipe down. Negative = swipe up.
    }
}

bind = SUPER,p,hyprexpo:expo,toggle
exec-once = hyprpm reload -n


Config File: /home/antoine/.config/hypr/color.conf: Read Succeeded
general {
	col.active_border=0xffddffad
	col.inactive_border=0xff34383b
}

group {
	col.border_inactive = 0xff34383b
	col.border_active = 0xffddffad
	col.border_locked_active = 0xffff7070
	col.border_locked_inactive = 0xff34383b

	groupbar {
		col.inactive = 0xff34383b
		col.active = 0xffddffad
		col.locked_active = 0xffff7070
		col.locked_inactive = 0xff34383b
	}
}

======Config-End========

Description

Since the last Arch update, no gtk application can run anymore on Hyprland.

They all crash like so

~  ●  nautilus
** Message: 09:47:07.468: Connecting to org.freedesktop.Tracker3.Miner.Files
nautilus-application-Message: 09:47:07.470: Failed to initialize display server connection: Cannot invoke method; proxy is for the well-known name org.gnome.Mutter.ServiceChannel without an owner, and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag

(org.gnome.Nautilus:22022): Adwaita-WARNING **: 09:47:07.534: Using GtkSettings:gtk-application-prefer-dark-theme with libadwaita is unsupported. Please use AdwStyleManager:color-scheme instead.
MESA-INTEL: warning: ../mesa-24.2.2/src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../mesa-24.2.2/src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers
[1]    22022 segmentation fault (core dumped)  nautilus

~  ●  gnome-clocks

(org.gnome.clocks:22094): Adwaita-WARNING **: 09:47:13.016: Using GtkSettings:gtk-application-prefer-dark-theme with libadwaita is unsupported. Please use AdwStyleManager:color-scheme instead.
MESA-INTEL: warning: ../mesa-24.2.2/src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../mesa-24.2.2/src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers
[1]    22094 segmentation fault (core dumped)  gnome-clocks

There is no issue running these apps under sway

How to reproduce

update arch, then run gnome app, like nautilus or gnome clocks

Crash reports, logs, images, videos

There is no crash, and nothing is logged on in hyprland logs this is the only thing that happens when I run nautilus in hyprland.log

[LOG] [CPrimarySelectionProtocol] New primary_seletion_manager at 625662639d00
[LOG] [CWLSeatProtocol] New seat resource bound at 6256657b0b50
[LOG] [CPrimarySelectionManager] New primary selection data device bound at 62566574b120
[LOG] [CWLDataDeviceManagerResource] New data device bound at 6256652bcd80
[LOG] [CWLCompositorResource] New wl_surface with id 29 at 625666b63370
[LOG] [CXDGShellProtocol] New xdg_wm_base at 6256653b09f0
[LOG] [CWLCompositorResource] New wl_surface with id 35 at 6256657c84c0
[LOG] Window 625666be9150 set title to x@axion:~
[LOG] Searching for matching rules for foot (title: x@axion:~)
[LOG] Window rule suppressevent maximize ->  class:.* matched [Window 625666be9150: title: "x@axion:~"]
@primalmotion primalmotion added the bug Something isn't working label Sep 19, 2024
@primalmotion
Copy link
Author

I tried with hyprland-git, but same issue.

@primalmotion
Copy link
Author

This is the coredump of the crashing app, if that helps,

dump.txt

@abihf
Copy link

abihf commented Sep 19, 2024

try using GSK_RENDERER=ngl nautilus

@primalmotion
Copy link
Author

with that env set, it works yeah

@abihf
Copy link

abihf commented Sep 19, 2024

I'm not sure why gtk can not use vulkan on hyprland, but it works fine on gnome.

@primalmotion
Copy link
Author

yeah, it works fine on any other DE/WM I tried.

@abihf
Copy link

abihf commented Sep 19, 2024

my temporary solution is to add

env=GSK_RENDERER,ngl

@MahouShoujoMivutilde
Copy link
Contributor

It's because of gtk4 update.

For me, it was upgraded gtk4 (1:4.14.5-1 -> 1:4.16.1-1).

And 4.14.5 works fine.

With the workaround 4.16.1 works too, but without - segfault.

Maybe some rebuild is yet to roll out to all mirrors.

@vaxerski
Copy link
Member

WAYLAND_DEBUG=1 pls

@vaxerski vaxerski changed the title cannot start any gtk apps GTK4 apps crash on start after a gtk update Sep 20, 2024
@MahouShoujoMivutilde
Copy link
Contributor

MahouShoujoMivutilde commented Sep 20, 2024

epiphany-debug-gtk4.16.1.log (segfault)

After downgrading everything that was updated and even remotely related to gtk

epiphany-debug-gtk4.14.5.log (works)

* forgot to mention, this is 9856378, aquamarine 0.4.1, with no GSK_RENDERER set

@LaineZ
Copy link

LaineZ commented Sep 20, 2024

Confirm, this issue persists only on Hyprland. On Weston works fine. RTX 3060, 560 drivers

System/Version info
Hyprland, built from branch  at commit 0f594732b063a90d44df8c5d402d658f27471dfe  (props: bump version to 0.43.0).
Date: Sun Sep 8 16:48:21 2024
Tag: v0.43.0, commits: 5196

flags: (if any)


System Information:
System name: Linux
Node name: stormcrafter
Release: 6.6.52-1-lts
Version: #1 SMP PREEMPT_DYNAMIC Wed, 18 Sep 2024 19:02:04 +0000


GPU information: 
06:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106 [GeForce RTX 3060 Lite Hash Rate] [10de:2504] (rev a1) (prog-if 00 [VGA controller])
NVRM version: NVIDIA UNIX x86_64 Kernel Module  560.35.03  Fri Aug 16 21:39:15 UTC 2024


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:

======Config-Start======


Config File: /home/bpm140/.config/hypr/hyprland.conf: Read Succeeded
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
debug {
    disable_logs = false 
}
################
### MONITORS ###
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = HDMI-A-1, 1280x1024@75, 0x350, 1, transform, 1
monitor = DP-1, 2560x1440@75, 1024x0, 1,
monitor = HDMI-A-2, 1440x900@75, 3584x540, 1
monitor = Unknown-1, disable
###################
### MY PROGRAMS ###
###################

# See https://wiki.hyprland.org/Configuring/Keywords/

# Set programs that you use
$terminal = xfce4-terminal 
$fileManager = thunar
$menu = rofi -show drun

env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = QT_STYLE_OVERRIDE,qt6ct
env = QT_QPA_PLATFORMTHEME,qt6ct
render:explicit_sync = 0

cursor {
    no_hardware_cursors = true
}

#################
### AUTOSTART ###
#################

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:

# exec-once = $terminal
exec-once = dbus-update-activation-environment --systemd DISPLAY HYPRLAND_INSTANCE_SIGNATURE WAYLAND_DISPLAY XDG_CURRENT_DESKTOP 
exec-once = nm-applet &
exec-once = /home/bpm140/start.potal.sh &
exec-once = easyeffects --gapplication-service &
exec-once = /home/bpm140/lw.sh &
exec-once = hyprpaper &
exec-once = /home/bpm140/wallpaper.fish &
exec-once = /usr/lib/xfce-polkit/xfce-polkit
exec-once = xrandr --output DP-1 --primary
exec-once = copyq --start-server
exec-once = blueman-manager &
exec-once = blueman-applet &
#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hyprland.org/Configuring/Environment-variables/

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24


#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hyprland.org/Configuring/Variables/

# https://wiki.hyprland.org/Configuring/Variables/#general
general { 
    gaps_in = 0
    gaps_out = 0

    border_size = 2

    # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
    col.active_border = rgb(a89984)
    col.inactive_border = rgb(282828)

    # Set to true enable resizing windows by clicking and dragging on borders and gaps
    resize_on_border = false 

    # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
    allow_tearing = false

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 0

    # Change transparency of focused and unfocused windows
    active_opacity = 1.0
    inactive_opacity = 1.0

    drop_shadow = false
    shadow_range = 8
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 8
        passes = 1
	noise = 0.2
        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true
    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
    bezier = myBezier, 0.05, 0.9, 0.1, 1.0
    animation = windows, 1, 5, myBezier
    animation = windowsOut, 1, 5, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 5, default
    animation = fade, 1, 5, default
    animation = workspaces, 1, 4, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc { 
    force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}


#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input

input {
    kb_layout = us,ru
    kb_variant =
    kb_model =
    kb_options = grp:alt_shift_toggle
    kb_rules =

    follow_mouse = 1
    accel_profile = flat
    sensitivity = -0.75 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = false
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
    name = epic-mouse-v1
    sensitivity = -0.5
}


####################
### KEYBINDINGSS ###
####################

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod_SHIFT, Q, killactive,
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod_SHIFT, Space, togglefloating,
bind = $mainMod, D, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod_SHIFT, F, fullscreen

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
bind = $mainMod, F1, workspace, 11
bind = $mainMod, F2, workspace, 12
bind = $mainMod, F3, workspace, 13
bind = $mainMod, F4, workspace, 14

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
bind = $mainMod_SHIFT, F1, movetoworkspace, 11
bind = $mainMod_SHIFT, F2, movetoworkspace, 12
bind = $mainMod_SHIFT, F3, movetoworkspace, 13
bind = $mainMod_SHIFT, F4, movetoworkspace, 14
bind = ,XF86AudioPlay, exec, playerctl play
bind = ,XF86AudioPause, exec, playerctl pause

# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
bind = $mainMod, Print, exec, hyprshot -z --clipboard-only -m region
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

#bind = ,mouse:275,exec ydotool -- click -r 5 0xC0

##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules

# Example windowrule v1
# windowrule = float, ^(kitty)$
windowrule = float, title:^(Steam Settings)$
windowrule = float, title:^(Friends List)$
windowrule = float, title:^(Authentication required)$
windowrule = float, title:^(Volume Control)$
windowrule = float, ^(zenity)$
#windowrulev2 = move cursor,class:jetbrains-webstorm,floating:1 
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

======Config-End========

Hyprland log:
hyprland.log

WAYLAND_DEBUG=1 gtk
waylandlog.txt

With GSK_RENDERER=ngl workaround works fine on hyprland though...

There also gdb coredump backtrace, if it help

#0  0x0000789726b1c9be in ?? () from /usr/lib/libnvidia-glcore.so.560.35.03
[Current thread is 1 (Thread 0x78974ad689c0 (LWP 1816))]
(gdb) bt
#0  0x0000789726b1c9be in ??? () at /usr/lib/libnvidia-glcore.so.560.35.03
#1  0x000078974d0a38b0 in ??? () at /usr/lib/libgtk-4.so.1
#2  0x000078974d0a44ac in ??? () at /usr/lib/libgtk-4.so.1
#3  0x000078974d027c4c in ??? () at /usr/lib/libgtk-4.so.1
#4  0x000078974d02821d in ??? () at /usr/lib/libgtk-4.so.1
#5  0x000078974d842596 in ??? () at /usr/lib/libffi.so.8
#6  0x000078974d83f00e in ??? () at /usr/lib/libffi.so.8
#7  0x000078974d841bd3 in ffi_call () at /usr/lib/libffi.so.8
#8  0x000078974bb0b8b0 in ??? () at /usr/lib/libwayland-client.so.0
#9  0x000078974bb0c139 in ??? () at /usr/lib/libwayland-client.so.0
#10 0x000078974bb0c553 in wl_display_dispatch_queue_pending () at /usr/lib/libwayland-client.so.0
#11 0x000078974bb0f4cc in wl_display_roundtrip_queue () at /usr/lib/libwayland-client.so.0
#12 0x000078974d033f24 in ??? () at /usr/lib/libgtk-4.so.1
#13 0x000078974d0a5f29 in ??? () at /usr/lib/libgtk-4.so.1
#14 0x000078974d956ca0 in g_initable_new_valist () at /usr/lib/libgio-2.0.so.0
#15 0x000078974d956d8c in g_initable_new () at /usr/lib/libgio-2.0.so.0
#16 0x000078974d0ea6a3 in ??? () at /usr/lib/libgtk-4.so.1
#17 0x000078974d12c8e9 in ??? () at /usr/lib/libgtk-4.so.1
#18 0x000078974d0b6ce3 in ??? () at /usr/lib/libgtk-4.so.1
#19 0x000078974d0be0fc in gsk_renderer_new_for_surface () at /usr/lib/libgtk-4.so.1
#20 0x000078974ce94171 in ??? () at /usr/lib/libgtk-4.so.1
#21 0x0000647a0222fb3e in ??? ()
#22 0x000078974df174cf in Gtk::Widget_Class::realize_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#23 0x000078974e1b2ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#24 0x000078974e1b2db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#25 0x000078974e1b2e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#26 0x000078974ce7066a in gtk_widget_realize () at /usr/lib/libgtk-4.so.1
#27 0x000078974ce8c7c4 in ??? () at /usr/lib/libgtk-4.so.1
#28 0x000078974df1731c in Gtk::Widget_Class::show_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#29 0x000078974e1b2ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#30 0x000078974e1b2db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#31 0x000078974e1b2e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#32 0x000078974ce719fc in gtk_widget_show () at /usr/lib/libgtk-4.so.1
#33 0x000078974ce8ed4c in ??? () at /usr/lib/libgtk-4.so.1
#34 0x000078974d6f5b7c in Gio::Application_Class::activate_callback(_GApplication*) () at /usr/lib/libgiomm-2.68.so.1
#35 0x000078974e1b2ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#36 0x000078974e1b2db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#37 0x000078974e1b2e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#38 0x0000647a02241f73 in ??? ()
#39 0x000078974d6f8f7a in ??? () at /usr/lib/libgiomm-2.68.so.1
#40 0x000078974d955401 in ??? () at /usr/lib/libgio-2.0.so.0
#41 0x000078974e19182a in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#42 0x000078974e1c23e5 in ??? () at /usr/lib/libgobject-2.0.so.0
#43 0x000078974e1b23a0 in ??? () at /usr/lib/libgobject-2.0.so.0
#44 0x000078974e1b2db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#45 0x000078974e1b2e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#46 0x000078974d9bc7a0 in ??? () at /usr/lib/libgio-2.0.so.0
#47 0x000078974d9c098a in ??? () at /usr/lib/libgio-2.0.so.0
#48 0x000078974d6f55d6 in Gio::Application::local_command_line_vfunc(char**&, int&) () at /usr/lib/libgiomm-2.68.so.1
#49 0x000078974d6f5865 in Gio::Application_Class::local_command_line_vfunc_callback(_GApplication*, char***, int*) () at /usr/lib/libgiomm-2.68.so.1
#50 0x000078974d9c0b07 in g_application_run () at /usr/lib/libgio-2.0.so.0
#51 0x000078974c634e08 in ??? () at /usr/lib/libc.so.6
#52 0x000078974c634ecc in __libc_start_main () at /usr/lib/libc.so.6

@abihf
Copy link

abihf commented Sep 20, 2024

@MahouShoujoMivutilde GSK_RENDERER is set to vulkan by default on gtk4.16, if you use gtk4.14 and set GSK_RENDERER=vulkan, it will also crash.

@vaxerski
Copy link
Member

maybe #7037 then?

@LaineZ
Copy link

LaineZ commented Sep 20, 2024

maybe #7037 then?

For me other vulkan programs X11/Wayland works just fine, X-Plane 12, vkcube-walyand, dota 2

@vaxerski
Copy link
Member

looks fixed for me with 9e98fb0

@LaineZ
Copy link

LaineZ commented Sep 20, 2024

looks fixed for me with 9e98fb0
I built the git version. Seems to be issue persists for me

Configuration (basically left unchanged, just commented out workaround variable):

System/Version info
Hyprland, built from branch main at commit 9e98fb0167f8bc6c5eb4510a65b42aaa3b743421  (dmabuffer: attempt importing failed dmabufs as implicit).
Date: Fri Sep 20 12:47:41 2024
Tag: v0.43.0-45-g9e98fb01, commits: 5241
built against aquamarine 0.4.1


flags: (if any)


System Information:
System name: Linux
Node name: stormcrafter
Release: 6.6.52-1-lts
Version: #1 SMP PREEMPT_DYNAMIC Wed, 18 Sep 2024 19:02:04 +0000


GPU information: 
06:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106 [GeForce RTX 3060 Lite Hash Rate] [10de:2504] (rev a1) (prog-if 00 [VGA controller])
NVRM version: NVIDIA UNIX x86_64 Kernel Module  560.35.03  Fri Aug 16 21:39:15 UTC 2024


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:

======Config-Start======


Config File: /home/bpm140/.config/hypr/hyprland.conf: Read Succeeded
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
debug {
    disable_logs = false 
}
################
### MONITORS ###
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = HDMI-A-1, 1280x1024@75, 0x350, 1, transform, 1
monitor = DP-1, 2560x1440@75, 1024x0, 1,
monitor = HDMI-A-2, 1440x900@75, 3584x540, 1
monitor = Unknown-1, disable
###################
### MY PROGRAMS ###
###################

# See https://wiki.hyprland.org/Configuring/Keywords/

# Set programs that you use
$terminal = xfce4-terminal 
$fileManager = thunar
$menu = rofi -show drun

env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = QT_STYLE_OVERRIDE,qt6ct
env = QT_QPA_PLATFORMTHEME,qt6ct
#env=GSK_RENDERER,ngl
render:explicit_sync = 0

cursor {
    no_hardware_cursors = true
}

#################
### AUTOSTART ###
#################

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:

# exec-once = $terminal
exec-once = dbus-update-activation-environment --systemd DISPLAY HYPRLAND_INSTANCE_SIGNATURE WAYLAND_DISPLAY XDG_CURRENT_DESKTOP 
exec-once = nm-applet &
exec-once = /home/bpm140/start.potal.sh &
exec-once = easyeffects --gapplication-service &
exec-once = /home/bpm140/lw.sh &
exec-once = hyprpaper &
exec-once = /home/bpm140/wallpaper.fish &
exec-once = /usr/lib/xfce-polkit/xfce-polkit
exec-once = xrandr --output DP-1 --primary
exec-once = copyq --start-server
exec-once = blueman-manager &
exec-once = blueman-applet &
#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hyprland.org/Configuring/Environment-variables/

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24


#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hyprland.org/Configuring/Variables/

# https://wiki.hyprland.org/Configuring/Variables/#general
general { 
    gaps_in = 0
    gaps_out = 0

    border_size = 2

    # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
    col.active_border = rgb(a89984)
    col.inactive_border = rgb(282828)

    # Set to true enable resizing windows by clicking and dragging on borders and gaps
    resize_on_border = false 

    # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
    allow_tearing = false

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 0

    # Change transparency of focused and unfocused windows
    active_opacity = 1.0
    inactive_opacity = 1.0

    drop_shadow = false
    shadow_range = 8
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 8
        passes = 1
	noise = 0.2
        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true
    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
    bezier = myBezier, 0.05, 0.9, 0.1, 1.0
    animation = windows, 1, 5, myBezier
    animation = windowsOut, 1, 5, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 5, default
    animation = fade, 1, 5, default
    animation = workspaces, 1, 4, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc { 
    force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}


#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input

input {
    kb_layout = us,ru
    kb_variant =
    kb_model =
    kb_options = grp:alt_shift_toggle
    kb_rules =

    follow_mouse = 1
    accel_profile = flat
    sensitivity = -0.75 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = false
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
    name = epic-mouse-v1
    sensitivity = -0.5
}


####################
### KEYBINDINGSS ###
####################

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod_SHIFT, Q, killactive,
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod_SHIFT, Space, togglefloating,
bind = $mainMod, D, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod_SHIFT, F, fullscreen

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
bind = $mainMod, F1, workspace, 11
bind = $mainMod, F2, workspace, 12
bind = $mainMod, F3, workspace, 13
bind = $mainMod, F4, workspace, 14

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
bind = $mainMod_SHIFT, F1, movetoworkspace, 11
bind = $mainMod_SHIFT, F2, movetoworkspace, 12
bind = $mainMod_SHIFT, F3, movetoworkspace, 13
bind = $mainMod_SHIFT, F4, movetoworkspace, 14
bind = ,XF86AudioPlay, exec, playerctl play
bind = ,XF86AudioPause, exec, playerctl pause

# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
bind = $mainMod, Print, exec, hyprshot -z --clipboard-only -m region
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

#bind = ,mouse:275,exec ydotool -- click -r 5 0xC0

##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules

# Example windowrule v1
# windowrule = float, ^(kitty)$
windowrule = float, title:^(Steam Settings)$
windowrule = float, title:^(Friends List)$
windowrule = float, title:^(Authentication required)$
windowrule = float, title:^(Volume Control)$
windowrule = float, ^(zenity)$
#windowrulev2 = move cursor,class:jetbrains-webstorm,floating:1 
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

======Config-End========

Hyprland log:
hyprland.log

WAYLAND_DEBUG=1 gtk log:
waylandlog.txt

Coredump log:

#0  0x00007358b2b1c9be in ??? () at /usr/lib/libnvidia-glcore.so.560.35.03
#1  0x00007358d90a38b0 in ??? () at /usr/lib/libgtk-4.so.1
#2  0x00007358d90a44ac in ??? () at /usr/lib/libgtk-4.so.1
#3  0x00007358d9027c4c in ??? () at /usr/lib/libgtk-4.so.1
#4  0x00007358d902821d in ??? () at /usr/lib/libgtk-4.so.1
#5  0x00007358d985e596 in ??? () at /usr/lib/libffi.so.8
#6  0x00007358d985b00e in ??? () at /usr/lib/libffi.so.8
#7  0x00007358d985dbd3 in ffi_call () at /usr/lib/libffi.so.8
#8  0x00007358d7b738b0 in ??? () at /usr/lib/libwayland-client.so.0
#9  0x00007358d7b74139 in ??? () at /usr/lib/libwayland-client.so.0
#10 0x00007358d7b74553 in wl_display_dispatch_queue_pending () at /usr/lib/libwayland-client.so.0
#11 0x00007358d7b774cc in wl_display_roundtrip_queue () at /usr/lib/libwayland-client.so.0
#12 0x00007358d9033f24 in ??? () at /usr/lib/libgtk-4.so.1
#13 0x00007358d90a5f29 in ??? () at /usr/lib/libgtk-4.so.1
#14 0x00007358d9a47ca0 in g_initable_new_valist () at /usr/lib/libgio-2.0.so.0
#15 0x00007358d9a47d8c in g_initable_new () at /usr/lib/libgio-2.0.so.0
#16 0x00007358d90ea6a3 in ??? () at /usr/lib/libgtk-4.so.1
#17 0x00007358d912c8e9 in ??? () at /usr/lib/libgtk-4.so.1
#18 0x00007358d90b6ce3 in ??? () at /usr/lib/libgtk-4.so.1
#19 0x00007358d90be0fc in gsk_renderer_new_for_surface () at /usr/lib/libgtk-4.so.1
#20 0x00007358d8e94171 in ??? () at /usr/lib/libgtk-4.so.1
#21 0x000060ff6b1ddb3e in ??? ()
#22 0x00007358d9f174cf in Gtk::Widget_Class::realize_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#23 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#24 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#25 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#26 0x00007358d8e7066a in gtk_widget_realize () at /usr/lib/libgtk-4.so.1
#27 0x00007358d8e8c7c4 in ??? () at /usr/lib/libgtk-4.so.1
#28 0x00007358d9f1731c in Gtk::Widget_Class::show_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#29 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#30 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#31 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#32 0x00007358d8e719fc in gtk_widget_show () at /usr/lib/libgtk-4.so.1
#33 0x00007358d8e8ed4c in ??? () at /usr/lib/libgtk-4.so.1
#34 0x00007358d96f5b7c in Gio::Application_Class::activate_callback(_GApplication*) () at /usr/lib/libgiomm-2.68.so.1
#35 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#36 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#37 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#38 0x000060ff6b1eff73 in ??? ()
#39 0x00007358d96f8f7a in ??? () at /usr/lib/libgiomm-2.68.so.1
#40 0x00007358d9a46401 in ??? () at /usr/lib/libgio-2.0.so.0
#41 0x00007358d9bb282a in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#42 0x00007358d9be33e5 in ??? () at /usr/lib/libgobject-2.0.so.0
#43 0x00007358d9bd33a0 in ??? () at /usr/lib/libgobject-2.0.so.0
#44 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#45 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#46 0x00007358d9aad7a0 in ??? () at /usr/lib/libgio-2.0.so.0
#47 0x00007358d9ab198a in ??? () at /usr/lib/libgio-2.0.so.0
#48 0x00007358d96f55d6 in Gio::Application::local_command_line_vfunc(char**&, int&) () at /usr/lib/libgiomm-2.68.so.1
#49 0x00007358d96f5865 in Gio::Application_Class::local_command_line_vfunc_callback(_GApplication*, char***, int*) () at /usr/lib/libgiomm-2.68.so.1
#50 0x00007358d9ab1b07 in g_application_run () at /usr/lib/libgio-2.0.so.0
#51 0x00007358d8634e08 in ??? () at /usr/lib/libc.so.6
#52 0x00007358d8634ecc in __libc_start_main () at /usr/lib/libc.so.6
#53 0x000060ff6b1d9d35 in ??? ()
(gdb) 
#0  0x00007358b2b1c9be in ??? () at /usr/lib/libnvidia-glcore.so.560.35.03
#1  0x00007358d90a38b0 in ??? () at /usr/lib/libgtk-4.so.1
#2  0x00007358d90a44ac in ??? () at /usr/lib/libgtk-4.so.1
#3  0x00007358d9027c4c in ??? () at /usr/lib/libgtk-4.so.1
#4  0x00007358d902821d in ??? () at /usr/lib/libgtk-4.so.1
#5  0x00007358d985e596 in ??? () at /usr/lib/libffi.so.8
#6  0x00007358d985b00e in ??? () at /usr/lib/libffi.so.8
#7  0x00007358d985dbd3 in ffi_call () at /usr/lib/libffi.so.8
#8  0x00007358d7b738b0 in ??? () at /usr/lib/libwayland-client.so.0
#9  0x00007358d7b74139 in ??? () at /usr/lib/libwayland-client.so.0
#10 0x00007358d7b74553 in wl_display_dispatch_queue_pending () at /usr/lib/libwayland-client.so.0
#11 0x00007358d7b774cc in wl_display_roundtrip_queue () at /usr/lib/libwayland-client.so.0
#12 0x00007358d9033f24 in ??? () at /usr/lib/libgtk-4.so.1
#13 0x00007358d90a5f29 in ??? () at /usr/lib/libgtk-4.so.1
#14 0x00007358d9a47ca0 in g_initable_new_valist () at /usr/lib/libgio-2.0.so.0
#15 0x00007358d9a47d8c in g_initable_new () at /usr/lib/libgio-2.0.so.0
#16 0x00007358d90ea6a3 in ??? () at /usr/lib/libgtk-4.so.1
#17 0x00007358d912c8e9 in ??? () at /usr/lib/libgtk-4.so.1
#18 0x00007358d90b6ce3 in ??? () at /usr/lib/libgtk-4.so.1
#19 0x00007358d90be0fc in gsk_renderer_new_for_surface () at /usr/lib/libgtk-4.so.1
#20 0x00007358d8e94171 in ??? () at /usr/lib/libgtk-4.so.1
#21 0x000060ff6b1ddb3e in ??? ()
#22 0x00007358d9f174cf in Gtk::Widget_Class::realize_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#23 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#24 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#25 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#26 0x00007358d8e7066a in gtk_widget_realize () at /usr/lib/libgtk-4.so.1
#27 0x00007358d8e8c7c4 in ??? () at /usr/lib/libgtk-4.so.1
#28 0x00007358d9f1731c in Gtk::Widget_Class::show_callback(_GtkWidget*) () at /usr/lib/libgtkmm-4.0.so.0
#29 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#30 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#31 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#32 0x00007358d8e719fc in gtk_widget_show () at /usr/lib/libgtk-4.so.1
#33 0x00007358d8e8ed4c in ??? () at /usr/lib/libgtk-4.so.1
#34 0x00007358d96f5b7c in Gio::Application_Class::activate_callback(_GApplication*) () at /usr/lib/libgiomm-2.68.so.1
#35 0x00007358d9bd3ca2 in ??? () at /usr/lib/libgobject-2.0.so.0
#36 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#37 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#38 0x000060ff6b1eff73 in ??? ()
#39 0x00007358d96f8f7a in ??? () at /usr/lib/libgiomm-2.68.so.1
#40 0x00007358d9a46401 in ??? () at /usr/lib/libgio-2.0.so.0
#41 0x00007358d9bb282a in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#42 0x00007358d9be33e5 in ??? () at /usr/lib/libgobject-2.0.so.0
#43 0x00007358d9bd33a0 in ??? () at /usr/lib/libgobject-2.0.so.0
#44 0x00007358d9bd3db2 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#45 0x00007358d9bd3e74 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#46 0x00007358d9aad7a0 in ??? () at /usr/lib/libgio-2.0.so.0
#47 0x00007358d9ab198a in ??? () at /usr/lib/libgio-2.0.so.0
#48 0x00007358d96f55d6 in Gio::Application::local_command_line_vfunc(char**&, int&) () at /usr/lib/libgiomm-2.68.so.1
#49 0x00007358d96f5865 in Gio::Application_Class::local_command_line_vfunc_callback(_GApplication*, char***, int*) () at /usr/lib/libgiomm-2.68.so.1
#50 0x00007358d9ab1b07 in g_application_run () at /usr/lib/libgio-2.0.so.0
#51 0x00007358d8634e08 in ??? () at /usr/lib/libc.so.6
#52 0x00007358d8634ecc in __libc_start_main () at /usr/lib/libc.so.6
#53 0x000060ff6b1d9d35 in ??? ()

@vaxerski
Copy link
Member

at this point it just looks like some gtk+nvidia issue to me

@vaxerski
Copy link
Member

image
someone suggested this?

@LaineZ
Copy link

LaineZ commented Sep 20, 2024

image someone suggested this?

Everything before I tested with this version

Name            : adwaita-icon-theme-legacy
Version         : 46.2-3
Description     : GNOME fallback icons for legacy apps

@vaxerski
Copy link
Member

well then this might be a gtk4+nv bug, I don't see how this could be a hl issue. Does it happen on sway or kwin?

@ArkadyBuryakov
Copy link

I have the same issue with gtk4 + intel integrated graphics.
Starts to happen right after I disable laptop monitor (to use only secondary one).

@vaxerski
Copy link
Member

uh-huh, I don't seem to have this on amd.

@vaxerski
Copy link
Member

oh, nice, updated and now I do too on amd :D

@vaxerski
Copy link
Member

vaxerski commented Sep 20, 2024

this is a gtk4 bug. In the vulkan renderer, if it gets a wp_fractional_scale_v1.preferred_scale event before (I assume) attaching a buffer to the surface, it will crash.

This is not invalid in any way and should not make gtk crash. In fact, it doesn't make anything else crash, or even gtk in gl mode

Should be reported to gtk

@vaxerski vaxerski closed this as not planned Won't fix, can't repro, duplicate, stale Sep 20, 2024
@TallenPeli
Copy link

TallenPeli commented Sep 20, 2024

at this point it just looks like some gtk+nvidia issue to me

My intel (Xe graphics) and AMD graphics card both have this issue. Most likely and issue with GTK4 or some dependence on a Gnome 47 feature which isn't implemented on Hyprland

@vaxerski
Copy link
Member

I've said what the problem is in the comment above yours

@vaxerski
Copy link
Member

https://gitlab.gnome.org/GNOME/gtk/-/issues/7022 would you look at that, KDE too.

@RononDex
Copy link

at this point it just looks like some gtk+nvidia issue to me

I am having the same issue on AMD GPU

@nic-pathhub
Copy link

at this point it just looks like some gtk+nvidia issue to me

I am having the same issue on AMD GPU
Likewise, I have a 6600xt

@vaxerski
Copy link
Member

great yes we've estabilished that. It's a gtk4 bug. Please see the linked report. No need to post anything more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

9 participants