summary refs log tree commit diff
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-12-06 16:48:22 +0100
committerMarius Bakke <marius@gnu.org>2020-12-06 18:30:12 +0100
commit3f35b09e8d45260d50c3f2e2e0bc06f3ab4322aa (patch)
tree57a633bf421c2eaa5ff0591e4e0f0537d2b96183
parent25e08f32c1ae1da779fe49f35a816e265367feda (diff)
downloadguix-3f35b09e8d45260d50c3f2e2e0bc06f3ab4322aa.tar.gz
gnu: Add foot.
* gnu/packages/terminals.scm (foot): New public variable.
-rw-r--r--gnu/packages/terminals.scm43
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 072fc3f8c1..c0618b85cf 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -44,6 +44,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system go)
+  #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
   #:use-module (guix download)
   #:use-module (guix git-download)
@@ -51,6 +52,7 @@
   #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages build-tools)   ;for meson-0.55
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -71,6 +73,7 @@
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages man)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages perl-check)
@@ -686,6 +689,46 @@ eye-candy, customizable, and reasonably lightweight.")
                 license:x11
                 license:bsd-3)))))
 
+(define-public foot
+  (package
+    (name "foot")
+    (version "1.5.4")
+    (home-page "https://codeberg.org/dnkl/foot")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url home-page) (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0y6xfsldz5lwy6kp5dy9s27pnii7n5zj754wglvz9d9fp5lkl6id"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:meson ,meson-0.55
+       ;; Using a "release" build is recommended both for performance, and
+       ;; also to address a GCC 10 issue when doing PGO builds.
+       #:build-type "release"
+       ;; Enable LTO as recommended by INSTALL.md.
+       #:configure-flags '("-Db_lto=true")))
+    (native-inputs
+     `(;; Foot makes use of modern C features and needs a newer compiler.
+       ;; Remove when the default compiler is > GCC 7.
+       ("gcc" ,gcc-10)
+       ("ncurses" ,ncurses)             ;for 'tic'
+       ("pkg-config" ,pkg-config)
+       ("scdoc" ,scdoc)
+       ("wayland-protocols" ,wayland-protocols)))
+    (inputs
+     `(("fcft" ,fcft)
+       ("libxkbcommon" ,libxkbcommon)
+       ("wayland" ,wayland)))
+    (synopsis "Wayland-native terminal emulator")
+    (description
+     "@command{foot} is a terminal emulator for systems using the Wayland
+display server.  It is designed to be fast, lightweight, and independent of
+desktop environments.  It can be used as a standalone terminal and also has
+a server/client mode.")
+    (license license:expat)))
+
 (define-public sakura
   (package
     (name "sakura")