From 592ca01d8d25849d077035d54d969d90ed5c2609 Mon Sep 17 00:00:00 2001 From: kiasoc5 Date: Tue, 13 Sep 2022 23:07:08 -0400 Subject: gnu: Add blesh. * gnu/packages/bash.scm (blesh): New variable. Signed-off-by: Christopher Baines --- gnu/packages/bash.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 72758560cd..86af26d648 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -37,6 +37,8 @@ #:use-module (gnu packages libffi) #:use-module (gnu packages pkg-config) #:use-module (gnu packages guile) + #:use-module (gnu packages version-control) + #:use-module (gnu packages less) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) @@ -456,3 +458,45 @@ in Bash, but you can use it to test any UNIX program.") function interface (FFI) directly in your shell. In other words, it allows you to call routines in shared libraries from within Bash.") (license license:expat))) + +(define-public blesh + (package + (name "blesh") + (version "0.4.0-devel2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/akinomyoga/ble.sh") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02fdjyh4x6wr5hg3i86nsxhz8ysgjrvvxdmk6pqr0lm8ngw9p3sh")))) + (arguments + (list #:make-flags #~(list (string-append "PREFIX=" + #$output)) + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'pretend-contrib-.git-exists + (lambda _ + (mkdir-p "contrib/.git"))) + (add-after 'unpack 'make-readlink-work + (lambda _ + (substitute* "ble.pp" + (("PATH=/bin:/usr/bin readlink") + (search-input-file %build-inputs + "/bin/readlink"))))) + (delete 'configure) ;no configure + (add-before 'check 'use-LANG-for-tests + (lambda _ + (setenv "LANG" + (getenv "LC_ALL")) + (unsetenv "LC_ALL")))))) + (build-system gnu-build-system) + (native-inputs (list less)) + (home-page "https://github.com/akinomyoga/ble.sh") + (synopsis "Bash Line Editor") + (description + "Bash Line Editor (ble.sh) is a command line editor written in pure Bash +which replaces the default GNU Readline. It adds syntax highlighting, auto +suggestions, vim modes, and more to Bash interactive sessions.") + (license license:bsd-3))) -- cgit v1.2.3