help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Seeking suggestions for fixing the R gpg package


From: Kyle Andrews
Subject: Seeking suggestions for fixing the R gpg package
Date: Thu, 05 May 2022 13:37:54 +0000

Hi,

I want to use the R package gpg which provides bindings to GPGME from
within Guix. Most of the time packaging R things is really easy thanks
to the handy `guix import cran' command. Unfortunately, something is
breaking with GPGME which is making this not work as I
expected. Unfortunately, I don't really have any experience with dealing
with this problem. Can anyone suggest how they would go about debugging
this? 

I opened a bug report on the R gpg, but I don't really know if that's
the appropriate place. There I included the Guix build error report. The
key problem seems to be that

> error: GPGME setting OpenPGP path/home error: Invalid crypto engine

  https://github.com/jeroen/gpg/issues/14

My non-working package code is below:

8<---------------------------------------------------------------------------------
(use-modules (guix packages)
             (guix download)
             (guix build-system r)
             (guix git-download)
             ((guix licenses) #:prefix license:)
             (gnu packages pkg-config)
             (gnu packages compression)
             (gnu packages gnupg)
             (gnu packages maths)
             (gnu packages cran)
             (gnu packages statistics)
             (gnu packages gcc))

(define-public r-gpg
  (package
    (name "r-gpg")
    (version "1.2.6")
    (source
     (origin
       (method url-fetch)
       (uri (cran-uri "gpg" version))
       (sha256
        (base32 "17rvi3qff2kanqr3g20dzhn48bfh5sv57g0wsamndzcif7rhjhby"))))
    (properties `((upstream-name . "gpg")))
    (build-system r-build-system)
    (propagated-inputs (list r-askpass r-curl))
    (native-inputs (list pkg-config r-knitr gpgme))
    (home-page "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.  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)))
--------------------------------------------------------------------------------->8

The build of the R package seemed to go fine. It only fails when it
tries to test that the package can be loaded into an R session.

8<---------------------------------------------------------------------------------
Using 
PKG_CFLAGS=-I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include
Using PKG_LIBS=-L/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/lib 
-lgpgme -L/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/lib 
-lassuan -L/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/lib 
-lgpg-error
** libs
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c encrypt.c -o encrypt.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c engine.c -o engine.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c keys.c -o keys.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c keysig.c -o keysig.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c options.c -o options.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c register.c -o register.o
gcc 
-I"/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/include" 
-DNDEBUG -I/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/include 
-I/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/include 
-I/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/include  
-I/usr/local/include   -fpic  -g -O2  -c sign.c -o sign.o
gcc -shared 
-L/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/lib 
-L/usr/local/lib -o gpg.so encrypt.o engine.o keys.o keysig.o options.o 
register.o sign.o 
-L/gnu/store/33x095pip87pxcn23cz8k96jq6bka51s-gpgme-1.15.1/lib -lgpgme 
-L/gnu/store/imh6q627pj1jpcxdzjpvdwmlwh8kl5kw-libassuan-2.5.5/lib -lassuan 
-L/gnu/store/pilv2s68v4xamxwk1ahfy7q32j6wnf7l-libgpg-error-1.42/lib -lgpg-error 
-L/gnu/store/fm6grlr7rvb176ls6kkamadim64w3jli-r-minimal-4.1.3/lib/R/lib -lR
--------------------------------------------------------------------------------->8

After that comes the error:

8<---------------------------------------------------------------------------------
Error: package or namespace load failed for ‘gpg’:
 .onLoad failed in loadNamespace() for 'gpg', details:
  call: NULL
  error: GPGME setting OpenPGP path/home error: Invalid crypto engine
Error: loading failed
Execution halted
ERROR: loading failed
* removing 
‘/gnu/store/zrsgwmxcqd7dxinsj477lm2rw9mnyhi1-r-gpg-1.2.6/site-library/gpg’
error: in phase 'install': uncaught exception:
%exception #<&invoke-error program: "R" arguments: ("CMD" "INSTALL" 
"--install-tests" 
"--library=/gnu/store/zrsgwmxcqd7dxinsj477lm2rw9mnyhi1-r-gpg-1.2.6/site-library/"
 "--built-timestamp=1970-01-01" ".") exit-status: 1 term-signal: #f 
stop-signal: #f> 
phase `install' failed after 2.2 seconds
command "R" "CMD" "INSTALL" "--install-tests"
 
"--library=/gnu/store/zrsgwmxcqd7dxinsj477lm2rw9mnyhi1-r-gpg-1.2.6/site-library/"
 "--built-timestamp=1970-01-01" "." failed with status 1
--------------------------------------------------------------------------------->8

I would to see this package in guix and mainly want to use it myself in
leu of the menu interface in the command line app.

Thanks in advance for any suggestions.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]