Hey Tim,
> (services (append (list (service gnome-desktop-service-type) > (set-xorg-configuration > (xorg-configuration > (keyboard-layout keyboard-layout))) > (service (service-type > (name 'break-gnome) > (extensions > (list (service-extension > activation-service-type > (lambda _ > #~(let* ((pw (getpw "bob")) > (uid (passwd:uid pw)) > (gid (passwd:gid pw))) > (mkdir-p > "/home/bob/.local/share/gnome-shell") > (chown "/home/bob" uid gid) > (chown "/home/bob/.local" > uid gid) > (chown > "/home/bob/.local/share" uid gid) > (chown > "/home/bob/.local/share/gnome-shell" uid gid) > (copy-file #$(local-file > "notifications") > > "/home/bob/.local/share/gnome-shell/notifications") > (chown > "/home/bob/.local/share/gnome-shell/notifications" uid gid) > ))))) > (default-value #t)))) I have almost exactly the same, except that I used a generated notifications file (a text file containing the string “garbage”) — without problems. > After running GNOME 3.28 for a while, I’ve had several crashes. It used > to crash whenever I opened a URL from Emacs, but fiddling with dconf has > fixed that. It currently crashes every time I run ERC (I’ve turned on > notifications there), and I can’t seem to fix it. > > Interestingly, there is a discussion about this on the Arch Linux forums > <https://bbs.archlinux.org/viewtopic.php?pid=1778640>. I’m not sure if > there’s anything useful for us in there, though. This message seems relevant: https://bbs.archlinux.org/viewtopic.php?pid=1778640#p1778640 My issue was caused by using ubuntu-cairo. It was incompatible with librsvg 2.42.3, which caused a crash when gnome attempted to load an SVG when trying to display the notification. It also caused the close window button to not appear in the overview. > It looks like GNOME Shell passes some bad icon data into GTK+, which > results in a null filename that gets dereferenced. (GNOME Shell is not > in the backtrace – it tells GTK+ to run this thread from the > “load_texture_async” function in “st-texture-cache.c”. > > I think the “bad” user files are not the root cause here. There’s > definitely something wrong with notifications. (I just plugged in a USB > drive and, sure enough, GNOME Shell crashed.) The notification daemon > code is written in JavaScript (“js/ui/notificationDaemon.js”). I > glanced at it and its Git history, but couldn’t find anything. I don’t think it’s notifications per se, but rendering SVGs. When application_state exists, GNOME shell tries to restore application windows and their icons are likely SVG files that should be rendered. Chris reported elsewhere that GNOME sometimes crashes when the Activity tab is accessed — that’s where the application starter is, which displays icons. I believe we should be using librsvg-next in the closure of gnome-shell. We may also want to use gdk-pixbuf+svg instead of just gdk-pixbuf, but again replacing librsvg with librsvg-next throughout. I’m guessing that the problem is entirely due to using an outdated variant of librsvg. What do you think? -- Ricardo