[PATCH 00/11] Expand edirect programs

  • Done
  • quality assurance status badge
Details
One participant
  • Efraim Flashner
Owner
unassigned
Submitted by
Efraim Flashner
Severity
normal
E
E
Efraim Flashner wrote on 16 Mar 2020 08:04
(address . guix-patches@gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316070412.12364-1-efraim@flashner.co.il
There are a lot more programs and pieces to edirect and I've had these
in a separate channel for a while. It would certainly be far more
convenient to have this upstream in Guix itself.

Efraim Flashner (11):
gnu: Add go-golang-org-x-image.
gnu: Add go-golang-org-rainycape-unidecode.
gnu: Add go-github-com-golang-freetype.
gnu: Add go-github-com-fogleman-gg.
gnu: Add go-github-com-gedex-inflector.
gnu: Add go-github-com-klauspost-cpuid.
gnu: Add go-github-com-pbnjay-memory.
gnu: Add go-github-com-surge-glog.
gnu: Add go-github-com-surgebase-porter2.
gnu: Add edirect-go-programs.
gnu: edirect: Install more programs.

gnu/packages/bioinformatics.scm | 114 +++++++++++++--
gnu/packages/golang.scm | 237 +++++++++++++++++++++++++++++++-
2 files changed, 337 insertions(+), 14 deletions(-)

--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 01/11] gnu: Add go-golang-org-x-image.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-1-efraim@flashner.co.il
* gnu/packages/golang.scm (go-golang-org-x-image): New variable.
---
gnu/packages/golang.scm | 32 +++++++++++++++++++++++++++++++-
1 file changed, 31 insertions(+), 1 deletion(-)

