From 3f35b09e8d45260d50c3f2e2e0bc06f3ab4322aa Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 6 Dec 2020 16:48:22 +0100 Subject: [PATCH] gnu: Add foot. * gnu/packages/terminals.scm (foot): New public variable. --- gnu/packages/terminals.scm | 43 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) 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 @@ (define-module (gnu packages terminals) #: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 @@ (define-module (gnu packages terminals) #: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 @@ (define-module (gnu packages terminals) #: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 @@ (define-public cool-retro-term 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")