diff mbox series

[bug#55379,01/14] gnu: Add r-gpg.

Message ID d28d8263c5619db922a5ca3aa494fb96dd13786d.1651893550.git.kyle@posteo.net
State New
Headers show
Series [bug#55379,01/14] gnu: Add r-gpg. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Kyle Andrews May 12, 2022, 2:10 a.m. UTC
From: Kyle Andrews <kyle@posteo.net>

---
 gnu/packages/cran.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

Comments

Maxime Devos May 13, 2022, 7:10 a.m. UTC | #1
kyle schreef op do 12-05-2022 om 02:10 [+0000]:
> +   (propagated-inputs
> +    `(("r-askpass" ,r-askpass) ("r-curl" ,r-curl)))

Can probably be simplified to (propagated-inputs (list r-askpass)).

> +   (inputs
> +    `(("gpgme" ,gpgme) ("gnupg" ,gnupg)))

Likewise.

> +   (native-inputs
> +    `(("pkg-config" ,pkg-config) ("r-knitr" ,r-knitr)))


Likewise.


> +   (home-page
> +    "https://jeroen.cran.dev/gpg/https://github.com/jeroen/gpg")

Either https://jeroen.cran.dev/gpg/ or <https://github.com/jeroen/gpg>,
the combination gives a 404 Not Found.

> Note that some functionality depends on the version of GnuPG that is
> installed on the system.

Maybe make sure that it only invokes the "gnupg" by absolute file name
such that this isn't the case.

> On Windows this package can be used together with 'GPG4Win' which
> provides a GUI for managing keys and entering passphrases.

While theoretically Guix supports cross-compilation to Windows, I don't
see GPG4Win in the package inputs and I'd expect cross-compiling r-gpg
to Windows to fail, so I would remove this paragraph since currently
it's a bit misleading.

Greetings,
Maxime.
Maxime Devos May 14, 2022, 6:02 p.m. UTC | #2
Kyle Andrews schreef op za 14-05-2022 om 16:53 [+0000]:
> > [[PGP Signed Part:Undecided]]
> > kyle schreef op do 12-05-2022 om 02:10 [+0000]:
> > > +   (propagated-inputs
> > > +    `(("r-askpass" ,r-askpass) ("r-curl" ,r-curl)))
> > 
> > Can probably be simplified to (propagated-inputs (list r-askpass)).
> > 
> 
> According to the ~DESCRIPTION~ file the package will not build
> without
> both askpass and curl R packages. So, I will leave those in.

Oops I meant (propagated-inputs (list r-askpass r-curl)) here -- keep
the inputs, but remove the labels, as per
<https://guix.gnu.org/en/blog/2021/the-big-change/>.

Greetings,
Maxime.
Maxime Devos May 14, 2022, 6:07 p.m. UTC | #3
TBC I just looked at the package definitions a bit, it's not in-depth.

E.g., in this case:

+    "R Interface to the 'Yacas' Computer Algebra System")
+ [...]


TeXinfo markup can be used to make the 'Yacas' teletype when viewed
from <https://guix.gnu.org/en/packages/> and to make the link hyperlink
a hyperlink in "guix show" and the HTML.  And a synopsis isn't a book
title or such, it's just a phrase (though often not a complete
sentence), so no need for mid-phrase capitals.

There are also some other packages with missing license text, e.g. the
first next package I chose (rust-gnm) doesn't seem to carry a copy of
the GPL.

Greetings,
Maxime.
diff mbox series

Patch

diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 5c05f20ea7..f69a7dd605 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -103,6 +103,7 @@  (define-module (gnu packages cran)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages statistics)
+  #:use-module (gnu packages gnupg)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
@@ -33255,3 +33256,29 @@  (define-public r-zoeppritz
 coefficients or scattering amplitudes, for seismological P and S-waves at an
 interface.")
     (license license:gpl2+)))
+
+(define r-gpg
+  (package
+   (name "r-gpg")
+   (version "1.2.2")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (cran-uri "gpg" version))
+     (sha256
+      (base32
+       "1qc7w4d6frp0j4yk0q7slkj1mps80bv78lixcpw1shgx48rp41kh"))))
+   (properties `((upstream-name . "gpg")))
+   (build-system r-build-system)
+   (propagated-inputs
+    `(("r-askpass" ,r-askpass) ("r-curl" ,r-curl)))
+   (inputs
+    `(("gpgme" ,gpgme) ("gnupg" ,gnupg)))
+   (native-inputs
+    `(("pkg-config" ,pkg-config) ("r-knitr" ,r-knitr)))
+   (home-page
+    "https://jeroen.cran.dev/gpg/https://github.com/jeroen/gpg")
+   (synopsis "GNU Privacy Guard for R")
+   (description
+    "Bindings to GnuPG for working with OpenGPG (RFC4880) cryptographic methods.  Includes utilities for public key encryption, creating and verifying digital signatures, and managing your local keyring.  Note that some functionality depends on the version of GnuPG that is installed on the system.  On Windows this package can be used together with 'GPG4Win' which provides a GUI for managing keys and entering passphrases.")
+   (license license:expat)))