Subject: [PATCH 01/27] added alacritty 0.10.1

From: Till Robin Zickel <[email-masked]>
Date: Tue, 8 Mar 2022 17:46:28 +0100

---
 gnu/packages/terminals.scm | 131 +++++++++++++++++++------------------
 1 file changed, 68 insertions(+), 63 deletions(-)

diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 06fa341472..89620840ff 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2021 Solene Rapenne <[email-masked]>
 ;;; Copyright © 2021 Petr Hodina <[email-masked]>
 ;;; Copyright © 2022 Felipe Balbi <[email-masked]>
+;;; Copyritht © 2022 Till Robin Zickel <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1387,25 +1388,25 @@ (define-public tio
 (define-public alacritty
   (package
     (name "alacritty")
-    (version "0.9.0")
-    (source
-     (origin
-       ;; XXX: The crate at "crates.io" has limited contents.  In particular,
-       ;; it does not contain "extra" directory with completions, icon, etc.
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/jwilm/alacritty")
-             (commit (string-append "v" version))))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "068y0b1a0m33r7a3j2xf6k602sc8062gm4d5568ynfx6w5n481lj"))))
+    (version "0.10.1")
+    (source (origin
+              ;; XXX: The crate at "crates.io" has limited contents.  In particular,
+              ;; it does not contain "extra" directory with completions, icon, etc.
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/jwilm/alacritty")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1s38gyx0ifcf1vcr6n8gzbk7rg1apxrz7js8cp8x5k1s0m3abys3"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:install-source? #f     ; virtual manifest
-       #:cargo-test-flags '("--release" "--" "--skip=config_read_eof")
+     `(#:install-source? #f ;virtual manifest
+       #:cargo-test-flags
+       '("--release" "--" "--skip=config_read_eof")
        #:cargo-inputs
-       (("rust-alacritty-config-derive" ,rust-alacritty-config-derive-0.1)
-        ("rust-alacritty-terminal" ,rust-alacritty-terminal-0.15)
+       (("rust-alacritty-config-derive" ,rust-alacritty-config-derive-0.1) ("rust-alacritty-terminal" ,rust-alacritty-terminal-0.15)
         ("rust-clap" ,rust-clap-2)
         ("rust-cocoa" ,rust-cocoa-0.24)
         ("rust-copypasta" ,rust-copypasta-0.7)
@@ -1415,7 +1416,7 @@ (define-public alacritty
         ("rust-gl-generator" ,rust-gl-generator-0.14)
         ;; XXX: Adjust `add-absolute-library-references' phase when updating
         ;; glutin input.
-        ("rust-glutin" ,rust-glutin-0.26)
+        ("rust-glutin" ,rust-glutin-0.28)
         ("rust-log" ,rust-log-0.4)
         ("rust-notify" ,rust-notify-4)
         ("rust-objc" ,rust-objc-0.2)
@@ -1425,6 +1426,8 @@ (define-public alacritty
         ("rust-serde" ,rust-serde-1)
         ("rust-serde-json" ,rust-serde-json-1)
         ("rust-serde-yaml" ,rust-serde-yaml-0.8)
+        ("rust-signal-hook-mio" ,rust-signal-hook-mio-0.2)
+        ("rust-structopt" ,rust-structopt-0.3)
         ("rust-time" ,rust-time-0.1)
         ("rust-urlocator" ,rust-urlocator-0.1)
         ("rust-x11-dl" ,rust-x11-dl-2)
@@ -1437,17 +1440,20 @@ (define-public alacritty
                (("0.22.0") "^0.23.0"))))
          (add-after 'configure 'add-absolute-library-references
            (lambda* (#:key inputs cargo-inputs vendor-dir #:allow-other-keys)
-             (let* ((glutin-name ,(package-name rust-glutin-0.26))
-                    (glutin-version ,(package-version rust-glutin-0.26))
+             (let* ((glutin-name ,(package-name rust-glutin-0.28)) (glutin-version ,
+                                                                    (package-version
+                                                                     rust-glutin-0.28))
                     (glutin-api (string-append glutin-name "-" glutin-version
                                                ".tar.gz/src/api/"))
-                    (smithay-client-toolkit-name
-                     ,(package-name rust-smithay-client-toolkit-0.12))
-                    (smithay-client-toolkit-version
-                     ,(package-version rust-smithay-client-toolkit-0.12))
-                    (smithay-client-toolkit-src
-                     (string-append smithay-client-toolkit-name "-"
-                                    smithay-client-toolkit-version ".tar.gz/src"))
+                    (smithay-client-toolkit-name ,(package-name
+                                                   rust-smithay-client-toolkit-0.15))
+                    (smithay-client-toolkit-version ,(package-version
+                                                      rust-smithay-client-toolkit-0.15))
+                    (smithay-client-toolkit-src (string-append
+                                                 smithay-client-toolkit-name
+                                                 "-"
+                                                 smithay-client-toolkit-version
+                                                 ".tar.gz/src"))
                     (libxkbcommon (assoc-ref inputs "libxkbcommon"))
                     (mesa (assoc-ref inputs "mesa")))
                ;; Fix dlopen()ing some libraries on pure Wayland (no $DISPLAY):
@@ -1459,26 +1465,25 @@ (define-public alacritty
                (substitute* (string-append vendor-dir "/"
                                            smithay-client-toolkit-src
                                            "/seat/keyboard/ffi.rs")
-                 (("libxkbcommon\\.so")
-                  (string-append libxkbcommon "/lib/libxkbcommon.so")))
-
+                 (("libxkbcommon\\.so") (string-append libxkbcommon
+                                                       "/lib/libxkbcommon.so")))
                ;; Mesa is needed everywhere.
-               (substitute*
-                   (string-append vendor-dir "/" glutin-api "glx/mod.rs")
+               (substitute* (string-append vendor-dir "/" glutin-api
+                                           "glx/mod.rs")
                  (("libGL.so") (string-append mesa "/lib/libGL.so")))
-               (substitute*
-                   (string-append vendor-dir "/" glutin-api "egl/mod.rs")
+               (substitute* (string-append vendor-dir "/" glutin-api
+                                           "egl/mod.rs")
                  (("libEGL.so") (string-append mesa "/lib/libEGL.so")))
                #t)))
          (replace 'install
            ;; Upstream install script only takes care of executable.
            (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let* ((out   (assoc-ref outputs "out"))
-                    (bin   (string-append out "/bin"))
+             (let* ((out (assoc-ref outputs "out")) (bin (string-append out
+                                                          "/bin"))
                     (share (string-append out "/share"))
                     (icons (string-append share "/icons/hicolor/scalable/apps"))
-                    (tic   (search-input-file inputs "/bin/tic"))
-                    (man   (string-append share "/man/man1"))
+                    (tic (search-input-file inputs "/bin/tic"))
+                    (man (string-append share "/man/man1"))
                     (alacritty-bin "target/release/alacritty"))
                ;; Install the executable.
                (install-file alacritty-bin bin)
@@ -1497,8 +1502,12 @@ (define-public alacritty
                (mkdir-p (string-append share "/terminfo"))
                ;; We don't compile alacritty-common entry because
                ;; it's being used only for inheritance.
-               (invoke tic "-x" "-e" "alacritty,alacritty-direct"
-                       "-o" (string-append share "/terminfo/")
+               (invoke tic
+                       "-x"
+                       "-e"
+                       "alacritty,alacritty-direct"
+                       "-o"
+                       (string-append share "/terminfo/")
                        "extra/alacritty.info")
                ;; Install completions.
                (install-file "extra/completions/alacritty.bash"
@@ -1508,30 +1517,26 @@ (define-public alacritty
                (install-file "extra/completions/alacritty.fish"
                              (string-append share "/fish/vendor_completions.d"))
                #t))))))
-    (native-inputs
-     `(("cmake" ,cmake)
-       ("ncurses" ,ncurses)
-       ("pkg-config" ,pkg-config)
-       ("python3" ,python)))
-    (inputs
-     `(("expat" ,expat)
-       ("fontconfig" ,fontconfig)
-       ("freetype" ,freetype)
-       ("libx11" ,libx11)
-       ("libxcb" ,libxcb)
-       ("libxcursor" ,libxcursor)
-       ("libxi" ,libxi)
-       ("libxkbcommon" ,libxkbcommon)
-       ("libxrandr" ,libxrandr)
-       ("libxxf86vm" ,libxxf86vm)
-       ("mesa" ,mesa)
-       ("rust-bitflags" ,rust-bitflags-1)
-       ("rust-dirs" ,rust-dirs-3)
-       ("rust-libc" ,rust-libc-0.2)
-       ("rust-unicode-width" ,rust-unicode-width-0.1)
-       ("rust-wayland-client" ,rust-wayland-client-0.28)
-       ("rust-winapi" ,rust-winapi-0.3)
-       ("wayland" ,wayland)))
+    (native-inputs `(("cmake" ,cmake) ("ncurses" ,ncurses)
+                     ("pkg-config" ,pkg-config)
+                     ("python3" ,python)))
+    (inputs `(("expat" ,expat) ("fontconfig" ,fontconfig)
+              ("freetype" ,freetype)
+              ("libx11" ,libx11)
+              ("libxcb" ,libxcb)
+              ("libxcursor" ,libxcursor)
+              ("libxi" ,libxi)
+              ("libxkbcommon" ,libxkbcommon)
+              ("libxrandr" ,libxrandr)
+              ("libxxf86vm" ,libxxf86vm)
+              ("mesa" ,mesa)
+              ("rust-bitflags" ,rust-bitflags-1)
+              ("rust-dirs" ,rust-dirs-3)
+              ("rust-libc" ,rust-libc-0.2)
+              ("rust-unicode-width" ,rust-unicode-width-0.1)
+              ("rust-wayland-client" ,rust-wayland-client-0.29)
+              ("rust-winapi" ,rust-winapi-0.3)
+              ("wayland" ,wayland)))
     (native-search-paths
      ;; FIXME: This should only be located in 'ncurses'.  Nonetheless it is
      ;; provided for usability reasons.  See <https://bugs.gnu.org/22138>.
-- 
2.34.0