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 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

M 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.
M 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.
M 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.
Ricardo Wurmus Dec. 18, 2022, 8:58 a.m. UTC | #4
Hi Kyle,

I’ve been trying to apply these patches but haven’t been successful.
Have they been generated with “git format-patch”?  It looks like they
haven’t.  You can generate a patch series for the last 14 commits with
“git format-patch -14”, for example.  To send an updated patch set you
can use “--reroll-count” (or “-v”), e.g. “--reroll-count 2”.  This
generates emails with “[PATCH v2 …]” subjects, so we can automatically
extract all patches belonging to this new patch set.

I would be very happy if you could refresh this patch set on top of the
current “master” branch.

Please add each package definition to the file in alphabetic order.  It
simplifies future maintenance.

I see that the descriptions contain straight single quotes for procedure
names and package names.  We prefer to use texinfo syntax for procedures
instead, e.g. “@code{glm()}” instead of “'glm()'”.  There are also some
packages that have only sentence fragments for descriptions (e.g. r-ca).
Could you please turn those into complete sentences?  A common fix is to
prefix the description with “This package provides”.

Thanks!
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)))