Subject: guix import (really: SSL) broken in different ways

From: Danny Milosavljevic <[email-masked]>
Date: Sat, 13 May 2017 12:01:25 +0200

So after I installed the huge update from master, it seems that guix import doesn't work anymore (the cwd is a guix master checkout):

(1) Normal:

$ ./pre-inst-env guix import pypi flask-migrate
...
In guix/import/pypi.scm:
   278:17  5 (pypi->guix-package _)
In ice-9/boot-9.scm:
    837:9  4 (catch srfi-34 #<procedure 2b12300 at guix/import/json?> ?)
In guix/import/json.scm:
    32:17  3 (_)
In guix/http-client.scm:
   239:25  2 (http-fetch _ #:port _ #:text? _ #:buffered? _ # _ # _ # ?)
In guix/build/download.scm:
    520:4  1 (open-connection-for-uri _ #:timeout _ # _)
    360:0  0 (tls-wrap #<input-output: socket 14> "pypi.python.org" # ?)

guix/build/download.scm:360:0: In procedure tls-wrap:
guix/build/download.scm:360:0: In procedure module-lookup: Unbound variable: make-session

(2) In an environment:

$ guix environment guix --fallback --pure
$ ./pre-inst-env guix import pypi flask-migrate
...
In guix/import/pypi.scm:
   278:17  5 (pypi->guix-package _)
In ice-9/boot-9.scm:
    837:9  4 (catch srfi-34 #<procedure 1e971a0 at guix/import/json?> ?)
In guix/import/json.scm:
    32:17  3 (_)
In guix/http-client.scm:
   239:25  2 (http-fetch _ #:port _ #:text? _ #:buffered? _ # _ # _ # ?)
In guix/build/download.scm:
    520:4  1 (open-connection-for-uri _ #:timeout _ # _)
    417:6  0 (tls-wrap #<closed: file 1069af0> _ # _)

guix/build/download.scm:417:6: In procedure tls-wrap:
guix/build/download.scm:417:6: X.509 certificate of 'pypi.python.org' could not be verified:
  signer-not-found
  invalid

(2b) In an environment with guile-json:

$ guix environment guix --fallback --pure --ad-hoc guile-json
$ ./pre-inst-env guix import pypi flask-migrate
...

ERROR: In procedure scm-error:
ERROR: no code for module (json)

(3) In a container:

$ guix environment -C guix --fallback --pure --ad-hoc guile-json
$ ./pre-inst-env guix import pypi flask-migrate
...
In guix/import/pypi.scm:
   278:17  7 (pypi->guix-package _)
In ice-9/boot-9.scm:
    837:9  6 (catch srfi-34 #<procedure 4dac340 at guix/import/json?> ?)
In guix/import/json.scm:
    32:17  5 (_)
In guix/http-client.scm:
   239:25  4 (http-fetch _ #:port _ #:text? _ #:buffered? _ # _ # _ # ?)
In guix/build/download.scm:
    520:4  3 (open-connection-for-uri _ #:timeout _ # _)
   521:14  2 (thunk)
    460:7  1 (open-socket-for-uri _ #:timeout _)
In unknown file:
           0 (getaddrinfo "pypi.python.org" "https" 32 #<undefined> # ?)

ERROR: In procedure getaddrinfo:
ERROR: In procedure getaddrinfo: Servname not supported for ai_socktype

(4) For reference, the guix-pulled version works:

$ cd /
$ guix import pypi flask-migrate
following redirection to `https://pypi.python.org/pypi/Flask-Migrate/json'...

Starting download of /tmp/guix-file.lHkpNj
From https://pypi.python.org/packages/a9/fe/559c313679b08f67efb9fba6f01debbc9ea3a488539d03a5a38371351456/Flask-Migrate-2.0.3.tar.gz...
 ...-2.0.3.tar.gz  15KiB            170KiB/s 00:00 [####################] 100.0%
(package
...

Maybe I need to logout and login again?  Will test that later - but right now I just wanted to log the errors.