Mark H Weaver writes: > I can confirm that the problem does not occur on Debian, and I've not > found reports of it happening on any other mainstream distro. I would > guess that our unusual filesystem layout prevents GNOME Shell from > finding something that it's looking for, and that the error handling in > that case is deficient or non-existent. Hi, I think I understand what's going on, and I may even have a solution ;-) What's happening is that gnome-shell wants certain cursors, but can't find them. These cursors are provided by Adwaita icon theme, but gnome-shell somehow isn't looking in Adwaita's location (unless you symlink adwaita's icons into ${HOME}/.icons as I mentioned before). I've attached an strace from gnome-shell, the relevant part is here: open("/home/thomas/.icons/Adwaita/cursors/dnd-none", O_RDONLY) = -1 ENOENT (No such file or directory) open("/home/thomas/.icons/Adwaita/index.theme", O_RDONLY) = -1 ENOENT (No such file or directory) open("/gnu/store/14f4vh3y3wdf3rfpzkpqfqbl9i81hyw8-libxcursor-1.1.14/share/icons/Adwaita/cursors/dnd-none", O_RDONLY) = -1 ENOENT (No such file or directory) open("/gnu/store/14f4vh3y3wdf3rfpzkpqfqbl9i81hyw8-libxcursor-1.1.14/share/icons/Adwaita/index.theme", O_RDONLY) = -1 ENOENT (No such file or directory) open("/gnu/store/14f4vh3y3wdf3rfpzkpqfqbl9i81hyw8-libxcursor-1.1.14/share/pixmaps/Adwaita/cursors/dnd-none", O_RDONLY) = -1 ENOENT (No such file or directory) open("/gnu/store/14f4vh3y3wdf3rfpzkpqfqbl9i81hyw8-libxcursor-1.1.14/share/pixmaps/Adwaita/index.theme", O_RDONLY) = -1 ENOENT (No such file or directory) open("/home/thomas/.icons/default/cursors/dnd-none", O_RDONLY) = -1 ENOENT (No such file or directory) [...] --- SIGTRAP {si_signo=SIGTRAP, si_code=SI_KERNEL} --- +++ killed by SIGTRAP +++ I've been looking through the sources, and gtk+-3.22.15/gdk/x11/gdkcursor-x11.c makes me think that cursor lookup in our case is ultimately done by libxcursor. libxcursor's configure script has an option "--with-cursorpath=" to set a default search path for cursors. If no option is given (as is the case with our package), the default is DEF_CURSORPATH="~/.icons:${datadir}/icons:${datadir}/pixmaps", which is exactly the set of directories in the strace (${HOME}/.icons and ${INSTALLPREFIX}/share/icons). So I guess that adding relevant directories to the libxcursor search path would solve the problem. For Guix, it'd be useful to add /run/current-system/profile/share/icons, as well as ~/.guix-profile/share/icons (for users installing other icon themes in their profile). Would this be ok? I'll go and test this, but building everything from libxcursor up to gnome-desktop will probably take a while :). Comments are welcome! Thomas