Toggle diff (50 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 0d92139311..782709fdf6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2016, 2019 Ludovic Courtès <ludo@gnu.org>
@@ -692,6 +692,36 @@ for the Go language.")
(home-page "https://go.googlesource.com/net")
(license license:bsd-3))))
+(define-public go-golang-org-x-image
+ (let ((commit "58c23975cae11f062d4b3b0c143fe248faac195d")
+ (revision "1"))
+ (package
+ (name "go-golang-org-x-image")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://go.googlesource.com/image")
+ (commit commit)))
+ (file-name (string-append "go.googlesource.com-image-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "0i2p2girc1sfcic6xs6vrq0fp3szfx057xppksb67kliywjjrm5x"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "golang.org/x/image"
+ ; Source-only package
+ #:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'build))))
+ (home-page "https://go.googlesource.com/image")
+ (synopsis "Supplemental Go image libraries")
+ (description "This package provides supplemental Go libraries for image
+processing.")
+ (license license:bsd-3))))
+
(define-public go-golang-org-x-sys
(let ((commit "749cb33beabd9aa6d3178e3de05bcc914f70b2bf")
(revision "5"))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 02/11] gnu: Add go-golang-org-rainycape-unidecode.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-2-efraim@flashner.co.il
* gnu/packages/golang.scm (go-golang-org-rainycape-unidecode): New variable.
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 782709fdf6..db40973063 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3426,3 +3426,28 @@ data serialization format.")
(description " A glob library that implements descending into other
directories. It is optimized for filewalking. ")
(license license:expat)))
+
+(define-public go-golang-org-rainycape-unidecode
+ (let ((commit "cb7f23ec59bec0d61b19c56cd88cee3d0cc1870c")
+ (revision "1"))
+ (package
+ (name "go-golang-org-rainycape-unidecode")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rainycape/unidecode")
+ (commit commit)))
+ (file-name (string-append "go-golang-org-rainycape-unidecode-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "1wvzdijd640blwkgmw6h09frkfa04kcpdq87n2zh2ymj1dzla5v5"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "golang.org/rainycape/unidecode"))
+ (home-page "https://github.com/rainycape/unidecode")
+ (synopsis "Unicode transliterator in Golang")
+ (description "Unicode transliterator in Golang - Replaces non-ASCII
+characters with their ASCII approximations.")
+ (license license:asl2.0))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 03/11] gnu: Add go-github-com-golang-freetype.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-3-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-golang-freetype): New variable.
---
gnu/packages/golang.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index db40973063..5de4f8f635 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3451,3 +3451,30 @@ directories. It is optimized for filewalking. ")
(description "Unicode transliterator in Golang - Replaces non-ASCII
characters with their ASCII approximations.")
(license license:asl2.0))))
+
+(define-public go-github-com-golang-freetype
+ (let ((commit "e2365dfdc4a05e4b8299a783240d4a7d5a65d4e4")
+ (revision "1"))
+ (package
+ (name "go-github-com-golang-freetype")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/golang/freetype")
+ (commit commit)))
+ (file-name (string-append "go-github-com-golang-freetype-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "194w3djc6fv1rgcjqds085b9fq074panc5vw582bcb8dbfzsrqxc"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/golang/freetype"))
+ (propagated-inputs
+ `(("go-golang-org-x-image" ,go-golang-org-x-image)))
+ (home-page "https://github.com/golang/freetype")
+ (synopsis "Freetype font rasterizer in the Go programming language")
+ (description "The Freetype font rasterizer in the Go programming language.")
+ (license (list license:freetype
+ license:gpl2+)))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 04/11] gnu: Add go-github-com-fogleman-gg.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-4-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-fogleman-gg): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 5de4f8f635..64e226e03a 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3478,3 +3478,27 @@ characters with their ASCII approximations.")
(description "The Freetype font rasterizer in the Go programming language.")
(license (list license:freetype
license:gpl2+)))))
+
+(define-public go-github-com-fogleman-gg
+ (package
+ (name "go-github-com-fogleman-gg")
+ (version "1.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fogleman/gg")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1nkldjghbqnzj2djfaxhiv35kk341xhcrj9m2dwq65v684iqkk8n"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:tests? #f ; Issue with test flags.
+ #:import-path "github.com/fogleman/gg"))
+ (propagated-inputs
+ `(("go-github-com-golang-freetype" ,go-github-com-golang-freetype)))
+ (home-page "https://github.com/fogleman/gg")
+ (synopsis "2D rendering in Go")
+ (description "@code{gg} is a library for rendering 2D graphics in pure Go.")
+ (license license:expat)))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 05/11] gnu: Add go-github-com-gedex-inflector.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-5-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-gedex-inflector): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 64e226e03a..419b88552a 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3502,3 +3502,27 @@ characters with their ASCII approximations.")
(synopsis "2D rendering in Go")
(description "@code{gg} is a library for rendering 2D graphics in pure Go.")
(license license:expat)))
+
+(define-public go-github-com-gedex-inflector
+ (let ((commit "16278e9db8130ac7ec405dc174cfb94344f16325")
+ (revision "1"))
+ (package
+ (name "go-github-com-gedex-inflector")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gedex/inflector")
+ (commit commit)))
+ (file-name (string-append "go-github-com-gedex-inflector-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "05hjqw1m71vww4914d9h6nqa9jw3lgjzwsy7qaffl02s2lh1amks"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/gedex/inflector"))
+ (home-page "https://github.com/gedex/inflector")
+ (synopsis "Go library that pluralizes and singularizes English nouns")
+ (description "Go library that pluralizes and singularizes English nouns.")
+ (license license:bsd-2))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 06/11] gnu: Add go-github-com-klauspost-cpuid.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-6-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-klauspost-cpuid): New variable.
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 419b88552a..11dfb23e46 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3526,3 +3526,28 @@ characters with their ASCII approximations.")
(synopsis "Go library that pluralizes and singularizes English nouns")
(description "Go library that pluralizes and singularizes English nouns.")
(license license:bsd-2))))
+
+(define-public go-github-com-klauspost-cpuid
+ (package
+ (name "go-github-com-klauspost-cpuid")
+ (version "1.2.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/klauspost/cpuid")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1s510210wdj5dkamii1qrk7v87k4qpdcrrjzflp5ha9iscw6b06l"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/klauspost/cpuid"))
+ (home-page "https://github.com/klauspost/cpuid")
+ (synopsis "CPU feature identification for Go")
+ (description "@code{cpuid} provides information about the CPU running the
+current program. CPU features are detected on startup, and kept for fast access
+through the life of the application. Currently x86 / x64 (AMD64) is supported,
+and no external C (cgo) code is used, which should make the library very eas
+to use.")
+ (license license:expat)))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-7-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-klauspost-cpuid): New variable.
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 419b88552a..11dfb23e46 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3526,3 +3526,28 @@ characters with their ASCII approximations.")
(synopsis "Go library that pluralizes and singularizes English nouns")
(description "Go library that pluralizes and singularizes English nouns.")
(license license:bsd-2))))
+
+(define-public go-github-com-klauspost-cpuid
+ (package
+ (name "go-github-com-klauspost-cpuid")
+ (version "1.2.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/klauspost/cpuid")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1s510210wdj5dkamii1qrk7v87k4qpdcrrjzflp5ha9iscw6b06l"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/klauspost/cpuid"))
+ (home-page "https://github.com/klauspost/cpuid")
+ (synopsis "CPU feature identification for Go")
+ (description "@code{cpuid} provides information about the CPU running the
+current program. CPU features are detected on startup, and kept for fast access
+through the life of the application. Currently x86 / x64 (AMD64) is supported,
+and no external C (cgo) code is used, which should make the library very eas
+to use.")
+ (license license:expat)))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 07/11] gnu: Add go-github-com-pbnjay-memory.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-8-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-pbnjay-memory): New variable.
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 11dfb23e46..30e4b4147f 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3551,3 +3551,29 @@ through the life of the application. Currently x86 / x64 (AMD64) is supported,
and no external C (cgo) code is used, which should make the library very eas
to use.")
(license license:expat)))
+
+(define-public go-github-com-pbnjay-memory
+ (let ((commit "974d429e7ae40c89e7dcd41cfcc22a0bfbe42510")
+ (revision "1"))
+ (package
+ (name "go-github-com-pbnjay-memory")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/pbnjay/memory")
+ (commit commit)))
+ (file-name (string-append "go-github-com-pbnjay-memory-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "0kazg5psdn90pqadrzma5chdwh0l2by9z31sspr47gx93fhjmkkq"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/pbnjay/memory"))
+ (home-page "https://github.com/gedex/inflector")
+ (synopsis "Go library to report total system memory")
+ (description "@code{memory} provides a single method reporting total
+physical system memory accessible to the kernel. It does not account for memory
+used by other processes.")
+ (license license:bsd-3))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 08/11] gnu: Add go-github-com-surge-glog.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-9-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-surge-glog): New variable.
---
gnu/packages/golang.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 30e4b4147f..6b09dcbe58 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3577,3 +3577,27 @@ to use.")
physical system memory accessible to the kernel. It does not account for memory
used by other processes.")
(license license:bsd-3))))
+
+(define-public go-github-com-surge-glog
+ (let ((commit "2578deb2b95c665e6b1ebabf304ce2085c9e1985")
+ (revision "1"))
+ (package
+ (name "go-github-com-surge-glog")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/surge/glog")
+ (commit commit)))
+ (file-name (string-append "go-github-com-surge-glog-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "1bxcwxvsvr2hfpjz9hrrn0wrgykwmrbyk567102k3vafw9xdcwk4"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/surge/glog"))
+ (home-page "https://github.com/surge/glog")
+ (synopsis "Leveled execution logs for Go")
+ (description "Leveled execution logs for Go.")
+ (license license:asl2.0))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 09/11] gnu: Add go-github-com-surgebase-porter2.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-10-efraim@flashner.co.il
* gnu/packages/golang.scm (go-github-com-surgebase-porter2): New variable.
---
gnu/packages/golang.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 6b09dcbe58..0e1d2dc22a 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3601,3 +3601,33 @@ used by other processes.")
(synopsis "Leveled execution logs for Go")
(description "Leveled execution logs for Go.")
(license license:asl2.0))))
+
+(define-public go-github-com-surgebase-porter2
+ (let ((commit "56e4718818e8dc4ea5ba6348402fc7661863732a")
+ (revision "1"))
+ (package
+ (name "go-github-com-surgebase-porter2")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/surgebase/porter2")
+ (commit commit)))
+ (file-name (string-append "go-github-com-surgebase-porter2-"
+ version "-checkout"))
+ (sha256
+ (base32
+ "1ivcf83jlj9s7q5y9dfbpyl0br35cz8fcp0dm8sxxvqh54py06v2"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/surgebase/porter2"))
+ (native-inputs
+ `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)
+ ("go-github-com-surge-glog" ,go-github-com-surge-glog)))
+ (home-page "https://github.com/surgebase/porter2")
+ (synopsis "Go library implementing english Porter2 stemmer")
+ (description "Porter2 implements the
+@url{http://snowball.tartarus.org/algorithms/english/stemmer.html, english
+Porter2 stemmer}. It is written completely using finite state machines to do
+suffix comparison, rather than the string-based or tree-based approaches.")
+ (license license:asl2.0))))
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 10/11] gnu: Add edirect-go-programs.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-11-efraim@flashner.co.il
* gnu/packages/bioinformatics.scm (edirect-go-programs): New variable.
(edirect)[source]: Adjust snippet to not use non-free software.
---
gnu/packages/bioinformatics.scm | 57 +++++++++++++++++++++++++++++++--
1 file changed, 54 insertions(+), 3 deletions(-)

Toggle diff (106 lines)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 4dedee6223..1f0619ebb6 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -42,6 +42,7 @@
#:use-module (guix build-system ant)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system go)
#:use-module (guix build-system haskell)
#:use-module (guix build-system meson)
#:use-module (guix build-system ocaml)
@@ -68,15 +69,17 @@
#:use-module (gnu packages documentation)
#:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
+ #:use-module (gnu packages dlang)
#:use-module (gnu packages file)
#:use-module (gnu packages flex)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
- #:use-module (gnu packages gtk)
+ #:use-module (gnu packages golang)
#:use-module (gnu packages glib)
#:use-module (gnu packages graph)
#:use-module (gnu packages groff)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages haskell-check)
@@ -87,7 +90,6 @@
#:use-module (gnu packages java)
#:use-module (gnu packages java-compression)
#:use-module (gnu packages jemalloc)
- #:use-module (gnu packages dlang)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp-xyz)
#:use-module (gnu packages logging)
@@ -2766,7 +2768,12 @@ quantitative phenotypes.")
"093zp7klv81ph0y8mm8d78a9hnpfxbv2kdym70gzdf3vz176rw33"))
(modules '((guix build utils)))
(snippet
- '(begin (delete-file "Mozilla-CA.tar.gz") #t))))
+ '(begin (delete-file "Mozilla-CA.tar.gz")
+ (substitute* "rchive.go"
+ ;; This go library does not have any license.
+ (("github.com/fiam/gounidecode/unidecode")
+ "golang.org/rainycape/unidecode"))
+ #t))))
(build-system perl-build-system)
(arguments
`(#:phases
@@ -2826,6 +2833,50 @@ in structured XML format. This can eliminate the need for writing custom
software to answer ad hoc questions.")
(license license:public-domain)))
+(define-public edirect-go-programs
+ (package
+ (inherit edirect)
+ (name "edirect-go-programs")
+ (build-system go-build-system)
+ (arguments
+ `(#:install-source? #f
+ #:tests? #f ; No tests.
+ #:import-path "ncbi.nlm.nih.gov/entrez/edirect"
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'build
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "build" "-v" "-x" "j2x.go")
+ (invoke "go" "build" "-v" "-x" "t2x.go")
+ (invoke "go" "build" "-v" "-x" "-o"
+ "xtract.Linux" "xtract.go" "common.go")
+ (invoke "go" "build" "-v" "-x" "-o"
+ "rchive.Linux" "rchive.go" "common.go")
+ (invoke "go" "build" "-v" "-x" "-o" "symbols.Linux" "s2p.go"))))
+ (replace 'install
+ (lambda* (#:key outputs import-path #:allow-other-keys)
+ (let ((dest (string-append (assoc-ref outputs "out") "/bin"))
+ (source (string-append "src/" import-path "/")))
+ (for-each (lambda (file)
+ (format #t "installing ~a~%" file)
+ (install-file (string-append source file) dest))
+ '("j2x" "t2x" "symbols.Linux" "xtract.Linux" "rchive.Linux"))
+ #t))))))
+ (native-inputs '())
+ (propagated-inputs '())
+ (inputs
+ `(("go-github-com-fatih-color" ,go-github-com-fatih-color)
+ ("go-github-com-fogleman-gg" ,go-github-com-fogleman-gg)
+ ("go-github-com-gedex-inflector" ,go-github-com-gedex-inflector)
+ ("go-github-com-golang-freetype" ,go-github-com-golang-freetype)
+ ("go-github-com-klauspost-cpuid" ,go-github-com-klauspost-cpuid)
+ ("go-github-com-pbnjay-memory" ,go-github-com-pbnjay-memory)
+ ("go-github-com-surgebase-porter2" ,go-github-com-surgebase-porter2)
+ ("go-golang-org-rainycape-unidecode" ,go-golang-org-rainycape-unidecode)
+ ("go-golang-org-x-image" ,go-golang-org-x-image)
+ ("go-golang-org-x-text" ,go-golang-org-x-text)))))
+
(define-public exonerate
(package
(name "exonerate")
--
2.25.1
E
E
Efraim Flashner wrote on 16 Mar 2020 08:15
[PATCH 11/11] gnu: edirect: Install more programs.
(address . 40086@debbugs.gnu.org)(name . Efraim Flashner)(address . efraim@flashner.co.il)
20200316071559.13930-12-efraim@flashner.co.il
* gnu/packages/bioinformatics.scm (edirect)[arguments]: Add
'patch-programs phase to work around not finding binaries in the PATH.
Rewrite 'install phase to install many more scripts. Rewrite
'wrap-program to wrap more scripts with more programs.
[inputs]: Add edirect-go-programs.
[native-search-paths]: New field.
---
gnu/packages/bioinformatics.scm | 57 +++++++++++++++++++++++++++------
1 file changed, 47 insertions(+), 10 deletions(-)

Toggle diff (88 lines)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 1f0619ebb6..da36733412 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -2781,19 +2781,48 @@ quantitative phenotypes.")
(delete 'configure)
(delete 'build)
(delete 'check) ; simple check after install
+ (add-after 'unpack 'patch-programs
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Ignore errors about missing xtract.Linux and rchive.Linux.
+ (substitute* "pm-refresh"
+ (("cat \\\"\\$target")
+ "grep ^[[:digit:]] \"$target"))
+ #t))
(replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (install-file "edirect.pl"
- (string-append (assoc-ref outputs "out") "/bin"))
- #t))
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
+ (edirect-go (assoc-ref inputs "edirect-go-programs")))
+ (for-each
+ (lambda (file)
+ (install-file file bin))
+ '("archive-pubmed" "asp-cp" "asp-ls" "download-ncbi-data"
+ "download-pubmed" "edirect.pl" "efetch" "epost" "esearch"
+ "fetch-pubmed" "ftp-cp" "ftp-ls" "has-asp" "index-pubmed"
+ "pm-prepare" "pm-refresh" "pm-stash" "pm-collect"
+ "pm-index" "pm-invert" "pm-merge" "pm-promote"))
+ (symlink (string-append edirect-go "/bin/xtract.Linux")
+ (string-append bin "/xtract"))
+ (symlink (string-append edirect-go "/bin/rchive.Linux")
+ (string-append bin "/rchive")))
+ #t))
(add-after 'install 'wrap-program
(lambda* (#:key outputs #:allow-other-keys)
- ;; Make sure 'edirect.pl' finds all perl inputs at runtime.
- (let* ((out (assoc-ref outputs "out"))
+ ;; Make sure everything can run in a pure environment.
+ (let ((out (assoc-ref outputs "out"))
(path (getenv "PERL5LIB")))
- (wrap-program (string-append out "/bin/edirect.pl")
- `("PERL5LIB" ":" prefix (,path))))
- #t))
+ (for-each
+ (lambda (file)
+ (wrap-program file
+ `("PERL5LIB" ":" prefix (,path)))
+ (wrap-program file
+ `("PATH" ":" prefix (,(string-append out "/bin")
+ ,(dirname (which "sed"))
+ ,(dirname (which "gzip"))
+ ,(dirname (which "grep"))
+ ,(dirname (which "perl"))
+ ,(dirname (which "uname"))))))
+ (find-files out ".")))
+ #t))
(add-after 'wrap-program 'check
(lambda* (#:key outputs #:allow-other-keys)
(invoke (string-append (assoc-ref outputs "out")
@@ -2801,7 +2830,8 @@ quantitative phenotypes.")
"-filter" "-help")
#t)))))
(inputs
- `(("perl-html-parser" ,perl-html-parser)
+ `(("edirect-go-programs" ,edirect-go-programs)
+ ("perl-html-parser" ,perl-html-parser)
("perl-encode-locale" ,perl-encode-locale)
("perl-file-listing" ,perl-file-listing)
("perl-html-tagset" ,perl-html-tagset)
@@ -2831,6 +2861,13 @@ EDirect also provides an argument-driven function that simplifies the
extraction of data from document summaries or other results that are returned
in structured XML format. This can eliminate the need for writing custom
software to answer ad hoc questions.")
+ (native-search-paths
+ ;; Ideally this should be set for LWP somewhere.
+ (list (search-path-specification
+ (variable "PERL_LWP_SSL_CA_FILE")
+ (file-type 'regular)
+ (separator #f)
+ (files '("/etc/ssl/certs/ca-certificates.crt")))))
(license license:public-domain)))
(define-public edirect-go-programs
--
2.25.1
E
E
Efraim Flashner wrote on 22 Mar 2020 08:59
Re: [PATCH 00/11] Expand edirect programs
(address . 40086-done@debbugs.gnu.org)
20200322075923.GD1685@E5400
Patches pushed


--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl53GtsACgkQQarn3Mo9
g1EqFRAAoSUXbBTyZ9CMzCxrAHg92u55LPutQcNo+s/HzgC/toNjWD/ACHB9klmm
n47uHE2jmobrdkYwSTxub2Lz3CvHYFD11K49ksyDROopI64w4lNeAOTHZVg5Wk7+
QMiJhFJzJFwYxYH0lSh+vk+kkVduuspnt/Znpn2bmG46KcH21mdvjALcUZoYSxGZ
fD+3dUAQSqktaWZ/rx9fbDsoKc8ku9x49tQoplWRjNuxQav9+EZebt0/x2fsgNsK
RrLjW7ZwCeI3Dx5VJs5QcSCrle34OgIMjBOIIXHmphPORbPD15LTrRnZG23O91j0
REE/5wni3WrQ6F30M+HfBl/wBTc/kgQ8CG3dh7g0kx3WSkoYsqIJiGhLrwkuuQVG
UyiuILgGJOrwnv3BGUuQ4FFpa+53ew9GXk3BJKl59o6JYN9b5vV7KfMsu6L8Ga75
wX9qkjvBaXCfg9Xhy7KDhfgGbgEdxr1myL7otZIvSXXKi8b3PvxBuu27zV7ih7op
ILO4V2zdMq5EUvC0DQXPbkRWWI8mZhINCmOfyPHniyuK/L/OrLrRVjDHcKWl9fzv
dYguIlb7DF7NNUpQc/rcTabAseMyGUF0LvskNccxIeud1G3WGFHgpmiP3NjrpqgS
I/ippaInz2VdZeZP+mYulpyG98/p4aS6DKRYiUKxz17gWV1loow=
=7HgI
-----END PGP SIGNATURE-----


Closed
?