Subject: Re: [bug#37200] [PATCH] gnu: Add roswell.

From: Ludovic Courtès <[email-masked]>
Date: Mon, 16 Sep 2019 10:40:05 +0200

Hello Pierre,

Pierre Neidhardt <[email-masked]> skribis:

> * gnu/packages/lisp.scm (roswell): New variable.

Looks like this patch feel through the cracks…

> +           (lambda _
> +             ;; TODO: libcurl does not honor SSL_CERT_DIR et al.
> +             ;; See https://issues.guix.gnu.org/issue/25240.
> +             ;; Is the following workaround right?
> +             (substitute* "src/download.c"
> +               (("curl_easy_setopt\\(curl, CURLOPT_URL, uri\\);")
> +                "curl_easy_setopt(curl, CURLOPT_URL, uri);
> +curl_easy_setopt(curl, CURLOPT_CAINFO, \"/etc/ssl/certs/ca-certificates.crt\");"))
> +             #t)))))

Normally, it’s up to applications using libcurl to do the right thing,
which is (1) to check standard certificate locations like you did above,
and ideally (2) to check some environment variables.

Unfortunately some applications don’t do this (see for instance commit
489d16577e4a6ccc30f3719d9263900089edd842.)  In those cases, we usually
do what you did above.

In short, I think it’s a fine workaround.

> +    (description
> +     "Roswell started out as a command-line tool with the aim to make
> +installing and managing Common Lisp implementations really simple and easy.
> +Roswell has now evolved into a full-stack environment for Common Lisp
> +development, and has many features that makes it easy to test, share, and
> +distribute your Lisp applications.
> +
> +Roswell is still in beta. Despite this, the basic interfaces are stable and
> +not likely to change.")

Maybe you can drop the second paragraph since it’ll hopefully become
stale.  :-)

Thanks!

Ludo’.