Subject: bug#39355: [PATCH] gnu: Add lf.

From: Pkill -9 <[email-masked]>
Date: Thu, 30 Jan 2020 11:28:16 +0000

* gnu/packages/disk.scm (lf): New variable.
---
 gnu/packages/disk.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index a28033c0af..dfe6dfb54a 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -62,11 +62,14 @@
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages swig)
+  #:use-module (gnu packages terminals)
+  #:use-module (gnu packages textutils)
   #:use-module (gnu packages vim)
   #:use-module (gnu packages w3m)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system go)
   #:use-module (guix build-system python)
   #:use-module (guix build-system trivial)
   #:use-module (guix build-system scons)
@@ -822,3 +825,31 @@ on your file system and offers to remove it.  @command{rmlint} can find:
 @item files with broken user and/or group ID.
 @end itemize\n")
     (license license:gpl3+)))
+
+(define-public lf
+  (package
+    (name "lf")
+    (version "13")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/gokcehan/lf.git")
+                    (commit (string-append "r" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1ld3q75v8rvp169w5p85z1vznqs9bhck6bm2f6fykxx16hmpb6ga"))))
+    (build-system go-build-system)
+    (native-inputs
+     `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
+       ("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go)))
+    (arguments
+     `(#:unpack-path "github.com/gokcehan/lf"
+       #:import-path "github.com/gokcehan/lf"))
+    (home-page "https://github.com/gokcehan/lf")
+    (synopsis "Console file browser similar to Ranger")
+    (description "lf (as in \"list files\") is a terminal file manager
+written in Go.  It is heavily inspired by ranger with some missing and
+extra features.  Some of the missing features are deliberately omitted
+since they are better handled by external tools.")
+    (license license:expat)))
-- 
2.25.0