* gnu/packages/patches/xterm-370-explicit-xcursor.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/xorg.scm (xterm)[source]: Add it. [arguments]<#:configure-flags>: Add "-lXcursor".
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From: Danny Milosavljevic <dannym@scratchpost.org>
 | |
| Date: Thu, 2 Apr 2022 12:10:00 +0200
 | |
| Subject: Make xterm use libxcursor directly
 | |
| 
 | |
| Fixes <https://issues.guix.gnu.org/54654>.
 | |
| 
 | |
| This patch makes xterm use libxcursor directly.
 | |
| Without it, libx11 would try to dlopen("libXcursor.so.1") and fail.
 | |
| 
 | |
| --- xterm-370/misc.c.orig	2022-04-02 11:52:26.225131854 +0200
 | |
| +++ xterm-370/misc.c	2022-04-02 12:06:13.091482385 +0200
 | |
| @@ -79,6 +79,9 @@
 | |
|  #ifdef HAVE_LIBXPM
 | |
|  #include <X11/xpm.h>
 | |
|  #endif
 | |
| +#ifdef HAVE_LIB_XCURSOR
 | |
| +#include <X11/Xcursor/Xcursor.h>
 | |
| +#endif
 | |
|  
 | |
|  #ifdef HAVE_LANGINFO_CODESET
 | |
|  #include <langinfo.h>
 | |
| @@ -866,7 +869,14 @@
 | |
|  		 * 0, 2 a shape, 3 a mask for 2, etc.  <X11/cursorfont.h>
 | |
|  		 * contains defined names for each shape.
 | |
|  		 */
 | |
| -		c = XCreateGlyphCursor(dpy,
 | |
| +		c = XcursorTryShapeCursor(dpy,
 | |
| +				       myFont.fs->fid, /* source_font */
 | |
| +				       myFont.fs->fid, /* mask_font */
 | |
| +				       c_index + 0, /* source_char */
 | |
| +				       c_index + 1, /* mask_char */
 | |
| +				       &foreground,
 | |
| +				       &background);
 | |
| +		if (c == None) c = XCreateGlyphCursor(dpy,
 | |
|  				       myFont.fs->fid,	/* source_font */
 | |
|  				       myFont.fs->fid,	/* mask_font */
 | |
|  				       c_index + 0,	/* source_char */
 |