gnu: xterm: Make big cursors work.
* 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".master
parent
b0ea8808b6
commit
32d1f71593
|
@ -1975,6 +1975,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \
|
%D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \
|
||||||
%D%/packages/patches/xsane-support-ipv6.patch \
|
%D%/packages/patches/xsane-support-ipv6.patch \
|
||||||
%D%/packages/patches/xsane-tighten-default-umask.patch \
|
%D%/packages/patches/xsane-tighten-default-umask.patch \
|
||||||
|
%D%/packages/patches/xterm-370-explicit-xcursor.patch \
|
||||||
%D%/packages/patches/xygrib-fix-finding-data.patch \
|
%D%/packages/patches/xygrib-fix-finding-data.patch \
|
||||||
%D%/packages/patches/yggdrasil-extra-config.patch \
|
%D%/packages/patches/yggdrasil-extra-config.patch \
|
||||||
%D%/packages/patches/ytfzf-programs.patch \
|
%D%/packages/patches/ytfzf-programs.patch \
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
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 */
|
|
@ -6144,12 +6144,15 @@ to answer a question. Xmessage can also exit after a specified time.")
|
||||||
(string-append "ftp://ftp.invisible-island.net/xterm/"
|
(string-append "ftp://ftp.invisible-island.net/xterm/"
|
||||||
"xterm-" version ".tgz")))
|
"xterm-" version ".tgz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "10lc72spa69n9d7zg9nwhgwz70qzidp5i17jgw3lq3qg1a25sg4n"))))
|
(base32 "10lc72spa69n9d7zg9nwhgwz70qzidp5i17jgw3lq3qg1a25sg4n"))
|
||||||
|
(patches
|
||||||
|
(search-patches "xterm-370-explicit-xcursor.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
|
'(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
|
||||||
"--enable-i18n" "--enable-doublechars"
|
"--enable-i18n" "--enable-doublechars"
|
||||||
"--enable-luit" "--enable-mini-luit")
|
"--enable-luit" "--enable-mini-luit"
|
||||||
|
"X_EXTRA_LIBS=-lXcursor")
|
||||||
#:tests? #f ; no test suite
|
#:tests? #f ; no test suite
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
|
Reference in New Issue