gnu: julia: Update to 1.4.1.
[jackhill/guix/guix.git] / gnu / packages / xorg.scm
index 21a2467..cef22cd 100644 (file)
@@ -24,6 +24,8 @@
 ;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
 ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -65,7 +67,9 @@
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages inkscape)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages libbsd)
   #:use-module (gnu packages libedit)
   #:use-module (gnu packages linux)
@@ -2245,6 +2249,65 @@ X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.")
     (license license:x11)))
 
 
+(define-public hackneyed-x11-cursors
+  ;; The current release 0.8 suffers from non-deterministic build problems.
+  (let ((revision "1")
+        (commit "9423cef2e2e5ff6b1d65d61f7108c97bc7f5fdfb"))
+    (package
+      (name "hackneyed-x11-cursors")
+      (version (git-version "0.8.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://gitlab.com/Enthymeme/hackneyed-x11-cursors.git")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "0f637i76sdwz3nm1g1iynamq6j0i6k3c70fpl0fmd0dlynm8ga96"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:tests? #f                    ;no test suite
+         #:make-flags (list (string-append "PREFIX=" %output))
+         #:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (add-before 'build 'set-inkscape-environment-variable
+             (lambda* (#:key inputs #:allow-other-keys)
+               (let ((inkscape (string-append (assoc-ref inputs "inkscape")
+                                              "/bin/inkscape")))
+                 (setenv "INKSCAPE" inkscape)
+                 #t)))
+           (add-before 'build 'placate-inkscape-warnings
+             (lambda _
+               (setenv "HOME" (getcwd))
+               #t))
+           (add-after 'build 'generate-black-cursors
+             (lambda* (#:key make-flags parallel-build #:allow-other-keys)
+               (let ((build (assoc-ref %standard-phases 'build))
+                     (make-flags/extended
+                      `(,@make-flags
+                        "THEME_NAME=Hackneyed-Dark"
+                        "COMMON_SOURCE=theme/common-dark.svg"
+                        "RSVG_SOURCE=theme/right-handed-dark.svg"
+                        "LSVG_SOURCE=theme/left-handed-dark.svg")))
+                 (build #:make-flags make-flags/extended
+                        #:parallel-build parallel-build))))
+           (add-after 'install 'install-black-cursors
+             (lambda* (#:key make-flags #:allow-other-keys)
+               (apply invoke `("make" "install" ,@make-flags
+                               "THEME_NAME=Hackneyed-Dark")))))))
+      (native-inputs `(("imagemagick" ,imagemagick)
+                       ("inkscape" ,inkscape)
+                       ("xcursorgen" ,xcursorgen)))
+      (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors")
+      (synopsis "Classic cursor theme for X11")
+      (description "Hackneyed is a scalable cursor theme mildly resembling old
+Windows 3.x cursors.  The cursors are available in white and black colors.  A
+left-handed version of the cursors is also included.")
+      (license license:x11))))
+
 (define-public xcursorgen
   (package
     (name "xcursorgen")
@@ -6652,3 +6715,24 @@ Thai).")
 a configuration file reusable by xcursorgen.")
     (home-page "https://github.com/eworm-de/xcur2png")
     (license license:gpl3+)))
+
+(define-public gccmakedep
+  (package
+    (name "gccmakedep")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://xorg/individual/util/gccmakedep-"
+                           version ".tar.bz2"))
+       (sha256
+        (base32 "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"))))
+    (build-system gnu-build-system)
+    (synopsis "Create dependencies in makefiles using 'gcc -M'")
+    (description
+     "@command{gccmakedep} is a deprecated program which calls @code{gcc -M}
+to output Makefile rules describing the dependencies of each source file, so
+that Make knows which object files must be recompiled when a dependency has
+changed.")
+    (home-page "https://gitlab.freedesktop.org/xorg/util/gccmakedep")
+    (license license:x11)))