From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#24445: GNOME desktop session crash when re-arranging dock Date: Sun, 08 Oct 2017 17:08:58 +0200 Message-ID: <871smdfzhx.fsf@gnu.org> References: <1140473326.10127.1506750718340@webmail.mailhostbox.com> <8760bxppr7.fsf_-_@gnu.org> <87efql9z5l.fsf@netris.org> <87a811n3yc.fsf@thomasdanckaert.be> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51232) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e1DDP-0002jK-EJ for bug-guix@gnu.org; Sun, 08 Oct 2017 11:10:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e1DDO-0002CD-JC for bug-guix@gnu.org; Sun, 08 Oct 2017 11:10:03 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47828) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1e1DDO-0002C9-Eo for bug-guix@gnu.org; Sun, 08 Oct 2017 11:10:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1e1DDO-0004PC-7q for bug-guix@gnu.org; Sun, 08 Oct 2017 11:10:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87a811n3yc.fsf@thomasdanckaert.be> (Thomas Danckaert's message of "Sun, 08 Oct 2017 15:50:51 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Thomas Danckaert Cc: Mohammed Sadiq , 24445@debbugs.gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello! Thomas Danckaert skribis: > libxcursor's configure script has an option "--with-cursorpath=3D" > 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=3D"~/.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 think that=E2=80=99d be OK. Though libXcursor contains a few =E2=80=98getenv=E2=80=99 calls, notably for XCURSOR_PATH, which looks like it=E2=80=99s what we=E2=80=99re looking for. I tested the attached path in a VM and it seems to fix the bug: I can drag a window in the overview area on the right and it no longer crashes (*and* I get a hand-shaped cursor when hovering that area :-)). And we don=E2=80=99t need to modify libXcursor. (We could do slightly better by using the absolute file name of the actual icon theme instead of /run/current-system, but it=E2=80=99s complica= ted because I guess it doesn=E2=80=99t have to be Adwaita.) Thoughts? Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 527a3101c..4633f0fc6 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -791,7 +791,11 @@ accountsservice web site} for more information." gnome-package)) (service-extension profile-service-type (compose list - gnome-package)))))) + gnome-package)) + (service-extension session-environment-service-type + (const + '(("XCURSOR_PATH" + . "/run/current-system/profile/share/icons")))))))) (define* (gnome-desktop-service #:key (config (gnome-desktop-configuration))) "Return a service that adds the @code{gnome} package to the system profile, --=-=-=--