[PATCH 00/12] Add aws-vault and missing dependent packages

  • Done
  • quality assurance status badge
Details
3 participants
  • Collin J. Doering
  • Leo Famulari
  • Ludovic Courtès
Owner
unassigned
Submitted by
Collin J. Doering
Severity
normal
C
C
Collin J. Doering wrote on 20 Nov 2021 00:12
(address . guix-patches@gnu.org)
87lf1j4u2n.fsf@rekahsoft.ca
aws-vault is a tool to securely store and use aws credentials. This patch set packages aws-vault as well as missing dependencies.

Note: perhaps gnu/packages/golang.scm is not the best fit for these changes. Any suggestions for a better spot appreciated.

Collin J. Doering (12):
gnu: Add go-keyring
gnu: Add go-androidnsfix
gnu: Add go-percent
gnu: Add go-aws-sdk-go
gnu: Add go-jose2go
gnu: Add go-libsecret
gnu: Add go-ini
gnu: Add go-open-golang
gnu: Add go-alecthomas-template
gnu: Add go-alecthomas-units
gnu: Add go-kingpin
gnu: Add aws-vault

gnu/packages/golang.scm | 380 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 380 insertions(+)

--
2.33.1

--
Collin J. Doering

C
C
Collin J. Doering wrote on 20 Nov 2021 00:15
[PATCH 01/12] gnu: Add go-keyring
(address . 51989@debbugs.gnu.org)
87h7c74tzg.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 44 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (70 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index cc2a4ebc16..9d7b4e6d02 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -63,8 +63,10 @@ (define-module (gnu packages golang)
#:use-module ((gnu packages bootstrap) #:select (glibc-dynamic-linker))
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages lua)
#:use-module (gnu packages mp3)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -8839,3 +8841,45 @@ (define-public go-gopkg-in-djherbis-times-v1
(description
"Provides a platform-independent way to get atime, mtime, ctime and btime for files.")
(license license:expat)))
+(define-public go-keyring
+ (package
+ (name "go-keyring")
+ (version "v1.1.6")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/99designs/keyring")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "08rcdqpxaa9n348q10fw40q4gxpjajkyrighykk71i7mxzwkcgwn"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
+ ("go-golang-org-x-sys" ,go-golang-org-x-sys)
+ ("go-github-com-percent" ,go-github-com-percent)
+ ("go-github-com-mitchellh-go-homedir" ,go-github-com-mitchellh-go-homedir)
+ ("go-github-com-dvsekhvalnov-jose2go" ,go-github-com-dvsekhvalnov-jose2go)
+ ("go-github-com-godbus-dbus" ,go-github-com-godbus-dbus)
+ ("go-github-com-go-libsecret" ,go-github-com-go-libsecret)
+ ("password-store" ,password-store)
+ ("gnupg" ,gnupg)))
+ (arguments
+ '(#:import-path "github.com/99designs/keyring"
+ #:phases (modify-phases %standard-phases
+ ;; Tests require vagrant
+ (delete 'check))))
+ (synopsis "Go library providing a uniform interface for various secure
+credential stores")
+ (description
+ "Keyring provides utility functions for and a common interface to a range
+of secure credential storage services. Originally developed as part of AWS
+Vault, a command line tool for securely managing AWS access from developer
+workstations.
+
+Currently Keyring supports the following backends: macOS/OSX Keychain, Windows
+pcredential store, Pass, Secret Service, KDE Wallet, Encrypted File.")
+ (home-page "https://github.com/99designs/keyring")
+ (license license:expat)))
+
--
2.33.1

--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:16
[PATCH 02/12] gnu: Add go-androidnsfix
(address . 51989@debbugs.gnu.org)
87czmv4tyb.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 9d7b4e6d02..4eeb3e6af0 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8883,3 +8883,26 @@ (define-public go-keyring
(home-page "https://github.com/99designs/keyring")
(license license:expat)))
+(define-public go-github-com-androiddnsfix
+ (package
+ (name "go-androiddnsfix")
+ (version "ff02804463540c36e3a148dcf4b009d003cf2a31")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mtibben/androiddnsfix")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pcbjs793kd0yg3dcp79agfxm7xm3sldx2r7v66ipzpcq0j2npi2"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/mtibben/androiddnsfix"
+ #:phases %standard-phases))
+ (synopsis "Hack to get around the issues building on android")
+ (description
+ "Hack around the issues in https://github.com/golang/go/issues/8877.")
+ (home-page "https://github.com/mtibben/androiddnsfix")
+ (license license:expat)))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:16
[PATCH 03/12] gnu: Add go-percent
(address . 51989@debbugs.gnu.org)
878rxj4twy.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 4eeb3e6af0..647e0c40cb 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8906,3 +8906,26 @@ (define-public go-github-com-androiddnsfix
(home-page "https://github.com/mtibben/androiddnsfix")
(license license:expat)))
+(define-public go-github-com-percent
+ (package
+ (name "go-percent")
+ (version "v0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mtibben/percent")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1iqivw8pigj259rj5yifibbvic70f9hb7k24a4sa967s4fj6agb6"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/mtibben/percent"
+ #:phases %standard-phases))
+ (synopsis "Package percent escapes strings using percent-encoding")
+ (description
+ "Package percent escapes strings using percent-encoding.")
+ (home-page "https://github.com/mtibben/percent")
+ (license license:expat)))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:17
[PATCH 04/12] gnu: Add go-aws-sdk-go
(address . 51989@debbugs.gnu.org)
874k874tw0.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 647e0c40cb..e9f90043d6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8929,3 +8929,28 @@ (define-public go-github-com-percent
(home-page "https://github.com/mtibben/percent")
(license license:expat)))
+(define-public go-github-com-aws-aws-sdk-go
+ (package
+ (name "go-aws-sdk-go")
+ (version "1.36.18")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/aws/aws-sdk-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "169mkkw1cff1px6326krwvfpfj07sb4y5rbn003gi4bk176h6ry9"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-jmespath-go-jmespath" ,go-github-com-jmespath-go-jmespath)))
+ (arguments
+ '(#:import-path "github.com/aws/aws-sdk-go"
+ #:phases %standard-phases))
+ (synopsis "The official AWS SDK for the Go programming language")
+ (description
+ "The official AWS SDK for the Go programming language.")
+ (home-page "https://github.com/aws/aws-sdk-go")
+ (license license:asl2.0)))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:18
[PATCH 05/12] gnu: Add go-jose2go
(address . 51989@debbugs.gnu.org)
87zgpz3f9d.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index e9f90043d6..8c91cec335 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8954,3 +8954,29 @@ (define-public go-github-com-aws-aws-sdk-go
(home-page "https://github.com/aws/aws-sdk-go")
(license license:asl2.0)))
+(define-public go-github-com-dvsekhvalnov-jose2go
+ (package
+ (name "go-jose2go")
+ (version "1.5.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dvsekhvalnov/jose2go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pzfmv2dxb3m455bi1ks4q3i0dcw1sazxk8k96wrgpkwgglyxj3n"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1)))
+ (arguments
+ '(#:import-path "github.com/dvsekhvalnov/jose2go"
+ #:phases %standard-phases))
+ (synopsis "Go implementation of Javascript Object Signing and Encryption spec")
+ (description
+ "Pure Golang (GO) library for generating, decoding and encrypting JSON Web
+Tokens. Zero dependency, relies only on standard library.")
+ (home-page "https://github.com/dvsekhvalnov/jose2go")
+ (license license:expat)))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:19
[PATCH 06/12] gnu: Add go-libsecret
(address . 51989@debbugs.gnu.org)
87v90n3f80.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 8c91cec335..10e472c72f 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8980,3 +8980,32 @@ (define-public go-github-com-dvsekhvalnov-jose2go
(home-page "https://github.com/dvsekhvalnov/jose2go")
(license license:expat)))
+(define-public go-github-com-go-libsecret
+ (let ((commit "a6f4afe4910cad8688db3e0e9b9ac92ad22d54e1")
+ (revision "0"))
+ (package
+ (name "go-libsecret")
+ (version "5.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gsterjov/go-libsecret")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "09zaiadnll83vs22ib89agg7anj0blw5fywvmckxllsgif6ak6v7"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-godbus-dbus" ,go-github-com-godbus-dbus)))
+ (arguments
+ '(#:import-path "github.com/gsterjov/go-libsecret"
+ #:phases %standard-phases))
+ (synopsis "Go library that manages secrets via the
+freedesktop.org Secret Service DBus API")
+ (description
+ "Native go library that manages secrets via the freedesktop.org Secret
+Service DBus API")
+ (home-page "https://github.com/gsterjov/go-libsecret")
+ (license license:expat))))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:20
[PATCH 07/12] gnu: Add go-ini
(address . 51989@debbugs.gnu.org)
87r1bb3f72.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (51 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 10e472c72f..bba6cead5b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -61,6 +61,7 @@ (define-module (gnu packages golang)
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module ((gnu packages bootstrap) #:select (glibc-dynamic-linker))
+ #:use-module (gnu packages check)
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
@@ -9009,3 +9010,28 @@ (define-public go-github-com-go-libsecret
(home-page "https://github.com/gsterjov/go-libsecret")
(license license:expat))))
+(define-public go-gopkg-in-ini
+ (package
+ (name "go-ini")
+ (version "v1.62.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gopkg.in/ini.v1")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1dm9ydqyflasp5li22kb0w73s6kp2swii8naqfhnz64v171gmm5v"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github.com-smartystreets-goconvey" ,go-github.com-smartystreets-goconvey)))
+ (arguments
+ '(#:import-path "gopkg.in/ini.v1"
+ #:phases %standard-phases))
+ (synopsis "Provides INI file read and write functionality in Go")
+ (description
+ "Provides INI file read and write functionality in Go.")
+ (home-page "https://gopkg.in/ini.v1")
+ (license license:asl2.0)))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:20
[PATCH 08/12] gnu: Add go-open-golang
(address . 51989@debbugs.gnu.org)
87mtlz3f68.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (49 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index bba6cead5b..c8174372c4 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9035,3 +9035,34 @@ (define-public go-gopkg-in-ini
(home-page "https://gopkg.in/ini.v1")
(license license:asl2.0)))
+(define-public go-github-com-skratchdot-open-golang
+ (let ((commit "79abb63cd66e41cb1473e26d11ebdcd68b04c8e5")
+ (revision "0"))
+ (package
+ (name "go-open-golang")
+ (version "1.42.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/skratchdot/open-golang")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0jc13jn8cj7p14n79zhav2nwga6kf9rqs01ic5k7j7agwzzly3ww"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/skratchdot/open-golang"
+ #:phases (modify-phases %standard-phases
+ (delete 'build)
+ (delete 'check))))
+ (synopsis "Open a file, directory, or URI using the OS's default application")
+ (description
+ "Open a file, directory, or URI using the OS's default application for
+that object type. Optionally, you can specify an application to use.
+
+This is a proxy for the following commands: OSX - open, Windows - start,
+Linux/Other - xdg-open")
+ (home-page "https://github.com/skratchdot/open-golang")
+ (license license:expat))))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:21
[PATCH 09/12] gnu: Add go-alecthomas-template
(address . 51989@debbugs.gnu.org)
87ilwn3f5i.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index c8174372c4..3944ee71fe 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9066,3 +9066,30 @@ (define-public go-github-com-skratchdot-open-golang
(home-page "https://github.com/skratchdot/open-golang")
(license license:expat))))
+(define-public go-github-com-alecthomas-template
+ (let ((commit "a0175ee3bccc567396460bf5acd36800cb10c49c")
+ (revision "0"))
+ (package
+ (name "go-alecthomas-template")
+ (version "0.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alecthomas/template")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/alecthomas/template"
+ #:phases %standard-phases))
+ (synopsis "Fork of Go's text/template adding newline elision")
+ (description
+ "This is a fork of Go 1.4's text/template package with one addition: a
+backslash immediately after a closing delimiter will delete all subsequent
+newlines until a non-newline.")
+ (home-page "https://github.com/alecthomas/template")
+ (license license:bsd-3))))
+
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:21
[PATCH 10/12] gnu: Add go-alecthomas-units
(address . 51989@debbugs.gnu.org)
87ee7b3eyv.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 3944ee71fe..0709208f3f 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9093,3 +9093,29 @@ (define-public go-github-com-alecthomas-template
(home-page "https://github.com/alecthomas/template")
(license license:bsd-3))))
+(define-public go-github-com-alecthomas-units
+ (let ((commit "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a")
+ (revision "0"))
+ (package
+ (name "go-alecthomas-units")
+ (version "0.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alecthomas/units")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
+ (arguments
+ '(#:import-path "github.com/alecthomas/units"
+ #:phases %standard-phases))
+ (synopsis "Helpful unit multipliers and functions for Go")
+ (description
+ "Helpful unit multipliers and functions for Go")
+ (home-page "https://github.com/alecthomas/units")
+ (license license:expat))))
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:25
[PATCH 11/12] gnu: Add go-kingpin
(address . 51989@debbugs.gnu.org)
87a6hz3euz.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 0709208f3f..6060da744d 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -9066,6 +9066,33 @@ (define-public go-github-com-skratchdot-open-golang
(home-page "https://github.com/skratchdot/open-golang")
(license license:expat))))
+(define-public go-github-com-kingpin
+ (package
+ (name "go-kingpin")
+ (version "2.2.6")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alecthomas/kingpin")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-alecthomas-template" ,go-github-com-alecthomas-template)
+ ("go-github-com-alecthomas-units" ,go-github-com-alecthomas-units)
+ ("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
+ (arguments
+ '(#:import-path "github.com/alecthomas/kingpin"
+ #:phases %standard-phases))
+ (synopsis "Go library provides utilities for building command line interfaces")
+ (description
+ "Go library provides utilities for building command line interfaces.")
+ (home-page "https://github.com/alecthomas/kingpin")
+ (license license:expat)))
+
(define-public go-github-com-alecthomas-template
(let ((commit "a0175ee3bccc567396460bf5acd36800cb10c49c")
(revision "0"))
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
C
C
Collin J. Doering wrote on 20 Nov 2021 00:32
[PATCH 12/12] gnu: Add aws-vault
(address . 51989@debbugs.gnu.org)
875ysn3enh.fsf@rekahsoft.ca
---
gnu/packages/golang.scm | 73 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)

Toggle diff (94 lines)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 6060da744d..2e8e1ff61c 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -8842,6 +8842,79 @@ (define-public go-gopkg-in-djherbis-times-v1
(description
"Provides a platform-independent way to get atime, mtime, ctime and btime for files.")
(license license:expat)))
+
+(define-public aws-vault
+ (package
+ (name "aws-vault")
+ (version "6.3.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/99designs/aws-vault")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02zw0kl77yr56mw1fbvr51c4mz2265c9al2nzvnqqzdx5aha7nf8"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-keyring" ,go-keyring)
+ ("go-github-com-androiddnsfix" ,go-github-com-androiddnsfix)
+ ("go-github-com-percent" ,go-github-com-percent)
+ ("go-github-com-jmespath-go-jmespath" ,go-github-com-jmespath-go-jmespath)
+ ("go-github-com-aws-aws-sdk-go" ,go-github-com-aws-aws-sdk-go)
+ ("go-github-com-dvsekhvalnov-jose2go" ,go-github-com-dvsekhvalnov-jose2go)
+ ("go-github-com-godbus-dbus" ,go-github-com-godbus-dbus)
+ ("go-github-com-go-libsecret" ,go-github-com-go-libsecret)
+ ("go-github-com-mitchellh-go-homedir" ,go-github-com-mitchellh-go-homedir)
+ ("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
+ ("go-golang-org-x-sys" ,go-golang-org-x-sys)
+ ("go-gopkg-in-ini" ,go-gopkg-in-ini)
+ ("go-github-com-skratchdot-open-golang" ,go-github-com-skratchdot-open-golang)
+ ("go-github-com-kingpin" ,go-github-com-kingpin)
+ ("go-github-com-alecthomas-template" ,go-github-com-alecthomas-template)
+ ("go-github-com-alecthomas-units" ,go-github-com-alecthomas-units)))
+ (arguments
+ `(#:import-path "github.com/99designs/aws-vault"
+ #:install-source? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-version
+ (lambda _
+ (substitute* "src/github.com/99designs/aws-vault/main.go"
+ (("var Version = \"dev\"")
+ (string-append "var Version = \"v" ,version "\"")))))
+ (add-after 'build 'contrib
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (zsh-site-dir (string-append out "/share/zsh/site-functions"))
+ (bash-completion-dir
+ (string-append out "/share/bash-completion/completions"))
+ (fish-completion-dir
+ (string-append out "/share/fish/completions")))
+ (for-each mkdir-p
+ `(,zsh-site-dir ,bash-completion-dir ,fish-completion-dir))
+ (with-directory-excursion
+ "src/github.com/99designs/aws-vault/contrib/completions"
+ (copy-file "zsh/aws-vault.zsh"
+ (string-append zsh-site-dir "/_aws-vault"))
+ (copy-file "bash/aws-vault.bash"
+ (string-append bash-completion-dir "/aws-vault"))
+ (copy-file "fish/aws-vault.fish"
+ (string-append fish-completion-dir "/aws-vault.fish")))
+ #t))))))
+ (synopsis
+ "Vault for securely storing and accessing AWS credentials")
+ (description
+ "AWS Vault is a tool to securely store and access AWS credentials.
+
+AWS Vault stores IAM credentials in your operating system's secure keystore and
+then generates temporary credentials from those to expose to your shell and
+applications. It's designed to be complementary to the AWS CLI tools, and is
+aware of your profiles and configuration in ~/.aws/config.")
+ (home-page "https://github.com/99designs/aws-vault")
+ (license license:expat)))
+
(define-public go-keyring
(package
(name "go-keyring")
--
2.33.1


--
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca
L
L
Ludovic Courtès wrote on 18 Dec 2021 19:56
Re: bug#51989: [PATCH 00/12] Add aws-vault and missing dependent packages
(name . Collin J. Doering)(address . collin@rekahsoft.ca)(address . 51989@debbugs.gnu.org)
87r1a9oi7x.fsf@gnu.org
Hi Collin,

"Collin J. Doering" <collin@rekahsoft.ca> skribis:

Toggle quote (4 lines)
> aws-vault is a tool to securely store and use aws credentials. This patch set packages aws-vault as well as missing dependencies.
>
> Note: perhaps gnu/packages/golang.scm is not the best fit for these changes. Any suggestions for a better spot appreciated.

Hmm not sure; most of the dependencies are at home in golang.scm IMO.
I’d leave it as is.

Toggle quote (14 lines)
> Collin J. Doering (12):
> gnu: Add go-keyring
> gnu: Add go-androidnsfix
> gnu: Add go-percent
> gnu: Add go-aws-sdk-go
> gnu: Add go-jose2go
> gnu: Add go-libsecret
> gnu: Add go-ini
> gnu: Add go-open-golang
> gnu: Add go-alecthomas-template
> gnu: Add go-alecthomas-units
> gnu: Add go-kingpin
> gnu: Add aws-vault

I tried to apply those (overall it LGTM), but the order is incorrect:
for instance ‘go-keyring’ depends on ‘go-percent’ and ‘go-libsecret’.

So I have the following queries:

1. Do you think you could send them in the “right order”?

2. As you go, could you pass them to:

./pre-inst-env guix style PKG

?

3. Last, it would be perfect if you could provide the conventional
commit logs.

Thanks in advance, and sorry for the delay!

Ludo’.
L
L
Leo Famulari wrote on 18 Dec 2021 20:45
Re: [bug#51989] [PATCH 00/12] Add aws-vault and missing dependent packages
(name . Ludovic Courtès)(address . ludo@gnu.org)
Yb46ZczToE4DrRx1@jasmine.lan
On Sat, Dec 18, 2021 at 07:56:02PM +0100, Ludovic Courtès wrote:
Toggle quote (2 lines)
> 1. Do you think you could send them in the “right order”?

The easiest way to do this is to send all the patches in a single file:

`git format-patch origin/master --stdout > vault.patch` and then mail
'vault.patch'.
C
C
Collin J. Doering wrote on 27 Dec 2021 17:19
Re: bug#51989: [PATCH 00/12] Add aws-vault and missing dependent packages
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 51989@debbugs.gnu.org)
87czliau70.fsf@rekahsoft.ca
Hi Ludovic,

Thank you for getting back to me.

Toggle quote (33 lines)
> Hi Collin,
>
> "Collin J. Doering" <collin@rekahsoft.ca> skribis:
>
>> aws-vault is a tool to securely store and use aws credentials. This patch set packages aws-vault as well as missing dependencies.
>>
>> Note: perhaps gnu/packages/golang.scm is not the best fit for these changes. Any suggestions for a better spot appreciated.
>
> Hmm not sure; most of the dependencies are at home in golang.scm IMO.
> I’d leave it as is.
>
>> Collin J. Doering (12):
>> gnu: Add go-keyring
>> gnu: Add go-androidnsfix
>> gnu: Add go-percent
>> gnu: Add go-aws-sdk-go
>> gnu: Add go-jose2go
>> gnu: Add go-libsecret
>> gnu: Add go-ini
>> gnu: Add go-open-golang
>> gnu: Add go-alecthomas-template
>> gnu: Add go-alecthomas-units
>> gnu: Add go-kingpin
>> gnu: Add aws-vault
>
> I tried to apply those (overall it LGTM), but the order is incorrect:
> for instance ‘go-keyring’ depends on ‘go-percent’ and ‘go-libsecret’.
>
> So I have the following queries:
>
> 1. Do you think you could send them in the “right order”?
>

Done (see new patch set attached to this email).

Toggle quote (7 lines)
> 2. As you go, could you pass them to:
>
> ./pre-inst-env guix style PKG
>
> ?
>

I actually had issues doing this. The above command would segfault. After running the `clean` and `clean-go` make targets, it would no longer segfault, but would then complain about ABI compatibility. I didn't debug further instead ran the `etc/indent-code.el` source file, commiting as necessary. However, I did find that after rebasing my changes onto the tip of master, the `guix style` command started to work as expected.

Another note: I use emacs and did load the `.dir-locals.el` file when making these changes, so I would have expected formatting to be fine already. Must be something on my end that is affecting auto-formatting in emacs.

Toggle quote (4 lines)
> 3. Last, it would be perfect if you could provide the conventional
> commit logs.
>

Done. Please let me know if the new logs provided match the expected conventions.

Toggle quote (4 lines)
> Thanks in advance, and sorry for the delay!
>
> Ludo’.

Thank you again for your consideration and time reviewing this patchset.

Kind regards,
C
C
Collin J. Doering wrote on 27 Dec 2021 20:30
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 51989@debbugs.gnu.org)
878rw5c08x.fsf@rekahsoft.ca
Hi Ludovic,

Apologies, I realized after the fact that you not only wanted formatting applied, but also adjust made for the upcoming big change (as noted on the guix blog). As such, please disregard my last patch set. The one below is appropriately formatted with the style command as suggested.

Kind regards,
On 27 Dec 2021 at 11:19, "Collin J. Doering" <collin@rekahsoft.ca> wrote:

Toggle quote (73 lines)
> Hi Ludovic,
>
> Thank you for getting back to me.
>
>> Hi Collin,
>>
>> "Collin J. Doering" <collin@rekahsoft.ca> skribis:
>>
>>> aws-vault is a tool to securely store and use aws credentials. This patch set packages aws-vault as well as missing dependencies.
>>>
>>> Note: perhaps gnu/packages/golang.scm is not the best fit for these changes. Any suggestions for a better spot appreciated.
>>
>> Hmm not sure; most of the dependencies are at home in golang.scm IMO.
>> I’d leave it as is.
>>
>>> Collin J. Doering (12):
>>> gnu: Add go-keyring
>>> gnu: Add go-androidnsfix
>>> gnu: Add go-percent
>>> gnu: Add go-aws-sdk-go
>>> gnu: Add go-jose2go
>>> gnu: Add go-libsecret
>>> gnu: Add go-ini
>>> gnu: Add go-open-golang
>>> gnu: Add go-alecthomas-template
>>> gnu: Add go-alecthomas-units
>>> gnu: Add go-kingpin
>>> gnu: Add aws-vault
>>
>> I tried to apply those (overall it LGTM), but the order is incorrect:
>> for instance ‘go-keyring’ depends on ‘go-percent’ and ‘go-libsecret’.
>>
>> So I have the following queries:
>>
>> 1. Do you think you could send them in the “right order”?
>>
>
> Done (see new patch set attached to this email).
>
>> 2. As you go, could you pass them to:
>>
>> ./pre-inst-env guix style PKG
>>
>> ?
>>
>
> I actually had issues doing this. The above command would segfault. After running the `clean`
> and `clean-go` make targets, it would no longer segfault, but would then complain about ABI
> compatibility. I didn't debug further instead ran the `etc/indent-code.el` source file,
> commiting as necessary. However, I did find that after rebasing my changes onto the tip of
> master, the `guix style` command started to work as expected.
>
> Another note: I use emacs and did load the `.dir-locals.el` file when making these changes,
> so I would have expected formatting to be fine already. Must be something on my end that is
> affecting auto-formatting in emacs.
>
>> 3. Last, it would be perfect if you could provide the conventional
>> commit logs.
>>
>
> Done. Please let me know if the new logs provided match the expected conventions.
>
>> Thanks in advance, and sorry for the delay!
>>
>> Ludo’.
>
> Thank you again for your consideration and time reviewing this patchset.
>
> Kind regards,
>
> [2. text/x-patch; aws-vault-and-deps.patch]...


L
L
Ludovic Courtès wrote on 31 Dec 2021 18:24
(name . Collin J. Doering)(address . collin@rekahsoft.ca)(address . 51989-done@debbugs.gnu.org)
87pmpcpu07.fsf@gnu.org
Hi Collin,

I’ve applied the second version of this patch set that you sent on
Monday. I fixed a couple of version strings that still had the “v”
prefix and tweaked synopses/descriptions following these guidelines:


"Collin J. Doering" <collin@rekahsoft.ca> skribis:

[...]

Toggle quote (18 lines)
>> 2. As you go, could you pass them to:
>> ./pre-inst-env guix style PKG
>> ?
>>
>
> I actually had issues doing this. The above command would
> segfault. After running the `clean` and `clean-go` make targets, it
> would no longer segfault, but would then complain about ABI
> compatibility. I didn't debug further instead ran the
> `etc/indent-code.el` source file, commiting as necessary. However, I
> did find that after rebasing my changes onto the tip of master, the
> `guix style` command started to work as expected.
>
> Another note: I use emacs and did load the `.dir-locals.el` file when
> making these changes, so I would have expected formatting to be fine
> already. Must be something on my end that is affecting auto-formatting
> in emacs.

With ‘.dir-locals.el’, I expect Emacs should do the right thing.

However, what Emacs cannot do is convert to the “simplified input
style”, which is what ‘guix style’ does. (Eventually ‘indent-code.el’
functionality will be replaced by ‘guix style’ too.)

A segfault sounds scary, it could have been a setup issue somehow; we
can investigate next time!

Thanks,
Ludo’.
Closed
?