summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorstuebinm2023-02-16 13:37:23 +0100
committerstuebinm2023-02-16 13:37:23 +0100
commit86cf1da3d2444a984fec0e34c66aac8139207f06 (patch)
tree9d65d6c156f4c7469698c6e54900d885014ffab4 /common
parentad32c4eb36210330f4be659dd8e5e141759f073e (diff)
desktop/hikari: don't crash on gtk4 apps
Diffstat (limited to 'common')
-rw-r--r--common/desktop.nix2
-rw-r--r--common/hikari-gtk4.patch17
2 files changed, 18 insertions, 1 deletions
diff --git a/common/desktop.nix b/common/desktop.nix
index 6aae3d1..d5cba19 100644
--- a/common/desktop.nix
+++ b/common/desktop.nix
@@ -54,7 +54,7 @@
programs.slock.enable = true;
environment.systemPackages = with pkgs; [
- hikari fuzzel
+ (hikari.overrideAttrs (old: {patches = [ ./hikari-gtk4.patch ]; })) fuzzel
];
security.pam.services.hikari-unlocker.text = ''
diff --git a/common/hikari-gtk4.patch b/common/hikari-gtk4.patch
new file mode 100644
index 0000000..68d8cf1
--- /dev/null
+++ b/common/hikari-gtk4.patch
@@ -0,0 +1,17 @@
+diff -rN -u old-hikari/src/server.c new-hikari/src/server.c
+--- old-hikari/src/server.c 2023-02-16 13:15:24.797244377 +0100
++++ new-hikari/src/server.c 2023-02-16 13:15:24.797244377 +0100
+@@ -523,6 +523,9 @@
+ server_decoration_handler(struct wl_listener *listener, void *data)
+ {
+ struct wlr_server_decoration *wlr_decoration = data;
++ if (wlr_decoration->surface->role == NULL) {
++ return;
++ }
+ struct hikari_view *view =
+ wl_container_of(wlr_decoration->surface, view, surface);
+ struct wlr_xdg_surface *xdg_surface =
+patch bc1727d6444f21c0fb952e8c853d5110b5602403
+Author: alex@xanderio.de
+Date: Fri Dec 17 20:14:29 CET 2021
+ * prevent gtk4 application from crashing hikari \ No newline at end of file