From 59a4d628e2179c8a768c7fdf5401f2f8193c6893 Mon Sep 17 00:00:00 2001
From: "Paul A. Patience" <paul@apatience.com>
Date: Mon, 7 Jun 2021 08:34:43 -0400
Subject: [PATCH] gnu: Add xkbset.
* gnu/packages/xorg.scm (xkbset): New variable.
---
gnu/packages/xorg.scm | 55 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
@@ -28,6 +28,7 @@
;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
+;;; Copyright © 2021 Paul A. Patience <paul@apatience.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -88,6 +89,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages spice)
+ #:use-module (gnu packages tcl)
#:use-module (gnu packages video)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
@@ -3980,6 +3982,59 @@ make keyboards more accessible to people with physical impairments.")
requested commands if they occur.")
(license license:x11)))
+(define-public xkbset
+ (package
+ (name "xkbset")
+ (version "0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://faculty.missouri.edu/~stephen/software/"
+ name "/" name "-" version ".tar.gz"))
+ (sha256
+ (base32 "199mlm127zk1lr8nrq22n68l2l8cjwc4cgwd67rg1i6497n2y0xc"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libx11" ,libx11)
+ ("perl" ,perl)
+ ("perl-tk" ,perl-tk)))
+ (arguments
+ `(#:tests? #f ; There are none.
+ #:make-flags
+ `(,,(string-append "CC=" (cc-for-target))
+ ,(string-append "X11PREFIX=" %output)
+ ,(string-append "X11BASE=" (assoc-ref %build-inputs "libx11"))
+ ,(string-append "INSTALL_MAN1=" %output "/share/man/man1"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'install 'create-install-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p out)
+ (with-directory-excursion out
+ (for-each mkdir-p '("bin" "share/man/man1"))))
+ #t))
+ (add-after 'install 'wrap-perl-script
+ (lambda* (#:key outputs #:allow-other-keys)
+ (wrap-program (string-append (assoc-ref outputs "out")
+ "/bin/xkbset-gui")
+ `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))
+ #t))
+ (replace 'install-license-files
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "COPYRIGHT"
+ (string-append (assoc-ref outputs "out")
+ "/share/doc/" ,name "-" ,version))
+ #t)))))
+ (home-page "https://faculty.missouri.edu/~stephen/software/")
+ (synopsis "User-preference utility for XKB extensions for X")
+ (description
+ "This is a program to help manage many of the XKB features of the X
+Window System. This includes such features as MouseKeys, AccessX,
+StickyKeys, BounceKeys, and SlowKeys. It includes a GUI program to help
+with MouseKeys-acceleration management.")
+ (license license:bsd-3)))
(define-public xkbutils
(package
--
2.31.1