Subject: Re: [bug#41226] gnu: Add bombadillo.

From: Efraim Flashner <[email-masked]>
Date: Wed, 13 May 2020 21:56:02 +0300

A couple of inline comments

On Wed, May 13, 2020 at 04:26:21PM +0900, elaexuotee--- via Guix-patches via wrote:
> Ugh, should have linkted and checkd indenting before sending. Here is an
> update.
> 

> From b96fef2d85741ceac135a9c286a00a070b6b75e7 Mon Sep 17 00:00:00 2001
> From: "B. Wilson" <[email-masked]>
> Date: Wed, 13 May 2020 13:51:19 +0900
> Subject: [PATCH] gnu: Add bombadillo.
> To: [email-masked]
> 
> gnu/packages/web-browsers.scm (bombadillo): New variable.
> ---
>  gnu/packages/web-browsers.scm | 42 ++++++++++++++++++++++++++++++++++-
>  1 file changed, 41 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
> index 62b7a5bdca..acdd27509e 100644
> --- a/gnu/packages/web-browsers.scm
> +++ b/gnu/packages/web-browsers.scm
> @@ -11,6 +11,7 @@
>  ;;; Copyright © 2019 Clément Lassieur <[email-masked]>
>  ;;; Copyright © 2019 Brett Gilio <[email-masked]>
>  ;;; Copyright © 2020 Raghav Gururajan <[email-masked]>
> +;;; Copyright © 2020 B. Wilson <[email-masked]>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -66,7 +67,8 @@
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system glib-or-gtk)
>    #:use-module (guix build-system python)
> -  #:use-module (guix build-system asdf))
> +  #:use-module (guix build-system asdf)
> +  #:use-module (guix build-system go))
>  
>  (define-public midori
>    (package
> @@ -692,3 +694,41 @@ key-bindings and is fully configurable and extensible in Common Lisp.")
>  
>  (define-public sbcl-next
>    (deprecated-package "sbcl-next" next))
> +
> +(define-public bombadillo
> +  (package
> +    (name "bombadillo")
> +    (version "2.2.0")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://tildegit.org/sloum/bombadillo/"
> +                                  "archive/" version ".tar.gz"))

'guix lint' didn't catch this, but I'm pretty sure that this is an
auto-generated tarball and you should use git-fetch to download the
source instead.

> +              (sha256
> +               (base32
> +                "0g4zjg717zvva85h1sxw2zqzlrkbaw8h2w8zs2vk9krgn1q5wyh3"))
> +
> +              (file-name (string-append name "-" version))))
> +    (build-system go-build-system)
> +    (native-inputs `(("gzip" ,gzip)))
> +    (arguments `(#:import-path "tildegit.org/sloum/bombadillo"

Assuming nothing needs this to build another package, you can add
'#:install-source? #f' to the arguments.

> +                 #:phases
> +                 (modify-phases %standard-phases
> +                   (add-after 'install 'install-man
> +                     (lambda _
> +                       (let* ((manpage (string-append "src/tildegit.org"
> +                                                      "/sloum/bombadillo"
> +                                                      "/bombadillo.1"))
> +                              (zmanpage (string-append manpage ".gz"))
> +                              (mandir (string-append %output
> +                                                     "/share/man/man1")))
> +                         (invoke "gzip" manpage)
> +                         (install-file zmanpage mandir)

You actually don't need to gzip the man-page, it happens automatically
as part of the build process. Also, I noticed that there's a .desktop
file and a license file. Both of those can be installed.

> +                         #t))))))
> +    (home-page "http://bombadillo.colorfield.space")
> +    (synopsis "Terminal browser for the gopher, gemini, and finger protocols")
> +    (description "Bombadillo is a non-web browser for the terminal with
> +vim-like key bindings, a document pager, configurable settings, and robust
> +command selection.  The following protocols are supported as first-class
> +citizens: gopher, gemini, finger, and local.  There is also support for telnet,
> +http, and https via third-party applications.")
> +    (license license:gpl3+)))
> -- 
> 2.26.2
> 

Other than those small things it looks good. Can you send an updated
patch?

-- 
Efraim Flashner   <[email-masked]>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted